1.1 --- a/test/string_tests.c Mon Jul 14 12:45:48 2014 +0200 1.2 +++ b/test/string_tests.c Mon Jul 14 13:51:02 2014 +0200 1.3 @@ -54,6 +54,7 @@ 1.4 UCX_TEST_END 1.5 } 1.6 1.7 + 1.8 UCX_TEST(test_sstrchr_sstrrchr) { 1.9 sstr_t str = ST("I will find you - and I will kill you"); 1.10 UCX_TEST_BEGIN 1.11 @@ -100,6 +101,37 @@ 1.12 UCX_TEST_END 1.13 } 1.14 1.15 + 1.16 +UCX_TEST(test_sstrcat) { 1.17 + sstr_t s1 = S("12"); 1.18 + sstr_t s2 = S("34"); 1.19 + sstr_t s3 = S("56"); 1.20 + sstr_t sn = { NULL, 0 }; 1.21 + 1.22 + UCX_TEST_BEGIN 1.23 + 1.24 + sstr_t t1 = sstrcat(2, s1, s2); 1.25 + UCX_TEST_ASSERT(!sstrcmp(t1, S("1234")), "t1: wrong content"); 1.26 + free(t1.ptr); 1.27 + 1.28 + sstr_t t2 = sstrcat(3, s1, s2, s3); 1.29 + UCX_TEST_ASSERT(!sstrcmp(t2, S("123456")), "t2: wrong content"); 1.30 + free(t2.ptr); 1.31 + 1.32 + sstr_t t3 = sstrcat(6, s1, sn, s2, sn, s3, sn); 1.33 + UCX_TEST_ASSERT(!sstrcmp(t3, S("123456")), "t3: wrong content"); 1.34 + free(t3.ptr); 1.35 + 1.36 + sstr_t t4 = sstrcat(2, sn, sn); 1.37 + UCX_TEST_ASSERT(t4.ptr, "t4.ptr is NULL"); 1.38 + UCX_TEST_ASSERT(t4.length == 0, "t4 has wrong length"); 1.39 + free(t4.ptr); 1.40 + 1.41 + 1.42 + UCX_TEST_END 1.43 + 1.44 +} 1.45 + 1.46 UCX_TEST(test_sstrsplit) { 1.47 1.48 const char *original = "this,is,a,csv,string";