From 7973293c311e27ff08a1488c9759c1b5b0fda30e Mon Sep 17 00:00:00 2001 From: Roland Reichwein Date: Thu, 5 Jan 2023 13:55:20 +0100 Subject: Added tests --- tests/test-stringhelper.cpp | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) (limited to 'tests/test-stringhelper.cpp') diff --git a/tests/test-stringhelper.cpp b/tests/test-stringhelper.cpp index 3ece784..7f326af 100644 --- a/tests/test-stringhelper.cpp +++ b/tests/test-stringhelper.cpp @@ -1,6 +1,9 @@ #include -#include "file.h" +#include "stringhelper.h" + +#include +#include class StringhelperTest: public ::testing::Test { @@ -21,3 +24,43 @@ protected: }; +TEST_F(StringhelperTest, strfmt) +{ + EXPECT_EQ(Reichwein::Stringhelper::strfmt(""), ""); + EXPECT_EQ(Reichwein::Stringhelper::strfmt("abc"), "abc"); + EXPECT_EQ(Reichwein::Stringhelper::strfmt("abc%ddef", 123), "abc123def"); + EXPECT_EQ(Reichwein::Stringhelper::strfmt("abc%sdef", "XYZ"), "abcXYZdef"); +} + +TEST_F(StringhelperTest, split) +{ + EXPECT_EQ(Reichwein::Stringhelper::split(""), std::vector{}); + EXPECT_EQ(Reichwein::Stringhelper::split("abc"), std::vector{"abc"}); + std::vector v{"abc", "def", "ghi"}; + EXPECT_EQ(Reichwein::Stringhelper::split("abc def ghi"), v); + EXPECT_EQ(Reichwein::Stringhelper::split("abcxdefxghi", "x"), v); +} + +TEST_F(StringhelperTest, join) +{ + EXPECT_EQ(Reichwein::Stringhelper::join({}), ""); + EXPECT_EQ(Reichwein::Stringhelper::join({"abc"}), "abc"); + EXPECT_EQ(Reichwein::Stringhelper::join({"abc", "def"}), "abc\ndef"); + EXPECT_EQ(Reichwein::Stringhelper::join({"abc", "def"}, " "), "abc def"); + EXPECT_EQ(Reichwein::Stringhelper::join({"abc", "def", "ghi"}, "12"), "abc12def12ghi"); +} + +TEST_F(StringhelperTest, startsWithAnyOfLower) +{ + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("", {""})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("a", {""})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("abc", {"a"})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("abc", {"A"})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("Abc", {"a"})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("Abc", {"A"})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("Abc", {"AB"})); + EXPECT_TRUE(Reichwein::Stringhelper::istartsWithAnyOf("Abc", {"B", "aB"})); + + EXPECT_FALSE(Reichwein::Stringhelper::istartsWithAnyOf("", {"a"})); + EXPECT_FALSE(Reichwein::Stringhelper::istartsWithAnyOf("Abc", {"B"})); +} -- cgit v1.2.3