diff options
author | Martin Leitner-Ankerl <martin.ankerl@gmail.com> | 2022-05-02 21:44:09 +0200 |
---|---|---|
committer | Martin Leitner-Ankerl <martin.ankerl@gmail.com> | 2022-05-04 07:34:47 +0200 |
commit | b7ab9db545492927b774912e53aeb834a590621f (patch) | |
tree | 94b912439bd1e205a15e1a39438ee8861e3e057d /src/test/util_tests.cpp | |
parent | 12455acca2c3adf5c88ae9c1a02a7c192fe0f53b (diff) |
Extend Split to work with multiple separators
Diffstat (limited to 'src/test/util_tests.cpp')
-rw-r--r-- | src/test/util_tests.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/test/util_tests.cpp b/src/test/util_tests.cpp index b880a7a9fd..890b2f997e 100644 --- a/src/test/util_tests.cpp +++ b/src/test/util_tests.cpp @@ -2396,6 +2396,19 @@ BOOST_AUTO_TEST_CASE(test_SplitString) BOOST_CHECK_EQUAL(result.size(), 1); BOOST_CHECK_EQUAL(result[0], "AAA"); } + + // multiple split characters + { + using V = std::vector<std::string>; + BOOST_TEST(SplitString("a,b.c:d;e", ",;") == V({"a", "b.c:d", "e"})); + BOOST_TEST(SplitString("a,b.c:d;e", ",;:.") == V({"a", "b", "c", "d", "e"})); + BOOST_TEST(SplitString("a,b.c:d;e", "") == V({"a,b.c:d;e"})); + BOOST_TEST(SplitString("aaa", "bcdefg") == V({"aaa"})); + BOOST_TEST(SplitString("x\0a,b"s, "\0"s) == V({"x", "a,b"})); + BOOST_TEST(SplitString("x\0a,b"s, '\0') == V({"x", "a,b"})); + BOOST_TEST(SplitString("x\0a,b"s, "\0,"s) == V({"x", "a", "b"})); + BOOST_TEST(SplitString("abcdefg", "bcd") == V({"a", "", "", "efg"})); + } } BOOST_AUTO_TEST_CASE(test_LogEscapeMessage) |