1.1 --- a/test/utils_tests.c Wed Sep 07 12:26:01 2016 +0200 1.2 +++ b/test/utils_tests.c Wed Sep 07 12:41:30 2016 +0200 1.3 @@ -91,6 +91,47 @@ 1.4 free(teststr2); 1.5 } 1.6 1.7 +UCX_TEST(test_ucx_sprintf) { 1.8 + UCX_TEST_BEGIN 1.9 + 1.10 + sstr_t s1 = ucx_sprintf("int: %d\nHello %s!", 123, "World"); 1.11 + UCX_TEST_ASSERT(s1.ptr, "s1.ptr is NULL"); 1.12 + UCX_TEST_ASSERT(s1.length == 21, "wrong length"); 1.13 + UCX_TEST_ASSERT(!sstrcmp(s1, S("int: 123\nHello World!")), "wrong content"); 1.14 + free(s1.ptr); 1.15 + 1.16 + sstr_t s2 = ucx_sprintf("Nothing to format!"); 1.17 + UCX_TEST_ASSERT(s2.ptr, "s2.ptr is NULL"); 1.18 + UCX_TEST_ASSERT(s2.length == 18, "wrong length"); 1.19 + UCX_TEST_ASSERT(!memcmp(s2.ptr, "Nothing to format!", 18), 1.20 + "wrong string without format arguments"); 1.21 + free(s2.ptr); 1.22 + 1.23 + UCX_TEST_END 1.24 +} 1.25 + 1.26 +UCX_TEST(test_ucx_bprintf) { 1.27 + UcxBuffer *b = ucx_buffer_new(NULL, 64, UCX_BUFFER_DEFAULT); 1.28 + 1.29 + UCX_TEST_BEGIN 1.30 + 1.31 + ucx_bprintf(b, "int: %d\nHello %s!", 123, "World"); 1.32 + UCX_TEST_ASSERT(b->size == 21, "wrong length"); 1.33 + UCX_TEST_ASSERT(!memcmp(b->space, "int: 123\nHello World!", 21), 1.34 + "wrong content"); 1.35 + 1.36 + ucx_buffer_clear(b); 1.37 + 1.38 + ucx_bprintf(b, "Nothing to format!"); 1.39 + UCX_TEST_ASSERT(b->size == 18, "wrong length"); 1.40 + UCX_TEST_ASSERT(!memcmp(b->space, "Nothing to format!", 18), 1.41 + "wrong string without format arguments"); 1.42 + 1.43 + UCX_TEST_END 1.44 + 1.45 + ucx_buffer_free(b); 1.46 +} 1.47 + 1.48 UCX_TEST(test_ucx_stream_copy) { 1.49 UcxBuffer *b1 = ucx_buffer_new(NULL, 64, UCX_BUFFER_DEFAULT); 1.50 UcxBuffer *b2 = ucx_buffer_new(NULL, 2, UCX_BUFFER_AUTOEXTEND); 1.51 @@ -143,3 +184,4 @@ 1.52 ucx_buffer_free(b1); 1.53 ucx_buffer_free(b2); 1.54 } 1.55 +