mirror of
https://github.com/nushell/nushell.git
synced 2025-07-01 07:00:37 +02:00
[WIP] table: Change Record view in expand-mode (#6885)
* table: Change Record view in expand-mode Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Fix width issue Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Remove debug println! Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Update logic Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Improve the logic via a wrapping Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * `table -e` spread table to the whole width Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * fix CI Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Fixing tests Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Fix coloring issues Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Don't expand when can Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Fix tests Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Change the logic Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> * Fix cargo fmt Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com> Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
This commit is contained in:
@ -31,8 +31,8 @@ fn table_expand_0() {
|
||||
"╭───┬───┬───┬───────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼───────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ ╭───┬───╮ │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬───╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ 3 │ │\
|
||||
@ -41,6 +41,48 @@ fn table_expand_0() {
|
||||
);
|
||||
}
|
||||
|
||||
// I am not sure whether the test is platform depent, cause we don't set a term_width on our own
|
||||
#[test]
|
||||
fn table_expand_exeed_overlap_0() {
|
||||
// no expand
|
||||
|
||||
let actual = nu!(r#"[[a b, c]; [xxxxxxxxxxxxxxxxxxxxxx 2 3] [4 5 [1 2 3]]] | table --expand"#);
|
||||
|
||||
assert_eq!(
|
||||
actual.out,
|
||||
"╭───┬────────────────────────┬───┬───────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼────────────────────────┼───┼───────────┤\
|
||||
│ 1 │ xxxxxxxxxxxxxxxxxxxxxx │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬───╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ 3 │ │\
|
||||
│ │ │ │ ╰───┴───╯ │\
|
||||
╰───┴────────────────────────┴───┴───────────╯",
|
||||
);
|
||||
|
||||
// expand
|
||||
|
||||
let actual = nu!(
|
||||
r#"[[a b, c]; [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2 3] [4 5 [1 2 3]]] | table --expand"#
|
||||
);
|
||||
|
||||
assert_eq!(
|
||||
actual.out,
|
||||
"╭──────┬───────────────────────────────────────────────────┬─────┬─────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├──────┼───────────────────────────────────────────────────┼─────┼─────────────┤\
|
||||
│ 1 │ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬───╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ 3 │ │\
|
||||
│ │ │ │ ╰───┴───╯ │\
|
||||
╰──────┴───────────────────────────────────────────────────┴─────┴─────────────╯"
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn table_expand_deep_0() {
|
||||
let actual = nu!(r#"[[a b, c]; [1 2 3] [4 5 [1 2 [1 2 3]]]] | table --expand --expand-deep=1"#);
|
||||
@ -49,8 +91,8 @@ fn table_expand_deep_0() {
|
||||
"╭───┬───┬───┬────────────────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼────────────────────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ ╭───┬────────────────╮ │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬────────────────╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ [list 3 items] │ │\
|
||||
@ -67,8 +109,8 @@ fn table_expand_deep_1() {
|
||||
"╭───┬───┬───┬────────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼────────────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ [list 3 items] │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ [list 3 items] │\
|
||||
╰───┴───┴───┴────────────────╯"
|
||||
);
|
||||
}
|
||||
@ -81,8 +123,8 @@ fn table_expand_flatten_0() {
|
||||
"╭───┬───┬───┬───────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼───────────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ ╭───┬───────╮ │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬───────╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ 1 1 1 │ │\
|
||||
@ -101,8 +143,8 @@ fn table_expand_flatten_1() {
|
||||
"╭───┬───┬───┬───────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼───────────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ ╭───┬───────╮ │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬───────╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ 1,1,1 │ │\
|
||||
@ -122,8 +164,8 @@ fn table_expand_flatten_and_deep_1() {
|
||||
"╭───┬───┬───┬────────────────────────────────╮\
|
||||
│ # │ a │ b │ c │\
|
||||
├───┼───┼───┼────────────────────────────────┤\
|
||||
│ 0 │ 1 │ 2 │ 3 │\
|
||||
│ 1 │ 4 │ 5 │ ╭───┬────────────────────────╮ │\
|
||||
│ 1 │ 1 │ 2 │ 3 │\
|
||||
│ 2 │ 4 │ 5 │ ╭───┬────────────────────────╮ │\
|
||||
│ │ │ │ │ 0 │ 1 │ │\
|
||||
│ │ │ │ │ 1 │ 2 │ │\
|
||||
│ │ │ │ │ 2 │ ╭───┬────────────────╮ │ │\
|
||||
|
Reference in New Issue
Block a user