Add test for privilege_info_foreach_privilege_group_list_by_pkgid 09/311809/5
authorLe <xuan.tien@samsung.com>
Tue, 28 May 2024 08:01:46 +0000 (15:01 +0700)
committerDariusz Michaluk <d.michaluk@samsung.com>
Fri, 14 Jun 2024 10:01:31 +0000 (12:01 +0200)
Change-Id: I9f891320c1f91b46f3f64d1c9a09965c92bf870f
Signed-off-by: Le <xuan.tien@samsung.com>
test/privilege-checker.c
test/tc-privilege-info.c

index c5ea91f1fd85fd19ea7d8211698be5d351c3b3ca..25f4c55b53bf831428e48c948888409a6f2dfc30 100644 (file)
@@ -38,6 +38,7 @@ 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_dpm_black_list_check();
 extern void __test_dpm_black_list_verify_privilege();
@@ -173,6 +174,9 @@ 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();
        //#########################################################################
 
        //#########################################################################
index 7308cbe51f462d6905181be89303c87d90c18e5b..6f69941d3ca27d5147a825777c5384d2dd0fa71d 100644 (file)
@@ -999,3 +999,40 @@ void __test_privilege_info_get_privilege_display_name_by_package_type()
        free(display_name);
        __print_line();
 }
+
+int __check_privilege_info_foreach_privilege_group_list_by_pkgid_callback(const char *privilege_group, void* user_data)
+{
+       for (GList* l = (GList*) user_data; l != NULL; l = l->next) {
+               if(strcmp(privilege_group, (char*)l->data)){
+                       return PRVMGR_ERR_NONE;
+               }
+       }
+       return PRVMGR_ERR_NO_DATA;
+}
+
+void __test_privilege_info_foreach_privilege_group_list_by_pkgid()
+{
+       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++;
+       } else {
+               printf_green("TEST RESULT: SUCCESS\n");
+               success_cnt++;
+       }
+       gfree(group_list_user_data);
+       __print_line();
+}