1bf70819a5a5c2ed4d4dca65fca19ad1d73cb6fc
[platform/core/security/privilege-info.git] / test / tc_privilege_info.c
1 /*
2  * Copyright (c) 2014-2020 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #include <stdio.h>
18 #include <stdlib.h>
19 #include <privilege_information.h>
20
21 #define BRIGHTNESS 0
22 #define RED 31
23 #define GREEN 32
24 #define YELLOW 33
25 #define BG_BLACK 40
26
27 static int fail_cnt = 0;
28 static int success_cnt = 0;
29
30 static void __change_color_to_red()
31 {
32         printf("%c[%d;%dm", 0x1B, BRIGHTNESS, RED);
33 }
34
35 static void __change_color_to_green()
36 {
37         printf("%c[%d;%dm", 0x1B, BRIGHTNESS, GREEN);
38 }
39
40 static void __change_color_to_yellow()
41 {
42         printf("%c[%d;%dm", 0x1B, BRIGHTNESS, YELLOW);
43 }
44
45 static void __change_color_to_origin()
46 {
47         printf("%c[%dm", 0x1B, 0);
48 }
49
50 static const char* __get_result_string(privilege_info_error_e ret)
51 {
52         if (ret == PRVINFO_ERROR_NONE)
53                 return "PRVINFO_ERROR_NONE";
54         else if (ret == PRVINFO_ERROR_INVALID_PARAMETER)
55                 return "PRVINFO_ERROR_INVALID_PARAMETER";
56         else if (ret == PRVINFO_ERROR_OUT_OF_MEMORY)
57                 return "PRVINFO_ERROR_OUT_OF_MEMORY";
58         else if (ret == PRVINFO_ERROR_INTERNAL_ERROR)
59                 return "PRVINFO_ERROR_INTERNAL_ERROR";
60         else if (ret == PRVINFO_ERROR_NOT_SUPPORTED)
61                 return "PRVINFO_ERROR_NOT_SUPPORTED";
62         else if (ret == PRVINFO_ERROR_NO_MATCHING_PRIVILEGE)
63                 return "PRVINFO_ERROR_NO_MATCHING_PRIVILEGE";
64
65         return "PRVINFO_ERROR_NO_MATCHED_ERROR_MESSAGE";
66 }
67
68 static void __check_get_privilege_display_name_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* display_name)
69 {
70         printf("expected : %s\n  result : %s\n", __get_result_string(expected_result), __get_result_string(result));
71
72         if (expected_result != result) {
73                 printf("not matched\n");
74                 __change_color_to_red();
75                 printf("test fail\n");
76                 fail_cnt++;
77         } else {
78                 printf("matched\n");
79                 if (result == PRVINFO_ERROR_NONE) {
80                         if (display_name == NULL) {
81                                 printf("display_name must not be NULL\n");
82                                 __change_color_to_red();
83                                 printf("test fail\n");
84                                 fail_cnt++;
85                                 __change_color_to_origin();
86                                 return;
87                         } else {
88                                 printf("display_name = %s\n", display_name);
89                         }
90                 } else if (result == PRVINFO_ERROR_NO_MATCHING_PRIVILEGE) {
91                         if (display_name != NULL) {
92                                 printf("display_name = %s\n", display_name);
93                                 printf("display_name must be NULL\n");
94                                 __change_color_to_red();
95                                 printf("test fail\n");
96                                 fail_cnt++;
97                                 __change_color_to_origin();
98                                 return;
99                         }
100                 }
101                 __change_color_to_green();
102                 printf("test success\n");
103                 success_cnt++;
104         }
105         __change_color_to_origin();
106 }
107
108
109 static void __check_get_privilege_description_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* description)
110 {
111         printf("expected : %s\n  result : %s\n", __get_result_string(expected_result), __get_result_string(result));
112
113         if (expected_result != result) {
114                 printf("not matched\n");
115                 __change_color_to_red();
116                 printf("test fail\n");
117                 fail_cnt++;
118         } else {
119            printf("matched\n");
120            if (result == PRVINFO_ERROR_NONE) {
121                         if (description == NULL) {
122                                 printf("description must not be NULL\n");
123                                 __change_color_to_red();
124                                 printf("test fail\n");
125                                 fail_cnt++;
126                                 __change_color_to_origin();
127                                 return;
128                         } else {
129                                 printf("description = %s\n", description);
130                         }
131                 } else if (result == PRVINFO_ERROR_NO_MATCHING_PRIVILEGE) {
132                         if (description != NULL) {
133                                 printf("description = %s\n", description);
134                                 printf("description must be NULL\n");
135                                 __change_color_to_red();
136                                 printf("test fail\n");
137                                 fail_cnt++;
138                                 __change_color_to_origin();
139                                 return;
140                         }
141                 }
142
143                 __change_color_to_green();
144                 printf("test success\n");
145                 success_cnt++;
146         }
147         __change_color_to_origin();
148 }
149
150 static void __check_get_privacy_display_name_result(privilege_info_error_e expected_result, privilege_info_error_e result, const char* privacy_display)
151 {
152         printf("expected : %s\n  result : %s\n", __get_result_string(expected_result), __get_result_string(result));
153
154         if (expected_result != result) {
155                 printf("not matched\n");
156                 __change_color_to_red();
157                 printf("test fail\n");
158                 fail_cnt++;
159         } else {
160                 printf("matched\n");
161                 if (privacy_display != NULL)
162                         printf("privacy_display_name = %s\n", privacy_display);
163                 else
164                         printf("privacy_display_name is NULL.\n");
165                 __change_color_to_green();
166                 printf("test success\n");
167                 success_cnt++;
168         }
169         __change_color_to_origin();
170 }
171
172 static void __test_privilege_info_get_display_name()
173 {
174         int ret;
175         char* display_name = NULL;
176
177         printf("-----------------------------------------------------------\n");
178         printf("api_version : 2.3\n");
179         printf("privilege : http://tizen.org/privilege/window.priority.set\n");
180         ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/window.priority.set", &display_name);
181         __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
182
183         printf("-----------------------------------------------------------\n");
184         printf("api_version : 2.3\n");
185         printf("privilege : http://tizen.org/privilege/mediacapture\n");
186         if (display_name != NULL) {
187                 free(display_name);
188                 display_name = NULL;
189         }
190         ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/mediacapture", &display_name);
191         __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
192
193         printf("-----------------------------------------------------------\n");
194         printf("Not existing privilege\n");
195         printf("api_version : 2.3\n");
196         printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
197         if (display_name != NULL) {
198                 free(display_name);
199                 display_name = NULL;
200         }
201         ret = privilege_info_get_display_name("2.3", "http://tizen.org/privilege/RRRRRRRRRR", &display_name);
202         __check_get_privilege_display_name_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, display_name);
203
204         printf("-----------------------------------------------------------\n");
205         printf("Invalid parameter\n");
206         printf("api_version : NULL\n");
207         printf("privilege : http://tizen.org/privilege/window.priority.set\n");
208         if (display_name != NULL) {
209                 free(display_name);
210                 display_name = NULL;
211         }
212         ret = privilege_info_get_display_name(NULL, "http://tizen.org/privilege/window, priority.set", &display_name);
213         __check_get_privilege_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, display_name);
214
215         free(display_name);
216 }
217
218 static void __test_privilege_info_get_display_name_by_pkgtype()
219 {
220         int ret;
221         char* display_name = NULL;
222
223         printf("-----------------------------------------------------------\n");
224         printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
225         printf("api_version : 2.3\n");
226         printf("privilege : http://tizen.org/privilege/window.priority.set\n");
227         ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/window.priority.set", &display_name);
228         __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
229
230         printf("-----------------------------------------------------------\n");
231         printf("pkgtype : PRVINFO_PACKAGE_TYPE_WEB\n");
232         printf("api_version : 2.3\n");
233         printf("privilege : http://tizen.org/privilege/mediacapture\n");
234         if (display_name != NULL) {
235                 free(display_name);
236                 display_name = NULL;
237         }
238         ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
239         __check_get_privilege_display_name_result(PRVINFO_ERROR_NONE, ret, display_name);
240
241         printf("-----------------------------------------------------------\n");
242         printf("Mismatched package type: write WEB as NATIVE\n");
243         printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
244         printf("api_version : 2.3\n");
245         printf("privilege : http://tizen.org/privilege/mediacapture\n");
246         if (display_name != NULL) {
247                 free(display_name);
248                 display_name = NULL;
249         }
250         ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
251         __check_get_privilege_display_name_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, display_name);
252
253
254         printf("-----------------------------------------------------------\n");
255         printf("Not existing privilege\n");
256         printf("api_version : 2.3\n");
257         printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
258         if (display_name != NULL) {
259                 free(display_name);
260                 display_name = NULL;
261         }
262         ret = privilege_info_get_display_name_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/RRRRRRRRRR", &display_name);
263         __check_get_privilege_display_name_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, display_name);
264
265         printf("-----------------------------------------------------------\n");
266         printf("Invalid parameter\n");
267         printf("api_version : 2.3\n");
268         printf("privilege : http://tizen.org/privilege/mediacapture\n");
269         if (display_name != NULL) {
270                 free(display_name);
271                 display_name = NULL;
272         }
273         ret = privilege_info_get_display_name_by_pkgtype(NULL, "2.3", "http://tizen.org/privilege/mediacapture", &display_name);
274         __check_get_privilege_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, display_name);
275
276         free(display_name);
277 }
278
279 static void __test_privilege_info_get_description()
280 {
281         int ret;
282         char* description = NULL;
283
284         printf("-----------------------------------------------------------\n");
285         printf("api_version : 2.3\n");
286         printf("privilege : http://tizen.org/privilege/window.priority.set\n");
287         ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/window.priority.set", &description);
288         __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
289
290         printf("-----------------------------------------------------------\n");
291         printf("api_version : 2.3\n");
292         printf("privilege : http://tizen.org/privilege/mediacapture\n");
293         if (description != NULL) {
294                 free(description);
295                 description = NULL;
296         }
297         ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/mediacapture", &description);
298         __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
299
300         printf("-----------------------------------------------------------\n");
301         printf("Not existing privilege\n");
302         printf("api_version : 2.3\n");
303         printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
304         if (description != NULL) {
305                 free(description);
306                 description = NULL;
307         }
308         ret = privilege_info_get_description("2.3", "http://tizen.org/privilege/RRRRRRRRRR", &description);
309         __check_get_privilege_description_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, description);
310
311         printf("-----------------------------------------------------------\n");
312         printf("Invalid parameter\n");
313         printf("api_version : 2.3\n");
314         printf("privilege : http://tizen.org/privilege/mediacapture\n");
315         if (description != NULL) {
316                 free(description);
317                 description = NULL;
318         }
319         ret = privilege_info_get_description(NULL, "http://tizen.org/privilege/mediacapture", &description);
320         __check_get_privilege_description_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, description);
321
322         free(description);
323 }
324
325 static void __test_privilege_info_get_description_by_pkgtype()
326 {
327         int ret;
328         char* description = NULL;
329
330         printf("-----------------------------------------------------------\n");
331         printf("api_version : 2.3\n");
332         printf("privilege : http://tizen.org/privilege/window.priority.set\n");
333         ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/window.priority.set", &description);
334         __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
335
336         printf("-----------------------------------------------------------\n");
337         printf("api_version : 2.3\n");
338         printf("privilege : http://tizen.org/privilege/mediacapture\n");
339         if (description != NULL) {
340                 free(description);
341                 description = NULL;
342         }
343         ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_WEB", "2.3", "http://tizen.org/privilege/mediacapture", &description);
344         __check_get_privilege_description_result(PRVINFO_ERROR_NONE, ret, description);
345
346         printf("-----------------------------------------------------------\n");
347         printf("Mismatched package type: write WEB as NATIVE\n");
348         printf("pkgtype : PRVINFO_PACKAGE_TYPE_NATIVE\n");
349         printf("api_version : 2.3\n");
350         printf("privilege : http://tizen.org/privilege/mediacapture\n");
351         if (description != NULL) {
352                 free(description);
353                 description = NULL;
354         }
355         ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/mediacapture", &description);
356         __check_get_privilege_description_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, description);
357
358         printf("-----------------------------------------------------------\n");
359         printf("Not existing privilege\n");
360         printf("api_version : 2.3\n");
361         printf("privilege : http://tizen.org/privilege/RRRRRRRRRR\n");
362         if (description != NULL) {
363                 free(description);
364                 description = NULL;
365         }
366         ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", "http://tizen.org/privilege/RRRRRRRRRR", &description);
367         __check_get_privilege_description_result(PRVINFO_ERROR_NO_MATCHING_PRIVILEGE, ret, description);
368
369         printf("-----------------------------------------------------------\n");
370         printf("Invalid parameter\n");
371         printf("api_version : 2.3\n");
372         printf("privilege : NULL\n");
373         if (description != NULL) {
374                 free(description);
375                 description = NULL;
376         }
377         ret = privilege_info_get_description_by_pkgtype("PRVINFO_PACKAGE_TYPE_NATIVE", "2.3", NULL, &description);
378         __check_get_privilege_description_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, description);
379
380         free(description);
381 }
382
383 static void __test_privilege_info_get_privacy_display_name()
384 {
385         int ret;
386         char* privacy_display_name = NULL;
387
388         printf("-----------------------------------------------------------\n");
389         printf("Invalid parameter\n");
390         printf("no input privilege\n");
391         ret = privilege_info_get_privacy_display_name(NULL, &privacy_display_name);
392         __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
393
394         if (privacy_display_name != NULL) {
395                 free(privacy_display_name);
396                 privacy_display_name = NULL;
397         }
398
399         printf("-----------------------------------------------------------\n");
400         printf("Not a privacy related privilege\n");
401         printf("privilege: http://tizen.org/privilege/internet\n");
402         ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/internet", &privacy_display_name);
403         __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
404
405         if (privacy_display_name != NULL) {
406                 free(privacy_display_name);
407                 privacy_display_name = NULL;
408         }
409
410         printf("-----------------------------------------------------------\n");
411         printf("Not existing privilege\n");
412         printf("privilege: http://tizen.org/privilege/wrong.privilege.name\n");
413         ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/wrong.privilege.name", &privacy_display_name);
414         __check_get_privacy_display_name_result(PRVINFO_ERROR_INVALID_PARAMETER, ret, privacy_display_name);
415
416         if (privacy_display_name != NULL) {
417                 free(privacy_display_name);
418                 privacy_display_name = NULL;
419         }
420
421         printf("-----------------------------------------------------------\n");
422         printf("Privacy related privilege\n");
423         printf("privilege: http://tizen.org/privilege/account.read\n");
424         ret = privilege_info_get_privacy_display_name("http://tizen.org/privilege/account.read", &privacy_display_name);
425         __check_get_privacy_display_name_result(PRVINFO_ERROR_NONE, ret, privacy_display_name);
426
427         free(privacy_display_name);
428 }
429
430 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 {
432         printf("expected : %s\n  result : %s\n", __get_result_string(expected_result), __get_result_string(result));
433
434         if (expected_result != result) {
435                 __change_color_to_yellow();
436                 printf("not matched\n");
437                 __change_color_to_origin();
438         } else {
439                 __change_color_to_green();
440                 printf("matched\n");
441                 __change_color_to_origin();
442         }
443
444         printf("return_result = %d\n", return_result);
445         GList* l;
446         if (result == PRVINFO_ERROR_NONE) {
447                 for (l = privilege_info_list; l != NULL; l = l->next) {
448                         privilege_info_s* privilege_info = (privilege_info_s*)l->data;
449
450                         printf("privilege_info->privilege_name = %s\n", privilege_info->privilege_name);
451                         printf("privilege_info->display_name = %s\n", privilege_info->display_name);
452                         printf("privilege_info->description = %s\n", privilege_info->description);
453                         printf("\n");
454                 }
455         }
456
457         printf("\n");
458 }
459
460 static void __test_privilege_info_get_privilege_info_list()
461 {
462         GList* privilege_name_list = NULL;
463         GList* privilege_info_list = NULL;
464         privilege_consumer_return_code_e return_result;
465         int ret;
466
467         printf("case : SUCCESS\n");
468         printf("locale : ko_KR.UTF8\n");
469         printf("privilege name : http://tizen.org/privilege/call\n");
470         printf("privilege name : http://tizen.org/privilege/content.read\n");
471         printf("privilege name : http://tizen.org/privilege/filesystem.read\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");
475
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");
483
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         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
490         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/systemsettings.admin");
491         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/bookmark.admin");
492
493         ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
494         __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
495         g_list_free(privilege_name_list);
496         privilege_name_list = NULL;
497         privilege_info_free_privilege_info_list(privilege_info_list);
498         privilege_info_list = NULL;
499         printf("-----------------------------------------------------------\n");
500
501         printf("case : SUCCESS3\n");
502         printf("locale : ko_KR.UTF8\n");
503         printf("privilege name : http://tizen.org/privilege/call\n");
504         printf("privilege name : http://tizen.org/privilege/alarm.xxxx\n");
505         printf("privilege name : http://tizen.org/privilege/account.xxx\n");
506         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
507         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/alarm.xxxx");
508         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/account.xxx");
509
510         ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
511         __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
512         g_list_free(privilege_name_list);
513         privilege_name_list = NULL;
514         privilege_info_free_privilege_info_list(privilege_info_list);
515         privilege_info_list = NULL;
516         printf("-----------------------------------------------------------\n");
517
518         printf("case : UNKNOWN_LOCAL_CODE\n");
519         printf("locale : xx_XX.UTF8\n");
520         printf("privilege name : http://tizen.org/privilege/call\n");
521         printf("privilege name : http://tizen.org/privilege/content.read\n");
522         printf("privilege name : http://tizen.org/privilege/filesystem.read\n");
523         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/call");
524         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/content.read");
525         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/filesystem.read");
526
527         ret = privilege_info_get_privilege_info_list("xx_XX.UTF8", privilege_name_list, &privilege_info_list, &return_result);
528         __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
529         g_list_free(privilege_name_list);
530         privilege_name_list = NULL;
531         privilege_info_free_privilege_info_list(privilege_info_list);
532         privilege_info_list = NULL;
533         printf("-----------------------------------------------------------\n");
534
535         printf("case : INVAILD_PARAMETER\n");
536         printf("locale : ko_KR.UTF8\n");
537         printf("privilege name : http://tizen.org/privilege/xxxx\n");
538         printf("privilege name : http://tizen.org/privilege/alarm.xxxx\n");
539         printf("privilege name : http://tizen.org/privilege/account.xxx\n");
540         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/xxxx");
541         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/alarm.xxxx");
542         privilege_name_list = g_list_append(privilege_name_list, "http://tizen.org/privilege/account.xxx");
543
544         ret = privilege_info_get_privilege_info_list("ko_KR.UTF8", privilege_name_list, &privilege_info_list, &return_result);
545         __check_privilege_info_get_privilege_info(PRVINFO_ERROR_NONE, ret, privilege_info_list, return_result);
546         g_list_free(privilege_name_list);
547         privilege_name_list = NULL;
548         privilege_info_free_privilege_info_list(privilege_info_list);
549         privilege_info_list = NULL;
550         printf("-----------------------------------------------------------\n");
551
552 }
553
554 int main()
555 {
556         __change_color_to_yellow();
557         printf("Test function : privilege_info_get_display_name\n");
558         __change_color_to_origin();
559         __test_privilege_info_get_display_name();
560
561         __change_color_to_yellow();
562         printf("Test function : privilege_info_get_display_name_by_pkgtype\n");
563         __change_color_to_origin();
564         __test_privilege_info_get_display_name_by_pkgtype();
565
566         __change_color_to_yellow();
567         printf("Test function : privilege_info_get_description\n");
568         __change_color_to_origin();
569         __test_privilege_info_get_description();
570
571         __change_color_to_yellow();
572         printf("Test function : privilege_info_get_description_by_pkgtype\n");
573         __change_color_to_origin();
574         __test_privilege_info_get_description_by_pkgtype();
575
576         __change_color_to_yellow();
577         printf("Test function : privilege_info_get_privacy_display_name\n");
578         __change_color_to_origin();
579         __test_privilege_info_get_privacy_display_name();
580
581         __change_color_to_yellow();
582         printf("Test function : privilege_info_get_privilege_info_list\n");
583         __change_color_to_origin();
584         __test_privilege_info_get_privilege_info_list();
585
586         __change_color_to_green();
587         printf("Test Complete\n");
588         printf("success : %d, ", success_cnt);
589         __change_color_to_red();
590         printf("fail : %d\n", fail_cnt);
591         __change_color_to_origin();
592
593         return 0;
594 }