@@ -41,6 +41,7 @@ class TestUtils : public TestFixture {
41
41
TEST_CASE (trim);
42
42
TEST_CASE (findAndReplace);
43
43
TEST_CASE (replaceEscapeSequences);
44
+ TEST_CASE (splitString);
44
45
}
45
46
46
47
void isValidGlobPattern () const {
@@ -438,6 +439,50 @@ class TestUtils : public TestFixture {
438
439
ASSERT_EQUALS (" \\ " , ::replaceEscapeSequences (" \\\\ " ));
439
440
ASSERT_EQUALS (" \" " , ::replaceEscapeSequences (" \\\" " ));
440
441
}
442
+
443
+ void splitString () const {
444
+ {
445
+ const auto l = ::splitString (" test" , ' ,' );
446
+ ASSERT_EQUALS (1 , l.size ());
447
+ ASSERT_EQUALS (" test" , *l.cbegin ());
448
+ }
449
+ {
450
+ const auto l = ::splitString (" test,test" , ' ;' );
451
+ ASSERT_EQUALS (1 , l.size ());
452
+ ASSERT_EQUALS (" test,test" , *l.cbegin ());
453
+ }
454
+ {
455
+ const auto l = ::splitString (" test,test" , ' ,' );
456
+ ASSERT_EQUALS (2 , l.size ());
457
+ auto it = l.cbegin ();
458
+ ASSERT_EQUALS (" test" , *it++);
459
+ ASSERT_EQUALS (" test" , *it);
460
+ }
461
+ {
462
+ const auto l = ::splitString (" test,test," , ' ,' );
463
+ ASSERT_EQUALS (3 , l.size ());
464
+ auto it = l.cbegin ();
465
+ ASSERT_EQUALS (" test" , *it++);
466
+ ASSERT_EQUALS (" test" , *it++);
467
+ ASSERT_EQUALS (" " , *it);
468
+ }
469
+ {
470
+ const auto l = ::splitString (" test,,test" , ' ,' );
471
+ ASSERT_EQUALS (3 , l.size ());
472
+ auto it = l.cbegin ();
473
+ ASSERT_EQUALS (" test" , *it++);
474
+ ASSERT_EQUALS (" " , *it++);
475
+ ASSERT_EQUALS (" test" , *it);
476
+ }
477
+ {
478
+ const auto l = ::splitString (" ,test,test" , ' ,' );
479
+ ASSERT_EQUALS (3 , l.size ());
480
+ auto it = l.cbegin ();
481
+ ASSERT_EQUALS (" " , *it++);
482
+ ASSERT_EQUALS (" test" , *it++);
483
+ ASSERT_EQUALS (" test" , *it);
484
+ }
485
+ }
441
486
};
442
487
443
488
REGISTER_TEST (TestUtils)
0 commit comments