Add test for privilege_info_foreach_privilege_group_list_by_pkgid_and_uid 40/312840/8
authorLe <xuan.tien@samsung.com>
Mon, 17 Jun 2024 03:40:48 +0000 (10:40 +0700)
committerDariusz Michaluk <d.michaluk@samsung.com>
Thu, 27 Jun 2024 13:52:26 +0000 (13:52 +0000)
Add test for privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group
Add test for privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid

Change-Id: Iaec1df2e06088149b97b1a2d806081112b553381
Signed-off-by: Le <xuan.tien@samsung.com>
test/privilege-checker.c
test/tc-privilege-info.c

index 51840581bc4206f679237c723080aae0ec89b0e3..529f74d9500be74f3133769622daa0bfd51247e1 100644 (file)
@@ -24,6 +24,10 @@ extern void __test_privilege_info_get_same_privacy_grouped_privileges();
 extern void __test_privilege_info_get_privilege_noti_info_list();
 extern void __test_privilege_info_get_privilege_description_by_package_type();
 extern void __test_privilege_info_get_privilege_display_name_by_package_type();
+extern void __test_privilege_info_foreach_privilege_group_list_by_pkgid();
+extern void __test_privilege_info_foreach_privilege_group_list_by_pkgid_and_uid();
+extern void __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group();
+extern void __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid();
 
 extern void __test_privilege_db_manager_get_privilege_level_info_list();
 extern void __test_privilege_db_manager_get_mapped_privilege_list();
@@ -38,7 +42,6 @@ extern void __test_privilege_db_manager_set_package_privacy_privilege_info();
 extern void __test_privilege_db_manager_unset_package_privilege_info();
 extern void __test_privilege_db_manager_is_privacy_requestable();
 extern void __test_privilege_db_manager_get_all_privacy_package_list();
-extern void __test_privilege_info_foreach_privilege_group_list_by_pkgid();
 extern void __test_privilege_db_manager_get_privacy_list_by_pkgid();
 extern void __test_privilege_db_manager_get_package_list_by_privacy();
 
@@ -132,6 +135,18 @@ int main()
        __tcinfo(function, "privilege_info_get_privilege_display_name_by_package_type");
        __test_privilege_info_get_privilege_display_name_by_package_type();
 
+       __tcinfo(function, "privilege_info_foreach_privilege_group_list_by_pkgid");
+       __test_privilege_info_foreach_privilege_group_list_by_pkgid();
+
+       __tcinfo(function, "privilege_info_foreach_privilege_group_list_by_pkgid_and_uid");
+       __test_privilege_info_foreach_privilege_group_list_by_pkgid_and_uid();
+
+       __tcinfo(function, "privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group");
+       __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group();
+
+       __tcinfo(function, "privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid");
+       __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid();
+
        __tcinfo(function, "privilege_info_has_privacy_attr");
        __test_privilege_privacy_attr();
 
@@ -177,9 +192,6 @@ int main()
        __tcinfo(function, "privilege_db_manager_get_all_privacy_package_list");
        __test_privilege_db_manager_get_all_privacy_package_list();
 
-       __tcinfo(function, "privilege_info_foreach_privilege_group_list_by_pkgid");
-       __test_privilege_info_foreach_privilege_group_list_by_pkgid();
-
        __tcinfo(function, "privilege_db_manager_get_privacy_list_by_pkgid");
        __test_privilege_db_manager_get_privacy_list_by_pkgid();
 
index 6f69941d3ca27d5147a825777c5384d2dd0fa71d..9aaf1be93fa9b29cf73543d219f28f256de6a9c9 100644 (file)
@@ -1000,32 +1000,18 @@ void __test_privilege_info_get_privilege_display_name_by_package_type()
        __print_line();
 }
 
