eina: add test case for eina_strbuf_substr_get.
authorSrivardhan Hebbar <sri.hebbar@samsung.com>
Tue, 10 Nov 2015 22:58:35 +0000 (14:58 -0800)
committerCedric BAIL <cedric@osg.samsung.com>
Tue, 10 Nov 2015 23:01:17 +0000 (15:01 -0800)
Summary:
Depends on D3224

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D3225

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/tests/eina/eina_test_strbuf.c

index 3a3adc6..847e0b5 100644 (file)
@@ -514,6 +514,51 @@ START_TEST(strbuf_tolower)
 }
 END_TEST
 
+START_TEST(strbuf_substr_get)
+{
+   Eina_Strbuf* buf, *substr;
+   const char *str;
+
+   eina_init();
+   buf = eina_strbuf_new();
+   fail_unless(buf != NULL);
+
+   eina_strbuf_append(buf, "string");
+   substr = eina_strbuf_substr_get(buf, 2, 3);
+   str = eina_strbuf_string_get(substr);
+   fail_unless(str || strcmp(str, "rin"));
+   eina_strbuf_free(substr);
+
+   substr = eina_strbuf_substr_get(buf, 0, 6);
+   str = eina_strbuf_string_get(substr);
+   fail_unless(str || strcmp(str, "string"));
+   eina_strbuf_free(substr);
+
+   substr = eina_strbuf_substr_get(buf, 6, 0);
+   str = eina_strbuf_string_get(substr);
+   fail_unless(str || strcmp(str, "0"));
+   eina_strbuf_free(substr);
+
+   substr = eina_strbuf_substr_get(buf, 6, 1);
+   str = eina_strbuf_string_get(substr);
+   fail_if(str);
+   eina_strbuf_free(substr);
+
+   substr = eina_strbuf_substr_get(buf, 0, 7);
+   str = eina_strbuf_string_get(substr);
+   fail_if(str);
+   eina_strbuf_free(substr);
+
+   substr = eina_strbuf_substr_get(NULL, 0, 7);
+   str = eina_strbuf_string_get(substr);
+   fail_if(str);
+   eina_strbuf_free(substr);
+
+   eina_strbuf_free(buf);
+   eina_shutdown();
+}
+END_TEST
+
 void
 eina_test_strbuf(TCase *tc)
 {
@@ -528,4 +573,5 @@ eina_test_strbuf(TCase *tc)
    tcase_add_test(tc, strbuf_manage_simple);
    tcase_add_test(tc, strbuf_trim);
    tcase_add_test(tc, strbuf_tolower);
+   tcase_add_test(tc, strbuf_substr_get);
 }