test/string_tests.c

changeset 180
2185f19dcc45
parent 179
ee25d79a4187
child 184
5c0990c95f74
     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";

mercurial