From: Joel Rosdahl Date: Wed, 11 Aug 2021 10:36:46 +0000 (+0200) Subject: enhance: Add util::TextTable::TextTable(const char*) X-Git-Tag: v4.4~21 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a560f17cf8a109d9369ac74c566d1e120ac6dc42;p=thirdparty%2Fccache.git enhance: Add util::TextTable::TextTable(const char*) --- diff --git a/src/util/TextTable.cpp b/src/util/TextTable.cpp index cc4f9c09e..c4006da50 100644 --- a/src/util/TextTable.cpp +++ b/src/util/TextTable.cpp @@ -75,6 +75,10 @@ TextTable::Cell::Cell(const std::string& text) { } +TextTable::Cell::Cell(const char* text) : Cell(std::string(text)) +{ +} + TextTable::Cell::Cell(const uint64_t number) : m_text(fmt::format("{}", number)), m_right_align(true) diff --git a/src/util/TextTable.hpp b/src/util/TextTable.hpp index 4c021ddd0..8017a6250 100644 --- a/src/util/TextTable.hpp +++ b/src/util/TextTable.hpp @@ -31,6 +31,7 @@ public: { public: Cell(const std::string& text); + Cell(const char* text); Cell(uint64_t number); Cell& left_align(); diff --git a/unittest/test_util_TextTable.cpp b/unittest/test_util_TextTable.cpp index 1793e67c9..a504790f2 100644 --- a/unittest/test_util_TextTable.cpp +++ b/unittest/test_util_TextTable.cpp @@ -35,27 +35,27 @@ TEST_CASE("TextTable") SUBCASE("1x1") { - table.add_row({{"a"}}); + table.add_row({"a"}); CHECK(table.render() == "a\n"); } SUBCASE("2x1 with space prefix/suffix") { - table.add_row({{" a "}, C(" b ")}); + table.add_row({std::string(" a "), C(" b ")}); CHECK(table.render() == " a b\n"); } SUBCASE("1x2") { - table.add_row({{"a"}}); + table.add_row({"a"}); table.add_row({1}); CHECK(table.render() == "a\n1\n"); } SUBCASE("3 + 2") { - table.add_row({{"a"}, {"b"}, {"c"}}); - table.add_row({{"aa"}, {"bbb"}}); + table.add_row({"a", "b", "c"}); + table.add_row({"aa", "bbb"}); CHECK(table.render() == ("a b c\n" "aa bbb\n")); @@ -63,9 +63,9 @@ TEST_CASE("TextTable") SUBCASE("strings and numbers") { - table.add_row({{"a"}, 123, {"cc"}}); - table.add_row({{"aa"}, 4, {"ccc"}}); - table.add_row({{"aaa"}, 56, {"c"}}); + table.add_row({"a", 123, "cc"}); + table.add_row({"aa", 4, "ccc"}); + table.add_row({"aaa", 56, "c"}); CHECK(table.render() == ("a 123 cc\n" "aa 4 ccc\n" @@ -74,9 +74,9 @@ TEST_CASE("TextTable") SUBCASE("left align") { - table.add_row({{"a"}, 123, {"cc"}}); - table.add_row({{"aa"}, C(4).left_align(), {"ccc"}}); - table.add_row({{"aaa"}, 56, {"c"}}); + table.add_row({"a", 123, "cc"}); + table.add_row({"aa", C(4).left_align(), "ccc"}); + table.add_row({"aaa", 56, "c"}); CHECK(table.render() == ("a 123 cc\n" "aa 4 ccc\n" @@ -85,10 +85,10 @@ TEST_CASE("TextTable") SUBCASE("right align") { - table.add_row({{"a"}, {"bbb"}, {"cc"}}); + table.add_row({"a", "bbb", "cc"}); table.add_row( {C("aa").right_align(), C("b").right_align(), C("ccc").right_align()}); - table.add_row({{"aaa"}, {"bb"}, {"c"}}); + table.add_row({"aaa", "bb", "c"}); CHECK(table.render() == ("a bbb cc\n" " aa b ccc\n" @@ -97,9 +97,9 @@ TEST_CASE("TextTable") SUBCASE("heading") { - table.add_row({{"a"}, {"b"}, {"c"}}); + table.add_row({"a", "b", "c"}); table.add_heading("DDDDDD"); - table.add_row({{"aaa"}, {"bbb"}, {"ccc"}}); + table.add_row({"aaa", "bbb", "ccc"}); CHECK(table.render() == ("a b c\n" "DDDDDD\n"