diff options
Diffstat (limited to 'vendor/tabled/tests/settings/padding_test.rs')
-rw-r--r-- | vendor/tabled/tests/settings/padding_test.rs | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/vendor/tabled/tests/settings/padding_test.rs b/vendor/tabled/tests/settings/padding_test.rs new file mode 100644 index 000000000..9a3edb4aa --- /dev/null +++ b/vendor/tabled/tests/settings/padding_test.rs @@ -0,0 +1,138 @@ +#![cfg(feature = "std")] + +use tabled::settings::{ + object::{Rows, Segment}, + Alignment, Modify, Padding, Style, +}; + +use crate::matrix::Matrix; +use testing_table::test_table; + +#[cfg(feature = "color")] +use ::{owo_colors::OwoColorize, std::convert::TryFrom, tabled::settings::Color}; + +test_table!( + padding, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Segment::all()).with(Alignment::left())) + .with(Modify::new(Rows::new(1..)).with(Padding::new(1, 1, 0, 2))), + " N | column 0 | column 1 | column 2 " + "---+----------+----------+----------" + " 0 | 0-0 | 0-1 | 0-2 " + " | | | " + " | | | " + " 1 | 1-0 | 1-1 | 1-2 " + " | | | " + " | | | " + " 2 | 2-0 | 2-1 | 2-2 " + " | | | " + " | | | " +); + +test_table!( + padding_with_set_characters, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Segment::all()).with(Padding::new(1, 2, 1, 1).fill('>', '<', 'V', '^'))), + "VVVV|VVVVVVVVVVV|VVVVVVVVVVV|VVVVVVVVVVV" + ">N<<|>column 0<<|>column 1<<|>column 2<<" + "^^^^|^^^^^^^^^^^|^^^^^^^^^^^|^^^^^^^^^^^" + "----+-----------+-----------+-----------" + "VVVV|VVVVVVVVVVV|VVVVVVVVVVV|VVVVVVVVVVV" + ">0<<|> 0-0 <<|> 0-1 <<|> 0-2 <<" + "^^^^|^^^^^^^^^^^|^^^^^^^^^^^|^^^^^^^^^^^" + "VVVV|VVVVVVVVVVV|VVVVVVVVVVV|VVVVVVVVVVV" + ">1<<|> 1-0 <<|> 1-1 <<|> 1-2 <<" + "^^^^|^^^^^^^^^^^|^^^^^^^^^^^|^^^^^^^^^^^" + "VVVV|VVVVVVVVVVV|VVVVVVVVVVV|VVVVVVVVVVV" + ">2<<|> 2-0 <<|> 2-1 <<|> 2-2 <<" + "^^^^|^^^^^^^^^^^|^^^^^^^^^^^|^^^^^^^^^^^" +); + +test_table!( + padding_with_set_characters_and_zero_ident, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Segment::all()).with(Padding::zero().fill('>', '<', '^', 'V'))), + "N|column 0|column 1|column 2" + "-+--------+--------+--------" + "0| 0-0 | 0-1 | 0-2 " + "1| 1-0 | 1-1 | 1-2 " + "2| 2-0 | 2-1 | 2-2 " +); + +test_table!( + padding_multiline, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Rows::new(1..)).with(Padding::new(1, 1, 1, 1))), + " N | column 0 | column 1 | column 2 " + "---+----------+----------+----------" + " | | | " + " 0 | 0-0 | 0-1 | 0-2 " + " | | | " + " | | | " + " 1 | 1-0 | 1-1 | 1-2 " + " | | | " + " | | | " + " 2 | 2-0 | 2-1 | 2-2 " + " | | | " +); + +test_table!( + padding_multiline_with_vertical_alignment, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Segment::all()).with(Alignment::center()).with(Alignment::center_vertical())) + .with(Modify::new(Rows::new(1..)).with(Padding::new(1, 1, 1, 1))), + " N | column 0 | column 1 | column 2 " + "---+----------+----------+----------" + " | | | " + " 0 | 0-0 | 0-1 | 0-2 " + " | | | " + " | | | " + " 1 | 1-0 | 1-1 | 1-2 " + " | | | " + " | | | " + " 2 | 2-0 | 2-1 | 2-2 " + " | | | " +); + +#[cfg(feature = "color")] +test_table!( + padding_color, + { + let padding = Padding::new(2, 2, 2, 2).colorize( + Color::try_from(' '.on_yellow().to_string()).unwrap(), + Color::try_from(' '.on_blue().to_string()).unwrap(), + Color::try_from(' '.on_red().to_string()).unwrap(), + Color::try_from(' '.on_green().to_string()).unwrap(), + ); + + Matrix::new(3, 3) + .with(Style::psql()) + .with(Modify::new(Rows::new(1..)).with(padding)) + }, + " N | column 0 | column 1 | column 2 \n-----+----------+----------+----------\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[43m \u{1b}[49m0\u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 0-0 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 0-1 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 0-2 \u{1b}[44m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[43m \u{1b}[49m1\u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 1-0 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 1-1 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 1-2 \u{1b}[44m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m|\u{1b}[41m \u{1b}[49m\n\u{1b}[43m \u{1b}[49m2\u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 2-0 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 2-1 \u{1b}[44m \u{1b}[49m|\u{1b}[43m \u{1b}[49m 2-2 \u{1b}[44m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m\n\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m|\u{1b}[42m \u{1b}[49m" +); + +test_table!( + padding_table, + Matrix::new(3, 3) + .with(Style::psql()) + .with(Padding::new(1, 1, 0, 2)), + " N | column 0 | column 1 | column 2 " + " | | | " + " | | | " + "---+----------+----------+----------" + " 0 | 0-0 | 0-1 | 0-2 " + " | | | " + " | | | " + " 1 | 1-0 | 1-1 | 1-2 " + " | | | " + " | | | " + " 2 | 2-0 | 2-1 | 2-2 " + " | | | " + " | | | " +); |