From: Le Date: Mon, 17 Jun 2024 03:40:48 +0000 (+0700) Subject: Add test for privilege_info_foreach_privilege_group_list_by_pkgid_and_uid X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=15a337b21866b9d28af0302ba354855bb9ca0acd;p=platform%2Fcore%2Fsecurity%2Fprivilege-checker.git Add test for privilege_info_foreach_privilege_group_list_by_pkgid_and_uid 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 --- diff --git a/test/privilege-checker.c b/test/privilege-checker.c index 5184058..529f74d 100644 --- a/test/privilege-checker.c +++ b/test/privilege-checker.c @@ -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(); diff --git a/test/tc-privilege-info.c b/test/tc-privilege-info.c index 6f69941..9aaf1be 100644 --- a/test/tc-privilege-info.c +++ b/test/tc-privilege-info.c @@ -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); +}