3 #include <privilege_information.h>
11 static int fail_cnt = 0;
12 static int success_cnt = 0;
14 static void __change_color_to_red()
16 printf("%c[%d;%dm", 0x1B, BRIGHTNESS, RED);
19 static void __change_color_to_green()
21 printf("%c[%d;%dm", 0x1B, BRIGHTNESS, GREEN);
24 static void __change_color_to_yellow()
26 printf("%c[%d;%dm", 0x1B, BRIGHTNESS, YELLOW);
29 static void __change_color_to_origin()
31 printf("%c[%dm", 0x1B, 0);
34 static const char* __get_result_string(privilege_info_error_e ret)
36 if (ret == PRVINFO_ERROR_NONE)
37 return "PRVINFO_ERROR_NONE";
38 else if (ret == PRVINFO_ERROR_INVALID_PARAMETER)
39 return "PRVINFO_ERROR_INVALID_PARAMETER";
40 else if (ret == PRVINFO_ERROR_OUT_OF_MEMORY)
41 return "PRVINFO_ERROR_OUT_OF_MEMORY";
42 else if (ret == PRVINFO_ERROR_INTERNAL_ERROR)
43 return "PRVINFO_ERROR_INTERNAL_ERROR";
44 else if (ret == PRVINFO_ERROR_NOT_SUPPORTED)
45 return "PRVINFO_ERROR_NOT_SUPPORTED";
47 return "PRVINFO_ERROR_NO_MATCHED_ERROR_MESSAGE";
50 static void __check_get_privilege_display_name_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* display_name)
52 printf("expected result = %s, result = %s\n", __get_result_string(expected_result), __get_result_string(result));
54 if (expected_result != result) {
55 printf("not matched\n");
56 __change_color_to_red();
57 printf("test fail\n");
61 if (result == PRVINFO_ERROR_NONE) {
62 if (display_name == NULL) {
63 printf("display_name must not be NULL\n");
64 __change_color_to_red();
65 printf("test fail\n");
67 __change_color_to_origin();
70 printf("display_name = %s\n", display_name);
73 if (display_name != NULL) {
74 printf("display_name = %s\n", display_name);
75 printf("display_name must be NULL\n");
76 __change_color_to_red();
77 printf("test fail\n");
79 __change_color_to_origin();
83 __change_color_to_green();
84 printf("test success\n");
87 __change_color_to_origin();
91 static void __check_get_privilege_description_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* description)
93 printf("expected result = %s, result = %s\n", __get_result_string(expected_result), __get_result_string(result));
95 if (expected_result != result) {
96 printf("not matched\n");
97 __change_color_to_red();
98 printf("test fail\n");
102 if (result == PRVINFO_ERROR_NONE) {
103 if (description == NULL) {
104 printf("description must not be NULL\n");
105 __change_color_to_red();
106 printf("test fail\n");
108 __change_color_to_origin();
111 printf("description = %s\n", description);
114 if (description != NULL) {
115 printf("description = %s\n", description);
116 printf("description must be NULL\n");
117 __change_color_to_red();
118 printf("test fail\n");
120 __change_color_to_origin();
125 __change_color_to_green();
126 printf("test success\n");
129 __change_color_to_origin();
132 static void __check_get_privacy_display_name_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* privacy_display)
134 printf("expectd result %s, result = %s\n", __get_result_string(expected_result), __get_result_string(result));
136 if (expected_result != result) {
137 printf("not matched\n");
138 __change_color_to_red();
139 printf("test fail\n");
143 if (privacy_display != NULL)
144 printf("privacy_display_name = %s\n", privacy_display);
146 printf("privacy_display_name is NULL.\n");
147 __change_color_to_green();
148 printf("test success\n");
151 __change_color_to_origin();
154 static void __test_privilege_info_get_display_name()
157 char* display_name = NULL;
159 printf("-----------------------------------------------------------\n");
160 printf("api_version : 2.3\n");
161 printf("privilege : http://tizen.org/privilege/window.priority.set\n");
162 printf("expected result : PRVINFO_ERROR_NONE\n");
163 ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/window.priority.set", &display_name);
164 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
166 printf("-----------------------------------------------------------\n");
167 printf("api_version : 2.3\n");
168 printf("privilege : http://tizen.org/privilege/mediacapture\n");
169 printf("expected result : PRVINFO_ERROR_NONE\n");
170 if (display_name != NULL) {
174 ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/mediacapture", &display_name);
175 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
177 printf("-----------------------------------------------------------\n");
178 printf("Not existing privilege\n");
179 printf("api_version : 2.3\n");
180 printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
181 printf("expected result : PRVINFO_ERROR_NONE\n");
182 if (display_name != NULL) {
186 ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/RRRRRRRRRR", &display_name);
187 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
189 printf("-----------------------------------------------------------\n");
190 printf("Invalid parameter\n");
191 printf("api_version : NULL\n");
192 printf("privilege : http://tizen.org/privilege/window.priority.set\n");
193 printf("expected result : PRVINFO_ERROR_NONE\n");
194 if (display_name != NULL) {
198 ret = privilege_info_get_display_name(NULL, "http://tizen.org/privilege/window, priority.set", &display_name);
199 __check_get_privilege_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, display_name);
203 static void __test_privilege_info_get_display_name_by_pkgtype()
206 char* display_name = NULL;
208 printf("-----------------------------------------------------------\n");
209 printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
210 printf("api_version : 2.3\n");
211 printf("privilege : http://tizen.org/privilege/window.priority.set\n");
212 printf("expected result : PRVINFO_ERROR_NONE\n");
213 ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/window.priority.set", &display_name);
214 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
216 printf("-----------------------------------------------------------\n");
217 printf("pkgtype : PRVINFO_PACKAGE_TYPE_WEB\n");
218 printf("api_version : 2.3\n");
219 printf("privilege : http://tizen.org/privilege/mediacapture\n");
220 printf("expected result : PRVINFO_ERROR_NONE\n");
221 if (display_name != NULL) {
225 ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
226 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
228 printf("-----------------------------------------------------------\n");
229 printf("Mismatched package type: write WEB as NATIVE\n");
230 printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
231 printf("api_version : 2.3\n");
232 printf("privilege : http://tizen.org/privilege/mediacapture\n");
233 printf("expected result : PRVINFO_ERROR_NONE\n");
234 if (display_name != NULL) {
238 ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
239 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
242 printf("-----------------------------------------------------------\n");
243 printf("Not existing privilege\n");
244 printf("api_version : 2.3\n");
245 printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
246 printf("expected result : PRVINFO_ERROR_NONE\n");
247 if (display_name != NULL) {
251 ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/RRRRRRRRRR", &display_name);
252 __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
254 printf("-----------------------------------------------------------\n");
255 printf("Invalid parameter\n");
256 printf("api_version : 2.3\n");
257 printf("privilege : http://tizen.org/privilege/mediacapture\n");
258 printf("expected result : PRVINFO_ERROR_NONE\n");
259 if (display_name != NULL) {
263 ret = privilege_info_get_display_name_by_pkgtype(NULL, "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
264 __check_get_privilege_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, display_name);
269 static void __test_privilege_info_get_description()
272 char* description = NULL;
274 printf("-----------------------------------------------------------\n");
275 printf("api_version : 2.3\n");
276 printf("privilege : http://tizen.org/privilege/window.priority.set\n");
277 printf("expected result : PRVINFO_ERROR_NONE\n");
278 ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/window.priority.set", &description);
279 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
281 printf("-----------------------------------------------------------\n");
282 printf("api_version : 2.3\n");
283 printf("privilege : http://tizen.org/privilege/mediacapture\n");
284 printf("expected result : PRVINFO_ERROR_NONE\n");
285 if (description != NULL) {
289 ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/mediacapture", &description);
290 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
292 printf("-----------------------------------------------------------\n");
293 printf("Not existing privilege\n");
294 printf("api_version : 2.3\n");
295 printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
296 printf("expected result : PRVINFO_ERROR_NONE\n");
297 if (description != NULL) {
301 ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/RRRRRRRRRR", &description);
302 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
304 printf("-----------------------------------------------------------\n");
305 printf("Invalid parameter\n");
306 printf("api_version : 2.3\n");
307 printf("privilege : http://tizen.org/privilege/mediacapture\n");
308 printf("expected result : PRVINFO_ERROR_NONE\n");
309 if (description != NULL) {
313 ret = privilege_info_get_description(NULL, "http://tizen.org/privilege/mediacapture", &description);
314 __check_get_privilege_description_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, description);
319 static void __test_privilege_info_get_description_by_pkgtype()
322 char* description = NULL;
324 printf("-----------------------------------------------------------\n");
325 printf("api_version : 2.3\n");
326 printf("privilege : http://tizen.org/privilege/window.priority.set\n");
327 printf("expected result : PRVINFO_ERROR_NONE\n");
328 ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/window.priority.set", &description);
329 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
331 printf("-----------------------------------------------------------\n");
332 printf("api_version : 2.3\n");
333 printf("privilege : http://tizen.org/privilege/mediacapture\n");
334 printf("expected result : PRVINFO_ERROR_NONE\n");
335 if (description != NULL) {
339 ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/mediacapture", &description);
340 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
342 printf("-----------------------------------------------------------\n");
343 printf("Mismatched package type: write WEB as NATIVE\n");
344 printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
345 printf("api_version : 2.3\n");
346 printf("privilege : http://tizen.org/privilege/mediacapture\n");
347 printf("expected result : PRVINFO_ERROR_NONE\n");
348 if (description != NULL) {
352 ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/mediacapture", &description);
353 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
355 printf("-----------------------------------------------------------\n");
356 printf("Not existing privilege\n");
357 printf("api_version : 2.3\n");
358 printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
359 printf("expected result : PRVINFO_ERROR_NONE\n");
360 if (description != NULL) {
364 ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/RRRRRRRRRR", &description);
365 __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
367 printf("-----------------------------------------------------------\n");
368 printf("Invalid parameter\n");
369 printf("api_version : 2.3\n");
370 printf("privilege : NULL\n");
371 printf("expected result : PRVINFO_ERROR_INVALID_PARAMETER\n");
372 if (description != NULL) {
376 ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", NULL, &description);
377 __check_get_privilege_description_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, description);
382 static void __test_privilege_info_get_privacy_display_name()
385 char* privacy_display_name = NULL;
387 printf("-----------------------------------------------------------\n");
388 printf("Invalid parameter\n");
389 printf("no input privilege\n");
390 ret = privilege_info_get_privacy_display_name(NULL, &privacy_display_name);
391 __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
393 if (privacy_display_name != NULL) {
394 free(privacy_display_name);
395 privacy_display_name = NULL;
398 printf("-----------------------------------------------------------\n");
399 printf("Not a privacy related privilege\n");
400 printf("privilege: http://tizen.org/privilege/internet\n");
401 ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/internet", &privacy_display_name);
402 __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
404 if (privacy_display_name != NULL) {
405 free(privacy_display_name);
406 privacy_display_name = NULL;
409 printf("-----------------------------------------------------------\n");
410 printf("Not existing privilege\n");
411 printf("privilege: http://tizen.org/privilege/wrong.privilege.name\n");
412 ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/wrong.privilege.name", &privacy_display_name);
413 __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
415 if (privacy_display_name != NULL) {
416 free(privacy_display_name);
417 privacy_display_name = NULL;
420 printf("-----------------------------------------------------------\n");
421 printf("Privacy related privilege\n");
422 printf("privilege: http://tizen.org/privilege/account.read\n");
423 ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/account.read", &privacy_display_name);
424 __check_get_privacy_display_name_result(PRVINFO_ERROR_NONE, ret, privacy_display_name);
426 free(privacy_display_name);
429 static void __check_privilege_info_get_privilege_info(privilege_info_error_e expected_result, privilege_info_error_e result, GList* privilege_info_list, int return_result)
431 printf("expected result = %s, result = %s\n", __get_result_string(expected_result), __get_result_string(result));
433 if (expected_result != result) {
434 __change_color_to_yellow();
435 printf("not mached\n");
436 __change_color_to_origin();
438 __change_color_to_green();
440 __change_color_to_origin();
443 printf("return_result = %d\n", return_result);
445 if (result == PRVINFO_ERROR_NONE) {
446 for (l = privilege_info_list; l != NULL; l = l->next) {
447 privilege_info_s* privilege_info = (privilege_info_s*)l->data;
449 printf("privilege_info->privilege_name = %s\n", privilege_info->privilege_name);
450 printf("privilege_info->display_name = %s\n", privilege_info->display_name);
451 printf("privilege_info->description = %s\n", privilege_info->description);
459 static void __test_privilege_info_get_privilege_info_list()
461 GList* privilege_name_list = NULL;
462 GList* privilege_info_list = NULL;
463 privilege_consumer_return_code_e return_result;
466 printf("case : SUCCESS\n");
467 printf("locale : ko_KR.UTF8\n");
468 printf("privilege name : http://tizen.org/privilege/call\n");
469 printf("privilege name : http://tizen.org/privilege/content.read\n");
470 printf("privilege name : http://tizen.org/privilege/filesystem.read\n");
471 printf("expected result : PRVINFO_ERROR_NONE\n");
472 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
473 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/content.read");
474 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/filesystem.read");
476 ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
477 __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
478 g_list_free(privilege_name_list);
479 privilege_name_list = NULL;
480 privilege_info_free_privilege_info_list(privilege_info_list);
481 privilege_info_list = NULL;
482 printf("-----------------------------------------------------------\n");
484 printf("case : SUCCESS2\n");
485 printf("locale : ko_KR.UTF8\n");
486 printf("privilege name : http://tizen.org/privilege/call\n");
487 printf("privilege name : http://tizen.org/privilege/systemsettings.admin\n");
488 printf("privilege name : http://tizen.org/privilege/bookmark.admin\n");
489 printf("expected result : PRVINFO_ERROR_NONE\n");
490 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
491 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/systemsettings.admin");
492 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/bookmark.admin");
494 ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
495 __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
496 g_list_free(privilege_name_list);
497 privilege_name_list = NULL;
498 privilege_info_free_privilege_info_list(privilege_info_list);
499 privilege_info_list = NULL;
500 printf("-----------------------------------------------------------\n");
502 printf("case : SUCCESS3\n");
503 printf("locale : ko_KR.UTF8\n");
504 printf("privilege name : http://tizen.org/privilege/call\n");
505 printf("privilege name : http://tizen.org/privilege/alarm.xxxx\n");
506 printf("privilege name : http://tizen.org/privilege/account.xxx\n");
507 printf("expected result : PRVINFO_ERROR_NONE\n");
508 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
509 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/alarm.xxxx");
510 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/account.xxx");
512 ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
513 __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
514 g_list_free(privilege_name_list);
515 privilege_name_list = NULL;
516 privilege_info_free_privilege_info_list(privilege_info_list);
517 privilege_info_list = NULL;
518 printf("-----------------------------------------------------------\n");
520 printf("case : UNKNOWN_LOCAL_CODE\n");
521 printf("locale : xx_XX.UTF8\n");
522 printf("privilege name : http://tizen.org/privilege/call\n");
523 printf("privilege name : http://tizen.org/privilege/content.read\n");
524 printf("privilege name : http://tizen.org/privilege/filesystem.read\n");
525 printf("expected result : PRVINFO_ERROR_NONE\n");
526 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
527 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/content.read");
528 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/filesystem.read");
530 ret = privilege_info_get_privilege_info_list("xx_XX.UTF8", privilege_name_list, &privilege_info_list, &return_result);
531 __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
532 g_list_free(privilege_name_list);
533 privilege_name_list = NULL;
534 privilege_info_free_privilege_info_list(privilege_info_list);
535 privilege_info_list = NULL;
536 printf("-----------------------------------------------------------\n");
538 printf("case : INVAILD_PARAMETER\n");
539 printf("locale : ko_KR.UTF8\n");
540 printf("privilege name : http://tizen.org/privilege/xxxx\n");
541 printf("privilege name : http://tizen.org/privilege/alarm.xxxx\n");
542 printf("privilege name : http://tizen.org/privilege/account.xxx\n");
543 printf("expected result : PRVINFO_ERROR_NONE\n");
544 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/xxxx");
545 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/alarm.xxxx");
546 privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/account.xxx");
548 ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
549 __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
550 g_list_free(privilege_name_list);
551 privilege_name_list = NULL;
552 privilege_info_free_privilege_info_list(privilege_info_list);
553 privilege_info_list = NULL;
554 printf("-----------------------------------------------------------\n");
560 __change_color_to_yellow();
561 printf("Test function : privilege_info_get_display_name\n");
562 __change_color_to_origin();
563 __test_privilege_info_get_display_name();
565 __change_color_to_yellow();
566 printf("Test function : privilege_info_get_display_name_by_pkgtype\n");
567 __change_color_to_origin();
568 __test_privilege_info_get_display_name_by_pkgtype();
570 __change_color_to_yellow();
571 printf("Test function : privilege_info_get_description\n");
572 __change_color_to_origin();
573 __test_privilege_info_get_description();
575 __change_color_to_yellow();
576 printf("Test function : privilege_info_get_description_by_pkgtype\n");
577 __change_color_to_origin();
578 __test_privilege_info_get_description_by_pkgtype();
580 __change_color_to_yellow();
581 printf("Test function : privilege_info_get_privacy_display_name\n");
582 __change_color_to_origin();
583 __test_privilege_info_get_privacy_display_name();
585 __change_color_to_yellow();
586 printf("Test function : privilege_info_get_privilege_info_list\n");
587 __change_color_to_origin();
588 __test_privilege_info_get_privilege_info_list();
590 __change_color_to_green();
591 printf("Test Complete\n");
592 printf("success : %d, ", success_cnt);
593 __change_color_to_red();
594 printf("fail : %d\n", fail_cnt);
595 __change_color_to_origin();