From d87f5c62156e0449e248c9313c9e40467a03ef4c Mon Sep 17 00:00:00 2001 From: seleznevae Date: Wed, 5 Feb 2020 22:00:35 +0300 Subject: [PATCH] [A] Add regression test for c++ API --- tests/bb_tests_cpp/test_table_basic.cpp | 71 +++++++++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/tests/bb_tests_cpp/test_table_basic.cpp b/tests/bb_tests_cpp/test_table_basic.cpp index 6f839a5..4e52738 100644 --- a/tests/bb_tests_cpp/test_table_basic.cpp +++ b/tests/bb_tests_cpp/test_table_basic.cpp @@ -26,6 +26,77 @@ void test_cpp_bug_fixes(void) " 3 4 \n"; assert_string_equal(table_str, table_str_etalon); } + + SCENARIO("Issue 37 - https://github.com/seleznevae/libfort/issues/37") { + fort::char_table table; + table.set_border_style(FT_BASIC_STYLE); + table.set_cell_bottom_padding(0); + table.set_cell_top_padding(0); + table.set_cell_left_padding(1); + table.set_cell_right_padding(1); + table.set_cell_text_align(fort::text_align::left); + + table << fort::header + << "hdr1" << "hdr2" << "xxx" << fort::endr + << "3" << "" << + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||||||||||||||||||||||||||\n" + "||||||"; + table.row(1).set_cell_content_fg_color(fort::color::red); + + std::string table_str = table.to_string(); + std::string table_str_etalon = + "+------+------+--------------------------------+\n" + "| hdr1 | hdr2 | xxx |\n" + "+------+------+--------------------------------+\n" + "| \033[31m3\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||||||||||||||||||||||||||\033[0m |\n" + "|\033[31m\033[0m |\033[31m\033[0m | \033[31m||||||\033[0m |\n" + "+------+------+--------------------------------+\n"; + assert_string_equal(table_str, table_str_etalon); + } } void test_cpp_table_basic(void)