eina: add test cases for various eina xattr data type functions
authorvivek <vivek.ellur@samsung.com>
Mon, 23 Mar 2015 18:29:55 +0000 (19:29 +0100)
committerCedric BAIL <cedric@osg.samsung.com>
Mon, 23 Mar 2015 18:29:59 +0000 (19:29 +0100)
Summary:
Added test cases for eina_xattr_string_set, eina_xattr_int_set and
eina_xattr_double_set functions

Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: cedric

Subscribers: cedric

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

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

index d70e952..72c0c3d 100644 (file)
@@ -223,6 +223,52 @@ START_TEST(eina_test_xattr_list)
    eina_shutdown();
 }
 END_TEST
+
+START_TEST(eina_test_xattr_types)
+{
+   char *filename = "tmpfile";
+   char *str_attr = "user.name", *ret_str;
+   char *str_data = "Vivek Ellur";
+   char *int_attr = "user.id";
+   int  int_data = 1234, int_ret;
+   char *double_attr = "user.size";
+   double double_data = 123.456, double_ret;
+   int fd;
+   Eina_Bool ret;
+   Eina_Tmpstr *test_file_path;
+
+   eina_init();
+
+   test_file_path = get_file_path(XATTR_TEST_DIR, filename);
+   fd = open(test_file_path, O_WRONLY | O_CREAT | O_TRUNC, S_IRWXU | S_IRWXG | S_IRWXO);
+   fail_if(fd == 0);
+
+   ret = eina_xattr_string_set(test_file_path, str_attr, str_data, EINA_XATTR_INSERT);
+   fail_if(ret != EINA_TRUE);
+   ret_str = eina_xattr_string_get(test_file_path, str_attr);
+   fail_if(ret_str == NULL);
+   fail_if(strcmp(ret_str, str_data) != 0);
+   free(ret_str);
+
+   ret = eina_xattr_int_set(test_file_path, int_attr, int_data, EINA_XATTR_INSERT);
+   fail_if(ret != EINA_TRUE);
+   ret = eina_xattr_int_get(test_file_path, int_attr, &int_ret);
+   fail_if(ret != EINA_TRUE);
+   fail_if(int_data != int_ret);
+
+   ret = eina_xattr_double_set(test_file_path, double_attr, double_data, EINA_XATTR_INSERT);
+   fail_if(ret != EINA_TRUE);
+   ret = eina_xattr_double_get(test_file_path, double_attr, &double_ret);
+   fail_if(ret != EINA_TRUE);
+   fail_if(double_data != double_ret);
+
+   close(fd);
+   unlink(test_file_path);
+   eina_tmpstr_del(test_file_path);
+
+   eina_shutdown();
+}
+END_TEST
 #endif
 
 void
@@ -231,6 +277,7 @@ eina_test_xattr(TCase *tc)
 #ifdef XATTR_TEST_DIR
    tcase_add_test(tc, eina_test_xattr_set);
    tcase_add_test(tc, eina_test_xattr_list);
+   tcase_add_test(tc, eina_test_xattr_types);
 #else
    (void)tc;
 #endif