-int __check_privilege_info_foreach_privilege_group_list_by_pkgid_callback(const char *privilege_group, void* user_data)
+int __check_privilege_info_foreach_list_callback(const char *name, void* user_data)
 {
        for (GList* l = (GList*) user_data; l != NULL; l = l->next) {
-               if(strcmp(privilege_group, (char*)l->data)){
+               if (strcmp(name, (char*)l->data)){
                        return PRVMGR_ERR_NONE;
                }
        }
        return PRVMGR_ERR_NO_DATA;
 }
 
-void __test_privilege_info_foreach_privilege_group_list_by_pkgid()
+void __check_the_return_code(int expected_result, int ret)
 {
-       GList* group_list_user_data = NULL;
-       int ret;
-       printf("pkgid : attach-panel-camera\n");
-       printf("privilege group : http://tizen.org/privilege/group/group0\n");
-       printf("privilege group : http://tizen.org/privilege/group/group5\n");
-       group_list_user_data = g_list_append(group_list_user_data,
-       "http://tizen.org/privilege/group/group0");
-       group_list_user_data = g_list_append(group_list_user_data,
-       "http://tizen.org/privilege/group/group5");
-       privilege_manager_error_e expected_result = PRVMGR_ERR_NONE;
-       ret = privilege_info_foreach_privilege_group_list_by_pkgid("attach-panel-camera",
-       __check_privilege_info_foreach_privilege_group_list_by_pkgid_callback, group_list_user_data);
-       printf("--- expected : %s\n  result : %s\n", __get_result_string('m', expected_result),
-       __get_result_string('m', ret));
        if (expected_result != ret) {
                printf_red("TEST RESULT: FAILED\n");
                fail_cnt++;
@@ -1033,6 +1019,157 @@ void __test_privilege_info_foreach_privilege_group_list_by_pkgid()
                printf_green("TEST RESULT: SUCCESS\n");
                success_cnt++;
        }
-       gfree(group_list_user_data);
+       printf("EXPECTED: %s, RETURNED : %s\n",
+       __get_result_string('m', expected_result),
+       __get_result_string('m', ret));
        __print_line();
 }
+
+void __test_privilege_info_foreach_privilege_group_list_by_pkgid()
+{
+       GList* group_list_user_data = NULL;
+       int ret;
+
+       char *pkgid = "attach-panel-camera";
+       char *privilege_group_1 = "http://tizen.org/privilege/group/group0";
+       char *privilege_group_2 = "http://tizen.org/privilege/group/group5";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege group : %s\n", privilege_group_1);
+       printf("privilege group : %s\n", privilege_group_2);
+
+       group_list_user_data = g_list_append(group_list_user_data, privilege_group_1);
+       group_list_user_data = g_list_append(group_list_user_data, privilege_group_2);
+
+       privilege_manager_error_e expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_group_list_by_pkgid(
+               pkgid,
+               __check_privilege_info_foreach_list_callback,
+               group_list_user_data);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(group_list_user_data);
+}
+
+void __test_privilege_info_foreach_privilege_group_list_by_pkgid_and_uid()
+{
+       GList* group_list_user_data = NULL;
+       int ret;
+
+       char *pkgid = "attach-panel-camera";
+       char *privilege_group_1 = "http://tizen.org/privilege/group/group0";
+       char *privilege_group_2 = "http://tizen.org/privilege/group/group4";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege group : %s\n", privilege_group_1);
+       printf("privilege group : %s\n", privilege_group_2);
+
+       group_list_user_data = g_list_append(group_list_user_data, privilege_group_1);
+       group_list_user_data = g_list_append(group_list_user_data, privilege_group_2);
+
+       privilege_manager_error_e expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_group_list_by_pkgid_and_uid(
+               pkgid,
+               0,
+               __check_privilege_info_foreach_list_callback,
+               group_list_user_data);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(group_list_user_data);
+}
+
+void __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group()
+{
+       GList* privilege_list = NULL;
+       int ret;
+
+       char *pkgid = "attach-panel-camera";
+       char *privilege_group = "http://tizen.org/privilege/group/group0";
+       char *privilege = "http://tizen.org/privilege/camera";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege_group : %s\n", privilege_group);
+       printf("privilege : %s\n", privilege);
+
+       privilege_list = g_list_append(privilege_list, privilege);
+
+       privilege_manager_error_e expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group(
+               pkgid,
+               privilege_group,
+               __check_privilege_info_foreach_list_callback,
+               privilege_list);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(privilege_list);
+
+       privilege = "http://tizen.org/privilege/audiorecorder";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege_group : %s\n", privilege_group);
+       printf("privilege : %s\n", privilege);
+
+       privilege_list = g_list_append(privilege_list, privilege);
+
+       expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group(
+               pkgid,
+               privilege_group,
+               __check_privilege_info_foreach_list_callback,
+               privilege_list);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(privilege_list);
+}
+
+void __test_privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid()
+{
+       GList* privilege_list = NULL;
+       int ret;
+
+       char *pkgid = "attach-panel-camera";
+       char *privilege_group = "http://tizen.org/privilege/group/group0";
+       char *privilege = "http://tizen.org/privilege/camera";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege_group : %s\n", privilege_group);
+       printf("privilege : %s\n", privilege);
+
+       privilege_list = g_list_append(privilege_list, privilege);
+
+       privilege_manager_error_e expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid(
+               pkgid,
+               0,
+               privilege_group,
+               __check_privilege_info_foreach_list_callback,
+               privilege_list);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(privilege_list);
+
+       privilege = "http://tizen.org/privilege/d2d.datasharing";
+
+       printf("pkgid : %s\n", pkgid);
+       printf("privilege_group : %s\n", privilege_group);
+       printf("privilege : %s\n", privilege);
+
+       privilege_list = g_list_append(privilege_list, privilege);
+
+       expected_result = PRVMGR_ERR_NONE;
+
+       ret = privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group_and_uid(
+               pkgid,
+               0,
+               privilege_group,
+               __check_privilege_info_foreach_list_callback,
+               privilege_list);
+
+       __check_the_return_code(expected_result, ret);
+       gfree(privilege_list);
+}