Add tests for privilege_info_has_privacy_attr 44/271744/2
authorTomasz Swierczek <t.swierczek@samsung.com>
Fri, 25 Feb 2022 13:57:08 +0000 (14:57 +0100)
committerTomasz Swierczek <t.swierczek@samsung.com>
Fri, 25 Feb 2022 14:06:39 +0000 (15:06 +0100)
This patch is supposed to increase code coverage of unit tests.

Change-Id: Ieeb1148c0f7a5bab5abd6591b940f5612c61de88

test/privilege-checker.c
test/tc-privilege-info.c

index eaf73388c114012aa30e2427346cbab3aeb590c6..c018ee922ac603dbdb8747a7994abcf599201001 100644 (file)
@@ -6,6 +6,7 @@ extern void __test_privilege_manager_get_mapped_privilege_list();
 extern void __test_privilege_manager_verify_metadata();
 extern void __test_privilege_manager_verify_privilege();
 
+extern void __test_privilege_privacy_attr();
 extern void __test_privilege_info_is_valid();
 extern void __test_privilege_info_is_internal();
 extern void __test_privilege_info_is_privacy();
@@ -111,9 +112,11 @@ int main()
        __test_privilege_info_get_same_privacy_grouped_privileges();
 
        //TODO: add testcase for privilege_info_get_privilege_noti_info_list() & privilege_info_free_privilege_noti_info_list()
-       //TODO: add testcase for privilege_info_has_privacy_attr()
        //#########################################################################
 
+       __tcinfo(function, "privilege_info_has_privacy_attr");
+       __test_privilege_privacy_attr();
+
        //#########################################################################
        // tc-privilege-db-manager.c
 
index 0831626a5d3382c508470306eb16c9eaaf1c9a8b..78b390e9be3b72a67d29f01e1c7ae037430563af 100644 (file)
@@ -4,6 +4,17 @@
 #include <privilege_package_info.h>
 #include <tc-common.h>
 
+static void __check_privilege_info_has_privacy_attr(int expected_result, const char* privilege)
+{
+    if (privilege_info_has_privacy_attr(privilege) == expected_result) {
+               success_cnt++;
+               printf_green("Test SUCCEEDED\n");
+       } else {
+               fail_cnt++;
+               printf_red("Test FAILED\n");
+       }
+}
+
 static void __check_get_privilege_display_name_result(privilege_manager_error_e expected_result, privilege_manager_error_e result, const char *display_name)
 {
        printf("expected result = %s, result = %s\n", __get_result_string('m', expected_result), __get_result_string('m', result));
@@ -90,6 +101,24 @@ static void __check_get_privilege_group_display_name_result(privilege_manager_er
        }
 }
 
+void __test_privilege_privacy_attr()
+{
+       __print_line();
+       __tcinfo(goal, POS_TC_PREFIX "check if http://tizen.org/privilege/camera is a privacy privilege");
+       __check_privilege_info_has_privacy_attr(1, "http://tizen.org/privilege/camera");
+       __print_line();
+
+       __print_line();
+       __tcinfo(goal, POS_TC_PREFIX "check if http://tizen.org/privilege/cameraaaaa is a privacy privilege");
+       __check_privilege_info_has_privacy_attr(0, "http://tizen.org/privilege/cameraaaaa");
+       __print_line();
+
+       __print_line();
+       __tcinfo(goal, NEG_TC_PREFIX "check NULL is a privacy privilege");
+       __check_privilege_info_has_privacy_attr(PRVMGR_ERR_INVALID_PARAMETER, NULL);
+       __print_line();
+}
+
 void __test_privilege_info_is_valid()
 {
        int ret;