Add tests for privilege_db_manager_is_privacy_requestable 97/311697/4
authortranthanhtung2001 <tran.tung@samsung.com>
Fri, 24 May 2024 02:45:22 +0000 (09:45 +0700)
committerDariusz Michaluk <d.michaluk@samsung.com>
Fri, 14 Jun 2024 09:34:25 +0000 (09:34 +0000)
Add tests for privilege_db_manager_get_all_privacy_package_list

Change-Id: I7e03d40155796038457d37b0b9f4658a90e7411a
Signed-off-by: tranthanhtung2001 <tran.tung@samsung.com>
test/privilege-checker.c
test/tc-privilege-db-manager.c

index ad08e15718efd9734c4520ed3bde6052dc8683a9..1766b4c2342ddea84de7cd9cfddf7775a039b023 100644 (file)
@@ -35,6 +35,8 @@ extern void __test_privilege_db_manager_is_user_settable();
 extern void __test_privilege_db_manager_get_same_privacy_grouped_privileges();
 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_dpm_black_list_check();
 extern void __test_dpm_black_list_verify_privilege();
@@ -161,6 +163,12 @@ int main()
 
        __tcinfo(function, "privilege_db_manager_unset_package_privilege_info");
        __test_privilege_db_manager_unset_package_privilege_info();
+
+       __tcinfo(function, "privilege_db_manager_is_privacy_requestable");
+       __test_privilege_db_manager_is_privacy_requestable();
+
+       __tcinfo(function, "privilege_db_manager_get_all_privacy_package_list");
+       __test_privilege_db_manager_get_all_privacy_package_list();
        //#########################################################################
 
        //#########################################################################
index c4a0ab30de7f272bb3dc988f6f29e455ea167d69..87b0c23a7c00145be03517c6e70daf51699a1a53 100644 (file)
@@ -754,3 +754,96 @@ void __test_privilege_db_manager_unset_package_privilege_info()
                printf_red("fail\n");
        }
 }
+
+void __test_privilege_db_manager_is_privacy_requestable()
+{
+       __print_line();
+
+       int expected_ret = PRIVILEGE_DB_MANAGER_ERR_NONE;
+       bool expected_is_privacy_requestable = false;
+       bool is_privacy_requestable;
+
+       uid_t uid = 5001;
+       char *pkgid = "cert-svc-ui";
+       char *privilege = "http://tizen.org/privilege/externalstorage";
+       privilege_manager_package_type_e prvmgr_package_type_e = PRVMGR_PACKAGE_TYPE_CORE;
+
+       printf("uid = %d\npkgid = %s\nprivilege = %s\nprvmgr_package_type_e %d\n",
+       uid, pkgid, privilege, prvmgr_package_type_e);
+
+       printf("- EXPECTED RESULT:\nexpected_ret = %d\nexpected_is_privacy_requestable = %d\n",
+       expected_ret, expected_is_privacy_requestable);
+
+       int ret = privilege_db_manager_is_privacy_requestable(uid, pkgid, privilege,
+       prvmgr_package_type_e, &is_privacy_requestable);
+
+       printf("- ACHIEVED RESULT:\nret = %d\nis_privacy_requestable = %d\n",
+       ret, is_privacy_requestable);
+
+       if(ret == expected_ret && is_privacy_requestable == expected_is_privacy_requestable){
+               printf("match\n");
+               success_cnt++;
+               printf_green("success\n");
+       }else{
+               printf("don't match");
+               fail_cnt++;
+               printf_red("fail\n");
+       }
+}
+
+void __test_privilege_db_manager_get_all_privacy_package_list()
+{
+       __print_line();
+
+       GList *package_list = NULL;
+       GList *expected_package_list = NULL;
+
+       uid_t uid = 5001;
+       int expected_ret = PRIVILEGE_DB_MANAGER_ERR_NONE;
+       char *pkgname = NULL;
+
+       pkgname = "cert-svc-ui";
+       expected_package_list = g_list_append(expected_package_list, pkgname);
+
+       printf("uid = %d\n", uid);
+
+       printf("- EXPECTED RESULT:\nexpected_ret = %d\n", expected_ret);
+       printf("package_list :\n");
+       __print_glist(expected_package_list);
+
+       int ret = privilege_db_manager_get_all_privacy_package_list(uid, &package_list);
+
+       printf("- ACHIEVED RESULT:\nret = %d\n", ret);
+       printf("package_list :\n");
+       __print_glist(package_list);
+
+       bool success = true;
+       if(ret != expected_ret){
+               success = false;
+       }
+
+       GList *l = package_list;
+       GList *l1 = expected_package_list;
+
+       while (l != NULL && l1 != NULL && success)
+       {
+               if(strcmp((char*)l->data, (char*)l1->data)){
+                       printf("don't match\n");
+                       success = false;
+                       break;
+               }
+               l = l->next;
+               l1 = l1->next;
+       }
+
+       if(success){
+               printf("match\n");
+               success_cnt++;
+               printf_green("success\n");
+       }else{
+               printf("don't match\n");
+               fail_cnt++;
+               printf_red("fail\n");
+       }
+       g_list_free_full(package_list, free);
+}
\ No newline at end of file