Initialize Tizen 2.3
[framework/appfw/pkgmgr-info.git] / TC / unit / utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func.c
1 /*
2  *  slp-pkgmgr
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Jayoun Lee <airjany@samsung.com>, Sewook Park <sewook7.park@samsung.com>,
7  * Jaeho Lee <jaeho81.lee@samsung.com>, Shobhit Srivastava <shobhit.s@samsung.com>
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  */
22 #include <tet_api.h>
23 #include <pkgmgr-info.h>
24
25 static void startup(void);
26 static void cleanup(void);
27
28 void (*tet_startup) (void) = startup;
29 void (*tet_cleanup) (void) = cleanup;
30
31 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01(void);
32 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02(void);
33 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03(void);
34
35
36 enum {
37         POSITIVE_TC_IDX = 0x01,
38         NEGATIVE_TC_IDX,
39 };
40
41 struct tet_testlist tet_testlist[] = {
42         {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01, POSITIVE_TC_IDX},
43         {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02, NEGATIVE_TC_IDX},
44         {utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03, NEGATIVE_TC_IDX},
45         {NULL, 0},
46 };
47
48 static void startup(void)
49 {
50 }
51
52 static void cleanup(void)
53 {
54 }
55
56 /**
57  * @brief Positive test case of pkgmgrinfo_pkginfo_is_preload()
58  */
59 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_01(void)
60 {
61         int r = 0;
62         pkgmgrinfo_pkginfo_h handle;
63         bool preload = 0;
64         r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle);
65         if (r != PMINFO_R_OK) {
66                 tet_result(TET_UNINITIATED);
67                 return;
68         }
69         r = pkgmgrinfo_pkginfo_is_preload(handle, &preload);
70         if (r != PMINFO_R_OK) {
71                 tet_infoline
72                     ("pkgmgrinfo_pkginfo_is_preload() failed in positive test case");
73                 tet_result(TET_FAIL);
74                 pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
75                 return;
76         }
77         pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
78         tet_result(TET_PASS);
79 }
80
81 /**
82  * @brief Negative test case of pkgmgrinfo_pkginfo_is_preload()
83  */
84 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_02(void)
85 {
86         int r = 0;
87         pkgmgrinfo_pkginfo_h handle;
88         r = pkgmgrinfo_pkginfo_get_pkginfo("com.samsung.calculator", &handle);
89         if (r != PMINFO_R_OK) {
90                 tet_result(TET_UNINITIATED);
91                 return;
92         }
93         r = pkgmgrinfo_pkginfo_is_preload(handle, NULL);
94         if (r == PMINFO_R_OK) {
95                 tet_infoline
96                     ("pkgmgrinfo_pkginfo_is_preload() failed in negative test case");
97                 tet_result(TET_FAIL);
98                 pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
99                 return;
100         }
101         pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
102         tet_result(TET_PASS);
103 }
104
105 /**
106  * @brief Negative test case of pkgmgrinfo_pkginfo_is_preload()
107  */
108 static void utc_ApplicationFW_pkgmgrinfo_pkginfo_is_preload_func_03(void)
109 {
110         int r = 0;
111         bool preload = 0;
112         r = pkgmgrinfo_pkginfo_is_preload(NULL, &preload);
113         if (r == PMINFO_R_OK) {
114                 tet_infoline
115                     ("pkgmgrinfo_pkginfo_is_preload() failed in negative test case");
116                 tet_result(TET_FAIL);
117                 return;
118         }
119         tet_result(TET_PASS);
120 }