Tizen 2.1 base
[platform/core/security/drm-client.git] / TC / unit / utc_drmclient_drm_get_constraint_info_func.c
1 /*\r
2  * drm-client TCs\r
3  *\r
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.\r
5  *\r
6  * Contact: Hakjoo Ko <hakjoo.ko@samsung.com>\r
7  *                      Mahendra Kumar Prajapat <mahendra.p@samsung.com>\r
8  *                      Harsha Shekar <h.shekar@samsung.com>\r
9  *\r
10  *\r
11  * Licensed under the Apache License, Version 2.0 (the "License");\r
12  * you may not use this file except in compliance with the License.\r
13  * You may obtain a copy of the License at\r
14  *\r
15  * http://www.apache.org/licenses/LICENSE-2.0\r
16  *\r
17  * Unless required by applicable law or agreed to in writing, software\r
18  * distributed under the License is distributed on an "AS IS" BASIS,\r
19  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
20  * See the License for the specific language governing permissions and\r
21  * limitations under the License.\r
22  *\r
23  */\r
24 \r
25 /**\r
26  * @file                utc_drmclient_drm_get_constraint_info_func.c\r
27  * @brief       TETware unit testing functions for drm_get_constraint_info.\r
28  * @author      Mahendra Kumar Prajapat (mahendra.p@samsung.com)\r
29  * @version     0.1\r
30  * @history     0.1: Initial draft\r
31  */\r
32 \r
33 #include <tet_api.h>\r
34 #include "drmcontentsdef.h"\r
35 \r
36 static void startup(void);\r
37 static void cleanup(void);\r
38 \r
39 void (*tet_startup)(void) = startup;\r
40 void (*tet_cleanup)(void) = cleanup;\r
41 \r
42 static void utc_drmclient_drm_get_constraint_info_func_01(void);\r
43 static void utc_drmclient_drm_get_constraint_info_func_02(void);\r
44 static void utc_drmclient_drm_get_constraint_info_func_03(void);\r
45 static void utc_drmclient_drm_get_constraint_info_func_04(void);\r
46 /* Disabled below test-cases due to network & other dependencies */\r
47 #if 0\r
48 static void utc_drmclient_drm_get_constraint_info_func_05(void);\r
49 static void utc_drmclient_drm_get_constraint_info_func_06(void);\r
50 static void utc_drmclient_drm_get_constraint_info_func_07(void);\r
51 static void utc_drmclient_drm_get_constraint_info_func_08(void);\r
52 #endif\r
53 static void utc_drmclient_drm_get_constraint_info_func_09(void);\r
54 static void utc_drmclient_drm_get_constraint_info_func_10(void);\r
55 static void utc_drmclient_drm_get_constraint_info_func_11(void);\r
56 static void utc_drmclient_drm_get_constraint_info_func_12(void);\r
57 \r
58 enum {\r
59         POSITIVE_TC_IDX = 0x01,\r
60         NEGATIVE_TC_IDX,\r
61 };\r
62 \r
63 struct tet_testlist tet_testlist[] = {\r
64         { utc_drmclient_drm_get_constraint_info_func_01, POSITIVE_TC_IDX },\r
65         { utc_drmclient_drm_get_constraint_info_func_02, POSITIVE_TC_IDX },\r
66         { utc_drmclient_drm_get_constraint_info_func_03, POSITIVE_TC_IDX },\r
67         { utc_drmclient_drm_get_constraint_info_func_04, POSITIVE_TC_IDX },\r
68         /* Disabled below test-cases due to network & other dependencies */\r
69 #if 0\r
70         { utc_drmclient_drm_get_constraint_info_func_05, POSITIVE_TC_IDX },\r
71         { utc_drmclient_drm_get_constraint_info_func_06, POSITIVE_TC_IDX },\r
72         { utc_drmclient_drm_get_constraint_info_func_07, POSITIVE_TC_IDX },\r
73         { utc_drmclient_drm_get_constraint_info_func_08, POSITIVE_TC_IDX },\r
74 #endif\r
75         { utc_drmclient_drm_get_constraint_info_func_09, NEGATIVE_TC_IDX },\r
76         { utc_drmclient_drm_get_constraint_info_func_10, NEGATIVE_TC_IDX },\r
77         { utc_drmclient_drm_get_constraint_info_func_11, NEGATIVE_TC_IDX },\r
78         { utc_drmclient_drm_get_constraint_info_func_12, NEGATIVE_TC_IDX },\r
79         { NULL, 0 }\r
80 };\r
81 \r
82 static void startup(void)\r
83 {\r
84         tet_infoline("drm_get_constraint_info:Test started");\r
85         tet_infoline("OMA DRM Content should be registered");\r
86         tet_infoline("RO must be installed to get valid constraint information");\r
87 }\r
88 \r
89 static void cleanup(void)\r
90 {\r
91         tet_infoline("drm_get_constraint_info:Test completed");\r
92 }\r
93 \r
94 /**\r
95  * @brief Positive test case of drm_get_constraint_info()\r
96  */\r
97 static void utc_drmclient_drm_get_constraint_info_func_01(void)\r
98 {\r
99         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
100         drm_constraint_info_s constraint_info;\r
101         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
102         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
103         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_1);\r
104 \r
105         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
106         if(DRM_RETURN_SUCCESS == ret ){\r
107                         tet_infoline("drm_get_constraint_info PASS!!!");\r
108                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_1);\r
109                         tet_printf ("ret = 0x%x",ret);\r
110                         if(constraint_info.const_type.is_unlimited){\r
111                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
112                         }\r
113 \r
114                         if(constraint_info.const_type.is_accumulated){\r
115                                 tet_printf("Accumulated Constraint is present");\r
116                                 tet_printf("accumulated_original_seconds=%d",\r
117                                                 constraint_info.accumulated_original_seconds);\r
118                                 tet_printf("accumulated_remaining_seconds=%d",\r
119                                                 constraint_info.accumulated_remaining_seconds);\r
120                         }\r
121 \r
122                         if(constraint_info.const_type.is_count){\r
123                                 tet_printf("Count Constraint is present");\r
124                                 tet_printf("original_count=%d",\r
125                                                 constraint_info.original_count);\r
126                                 tet_printf("remaining_count=%d",\r
127                                                 constraint_info.remaining_count);\r
128                         }\r
129 \r
130                         if(constraint_info.const_type.is_datetime){\r
131                                 tet_printf("DATETIME Constraint is present");\r
132                                 tet_printf("start_time:"\r
133                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
134                                         constraint_info.start_time.tm_year,\r
135                                         constraint_info.start_time.tm_mon,\r
136                                         constraint_info.start_time.tm_mday,\r
137                                         constraint_info.start_time.tm_hour,\r
138                                         constraint_info.start_time.tm_min,\r
139                                         constraint_info.start_time.tm_sec);\r
140 \r
141                                 tet_printf("end_time:"\r
142                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
143                                         constraint_info.end_time.tm_year,\r
144                                         constraint_info.end_time.tm_mon,\r
145                                         constraint_info.end_time.tm_mday,\r
146                                         constraint_info.end_time.tm_hour,\r
147                                         constraint_info.end_time.tm_min,\r
148                                         constraint_info.end_time.tm_sec);\r
149                         }\r
150 \r
151                         if(constraint_info.const_type.is_individual){\r
152                                 tet_printf("INDIVIDUAL Constraint is present");\r
153                                 tet_printf("individual_identity_type=%d "\r
154                                                 "individual_id=%s",\r
155                                                 constraint_info.individual_identity_type,\r
156                                                 constraint_info.individual_id);\r
157 \r
158                         }\r
159 \r
160                         if(constraint_info.const_type.is_interval){\r
161                                 tet_printf("INTERVAL Constraint is present");\r
162                                 tet_printf("interval_time:"\r
163                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
164                                         constraint_info.interval_time.tm_year,\r
165                                         constraint_info.interval_time.tm_mon,\r
166                                         constraint_info.interval_time.tm_mday,\r
167                                         constraint_info.interval_time.tm_hour,\r
168                                         constraint_info.interval_time.tm_min,\r
169                                         constraint_info.interval_time.tm_sec);\r
170                         }\r
171 \r
172                         if(constraint_info.const_type.is_system){\r
173                                 tet_printf("SYSTEM Constraint is present");\r
174                                 tet_printf("system_identity_type=%d "\r
175                                                 "system_id=%s",\r
176                                                 constraint_info.system_identity_type,\r
177                                                 constraint_info.system_id);\r
178                         }\r
179 \r
180                         if(constraint_info.const_type.is_timedcount){\r
181                                 tet_printf("TIMED-COUNT Constraint is present");\r
182                                 tet_printf("timed_original_count=%d",\r
183                                                 constraint_info.timed_original_count);\r
184 \r
185                                 tet_printf("timed_remaining_count=%d",\r
186                                                 constraint_info.timed_remaining_count);\r
187 \r
188                                 tet_printf("timed_count_timer=%d",\r
189                                                                                 constraint_info.timed_count_timer);\r
190                         }\r
191 \r
192                         tet_result(TET_PASS);\r
193         }else{\r
194                         tet_infoline("drm_get_constraint_info");\r
195                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_1);\r
196                         tet_printf ("ret = 0x%x",ret);\r
197                         tet_result(TET_FAIL);\r
198         }\r
199 }\r
200 \r
201 /**\r
202  * @brief Positive test case of drm_get_constraint_info()\r
203  */\r
204 static void utc_drmclient_drm_get_constraint_info_func_02(void)\r
205 {\r
206         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
207         drm_constraint_info_s constraint_info;\r
208         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_DISPLAY;\r
209         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
210         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_5);\r
211 \r
212         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
213         if(DRM_RETURN_SUCCESS == ret ){\r
214                         tet_infoline("drm_get_constraint_info PASS!!!");\r
215                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_5);\r
216                         tet_printf ("ret = 0x%x",ret);\r
217                         if(constraint_info.const_type.is_unlimited){\r
218                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
219                         }\r
220 \r
221                         if(constraint_info.const_type.is_accumulated){\r
222                                 tet_printf("Accumulated Constraint is present");\r
223                                 tet_printf("accumulated_original_seconds=%d",\r
224                                                 constraint_info.accumulated_original_seconds);\r
225                                 tet_printf("accumulated_remaining_seconds=%d",\r
226                                                 constraint_info.accumulated_remaining_seconds);\r
227                         }\r
228 \r
229                         if(constraint_info.const_type.is_count){\r
230                                 tet_printf("Count Constraint is present");\r
231                                 tet_printf("original_count=%d",\r
232                                                 constraint_info.original_count);\r
233                                 tet_printf("remaining_count=%d",\r
234                                                 constraint_info.remaining_count);\r
235                         }\r
236 \r
237                         if(constraint_info.const_type.is_datetime){\r
238                                 tet_printf("DATETIME Constraint is present");\r
239                                 tet_printf("start_time:"\r
240                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
241                                         constraint_info.start_time.tm_year,\r
242                                         constraint_info.start_time.tm_mon,\r
243                                         constraint_info.start_time.tm_mday,\r
244                                         constraint_info.start_time.tm_hour,\r
245                                         constraint_info.start_time.tm_min,\r
246                                         constraint_info.start_time.tm_sec);\r
247 \r
248                                 tet_printf("end_time:"\r
249                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
250                                         constraint_info.end_time.tm_year,\r
251                                         constraint_info.end_time.tm_mon,\r
252                                         constraint_info.end_time.tm_mday,\r
253                                         constraint_info.end_time.tm_hour,\r
254                                         constraint_info.end_time.tm_min,\r
255                                         constraint_info.end_time.tm_sec);\r
256                         }\r
257 \r
258                         if(constraint_info.const_type.is_individual){\r
259                                 tet_printf("INDIVIDUAL Constraint is present");\r
260                                 tet_printf("individual_identity_type=%d "\r
261                                                 "individual_id=%s",\r
262                                                 constraint_info.individual_identity_type,\r
263                                                 constraint_info.individual_id);\r
264 \r
265                         }\r
266 \r
267                         if(constraint_info.const_type.is_interval){\r
268                                 tet_printf("INTERVAL Constraint is present");\r
269                                 tet_printf("interval_time:"\r
270                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
271                                         constraint_info.interval_time.tm_year,\r
272                                         constraint_info.interval_time.tm_mon,\r
273                                         constraint_info.interval_time.tm_mday,\r
274                                         constraint_info.interval_time.tm_hour,\r
275                                         constraint_info.interval_time.tm_min,\r
276                                         constraint_info.interval_time.tm_sec);\r
277                         }\r
278 \r
279                         if(constraint_info.const_type.is_system){\r
280                                 tet_printf("SYSTEM Constraint is present");\r
281                                 tet_printf("system_identity_type=%d "\r
282                                                 "system_id=%s",\r
283                                                 constraint_info.system_identity_type,\r
284                                                 constraint_info.system_id);\r
285                         }\r
286 \r
287                         if(constraint_info.const_type.is_timedcount){\r
288                                 tet_printf("TIMED-COUNT Constraint is present");\r
289                                 tet_printf("timed_original_count=%d",\r
290                                                 constraint_info.timed_original_count);\r
291 \r
292                                 tet_printf("timed_remaining_count=%d",\r
293                                                 constraint_info.timed_remaining_count);\r
294 \r
295                                 tet_printf("timed_count_timer=%d",\r
296                                                                                 constraint_info.timed_count_timer);\r
297                         }\r
298 \r
299                         tet_result(TET_PASS);\r
300         }else{\r
301                         tet_infoline("drm_get_constraint_info");\r
302                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_5);\r
303                         tet_printf ("ret = 0x%x",ret);\r
304                         tet_result(TET_FAIL);\r
305         }\r
306 }\r
307 \r
308 /**\r
309  * @brief Positive test case of drm_get_constraint_info()\r
310  */\r
311 static void utc_drmclient_drm_get_constraint_info_func_03(void)\r
312 {\r
313         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
314         drm_constraint_info_s constraint_info;\r
315         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_EXECUTE;\r
316         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
317         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_6);\r
318 \r
319         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
320         if(DRM_RETURN_SUCCESS == ret ){\r
321                         tet_infoline("drm_get_constraint_info PASS!!!");\r
322                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_6);\r
323                         tet_printf ("ret = 0x%x",ret);\r
324                         if(constraint_info.const_type.is_unlimited){\r
325                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
326                         }\r
327 \r
328                         if(constraint_info.const_type.is_accumulated){\r
329                                 tet_printf("Accumulated Constraint is present");\r
330                                 tet_printf("accumulated_original_seconds=%d",\r
331                                                 constraint_info.accumulated_original_seconds);\r
332                                 tet_printf("accumulated_remaining_seconds=%d",\r
333                                                 constraint_info.accumulated_remaining_seconds);\r
334                         }\r
335 \r
336                         if(constraint_info.const_type.is_count){\r
337                                 tet_printf("Count Constraint is present");\r
338                                 tet_printf("original_count=%d",\r
339                                                 constraint_info.original_count);\r
340                                 tet_printf("remaining_count=%d",\r
341                                                 constraint_info.remaining_count);\r
342                         }\r
343 \r
344                         if(constraint_info.const_type.is_datetime){\r
345                                 tet_printf("DATETIME Constraint is present");\r
346                                 tet_printf("start_time:"\r
347                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
348                                         constraint_info.start_time.tm_year,\r
349                                         constraint_info.start_time.tm_mon,\r
350                                         constraint_info.start_time.tm_mday,\r
351                                         constraint_info.start_time.tm_hour,\r
352                                         constraint_info.start_time.tm_min,\r
353                                         constraint_info.start_time.tm_sec);\r
354 \r
355                                 tet_printf("end_time:"\r
356                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
357                                         constraint_info.end_time.tm_year,\r
358                                         constraint_info.end_time.tm_mon,\r
359                                         constraint_info.end_time.tm_mday,\r
360                                         constraint_info.end_time.tm_hour,\r
361                                         constraint_info.end_time.tm_min,\r
362                                         constraint_info.end_time.tm_sec);\r
363                         }\r
364 \r
365                         if(constraint_info.const_type.is_individual){\r
366                                 tet_printf("INDIVIDUAL Constraint is present");\r
367                                 tet_printf("individual_identity_type=%d "\r
368                                                 "individual_id=%s",\r
369                                                 constraint_info.individual_identity_type,\r
370                                                 constraint_info.individual_id);\r
371 \r
372                         }\r
373 \r
374                         if(constraint_info.const_type.is_interval){\r
375                                 tet_printf("INTERVAL Constraint is present");\r
376                                 tet_printf("interval_time:"\r
377                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
378                                         constraint_info.interval_time.tm_year,\r
379                                         constraint_info.interval_time.tm_mon,\r
380                                         constraint_info.interval_time.tm_mday,\r
381                                         constraint_info.interval_time.tm_hour,\r
382                                         constraint_info.interval_time.tm_min,\r
383                                         constraint_info.interval_time.tm_sec);\r
384                         }\r
385 \r
386                         if(constraint_info.const_type.is_system){\r
387                                 tet_printf("SYSTEM Constraint is present");\r
388                                 tet_printf("system_identity_type=%d "\r
389                                                 "system_id=%s",\r
390                                                 constraint_info.system_identity_type,\r
391                                                 constraint_info.system_id);\r
392                         }\r
393 \r
394                         if(constraint_info.const_type.is_timedcount){\r
395                                 tet_printf("TIMED-COUNT Constraint is present");\r
396                                 tet_printf("timed_original_count=%d",\r
397                                                 constraint_info.timed_original_count);\r
398 \r
399                                 tet_printf("timed_remaining_count=%d",\r
400                                                 constraint_info.timed_remaining_count);\r
401 \r
402                                 tet_printf("timed_count_timer=%d",\r
403                                                                                 constraint_info.timed_count_timer);\r
404                         }\r
405 \r
406                         tet_result(TET_PASS);\r
407         }else{\r
408                         tet_infoline("drm_get_constraint_info");\r
409                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_6);\r
410                         tet_printf ("ret = 0x%x",ret);\r
411                         tet_result(TET_FAIL);\r
412         }\r
413 }\r
414 \r
415 /**\r
416  * @brief Positive test case of drm_get_constraint_info()\r
417  */\r
418 static void utc_drmclient_drm_get_constraint_info_func_04(void)\r
419 {\r
420         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
421         drm_constraint_info_s constraint_info;\r
422         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
423         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
424         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_8);\r
425 \r
426         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
427         if(DRM_RETURN_SUCCESS == ret ){\r
428                         tet_infoline("drm_get_constraint_info PASS!!!");\r
429                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_8);\r
430                         tet_printf ("ret = 0x%x",ret);\r
431                         if(constraint_info.const_type.is_unlimited){\r
432                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
433                         }\r
434 \r
435                         if(constraint_info.const_type.is_accumulated){\r
436                                 tet_printf("Accumulated Constraint is present");\r
437                                 tet_printf("accumulated_original_seconds=%d",\r
438                                                 constraint_info.accumulated_original_seconds);\r
439                                 tet_printf("accumulated_remaining_seconds=%d",\r
440                                                 constraint_info.accumulated_remaining_seconds);\r
441                         }\r
442 \r
443                         if(constraint_info.const_type.is_count){\r
444                                 tet_printf("Count Constraint is present");\r
445                                 tet_printf("original_count=%d",\r
446                                                 constraint_info.original_count);\r
447                                 tet_printf("remaining_count=%d",\r
448                                                 constraint_info.remaining_count);\r
449                         }\r
450 \r
451                         if(constraint_info.const_type.is_datetime){\r
452                                 tet_printf("DATETIME Constraint is present");\r
453                                 tet_printf("start_time:"\r
454                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
455                                         constraint_info.start_time.tm_year,\r
456                                         constraint_info.start_time.tm_mon,\r
457                                         constraint_info.start_time.tm_mday,\r
458                                         constraint_info.start_time.tm_hour,\r
459                                         constraint_info.start_time.tm_min,\r
460                                         constraint_info.start_time.tm_sec);\r
461 \r
462                                 tet_printf("end_time:"\r
463                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
464                                         constraint_info.end_time.tm_year,\r
465                                         constraint_info.end_time.tm_mon,\r
466                                         constraint_info.end_time.tm_mday,\r
467                                         constraint_info.end_time.tm_hour,\r
468                                         constraint_info.end_time.tm_min,\r
469                                         constraint_info.end_time.tm_sec);\r
470                         }\r
471 \r
472                         if(constraint_info.const_type.is_individual){\r
473                                 tet_printf("INDIVIDUAL Constraint is present");\r
474                                 tet_printf("individual_identity_type=%d "\r
475                                                 "individual_id=%s",\r
476                                                 constraint_info.individual_identity_type,\r
477                                                 constraint_info.individual_id);\r
478 \r
479                         }\r
480 \r
481                         if(constraint_info.const_type.is_interval){\r
482                                 tet_printf("INTERVAL Constraint is present");\r
483                                 tet_printf("interval_time:"\r
484                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
485                                         constraint_info.interval_time.tm_year,\r
486                                         constraint_info.interval_time.tm_mon,\r
487                                         constraint_info.interval_time.tm_mday,\r
488                                         constraint_info.interval_time.tm_hour,\r
489                                         constraint_info.interval_time.tm_min,\r
490                                         constraint_info.interval_time.tm_sec);\r
491                         }\r
492 \r
493                         if(constraint_info.const_type.is_system){\r
494                                 tet_printf("SYSTEM Constraint is present");\r
495                                 tet_printf("system_identity_type=%d "\r
496                                                 "system_id=%s",\r
497                                                 constraint_info.system_identity_type,\r
498                                                 constraint_info.system_id);\r
499                         }\r
500 \r
501                         if(constraint_info.const_type.is_timedcount){\r
502                                 tet_printf("TIMED-COUNT Constraint is present");\r
503                                 tet_printf("timed_original_count=%d",\r
504                                                 constraint_info.timed_original_count);\r
505 \r
506                                 tet_printf("timed_remaining_count=%d",\r
507                                                 constraint_info.timed_remaining_count);\r
508 \r
509                                 tet_printf("timed_count_timer=%d",\r
510                                                                                 constraint_info.timed_count_timer);\r
511                         }\r
512 \r
513                         tet_result(TET_PASS);\r
514         }else{\r
515                         tet_infoline("drm_get_constraint_info");\r
516                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_8);\r
517                         tet_printf ("ret = 0x%x",ret);\r
518                         tet_result(TET_FAIL);\r
519         }\r
520 }\r
521 \r
522 /* Disabled below test-cases due to network & other dependencies */\r
523 #if 0\r
524 /**\r
525  * @brief Positive test case of drm_get_constraint_info()\r
526  */\r
527 static void utc_drmclient_drm_get_constraint_info_func_05(void)\r
528 {\r
529         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
530         drm_constraint_info_s constraint_info;\r
531         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
532         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
533         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_PR_1);\r
534 \r
535         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
536         if(DRM_RETURN_SUCCESS == ret ){\r
537                         tet_infoline("drm_get_constraint_info PASS!!!");\r
538                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_1);\r
539                         tet_printf ("ret = 0x%x",ret);\r
540                         if(constraint_info.const_type.is_unlimited){\r
541                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
542                         }\r
543 \r
544                         if(constraint_info.const_type.is_accumulated){\r
545                                 tet_printf("Accumulated Constraint is present");\r
546                                 tet_printf("accumulated_original_seconds=%d",\r
547                                                 constraint_info.accumulated_original_seconds);\r
548                                 tet_printf("accumulated_remaining_seconds=%d",\r
549                                                 constraint_info.accumulated_remaining_seconds);\r
550                         }\r
551 \r
552                         if(constraint_info.const_type.is_count){\r
553                                 tet_printf("Count Constraint is present");\r
554                                 tet_printf("original_count=%d",\r
555                                                 constraint_info.original_count);\r
556                                 tet_printf("remaining_count=%d",\r
557                                                 constraint_info.remaining_count);\r
558                         }\r
559 \r
560                         if(constraint_info.const_type.is_datetime){\r
561                                 tet_printf("DATETIME Constraint is present");\r
562                                 tet_printf("start_time:"\r
563                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
564                                         constraint_info.start_time.tm_year,\r
565                                         constraint_info.start_time.tm_mon,\r
566                                         constraint_info.start_time.tm_mday,\r
567                                         constraint_info.start_time.tm_hour,\r
568                                         constraint_info.start_time.tm_min,\r
569                                         constraint_info.start_time.tm_sec);\r
570 \r
571                                 tet_printf("end_time:"\r
572                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
573                                         constraint_info.end_time.tm_year,\r
574                                         constraint_info.end_time.tm_mon,\r
575                                         constraint_info.end_time.tm_mday,\r
576                                         constraint_info.end_time.tm_hour,\r
577                                         constraint_info.end_time.tm_min,\r
578                                         constraint_info.end_time.tm_sec);\r
579                         }\r
580 \r
581                         if(constraint_info.const_type.is_individual){\r
582                                 tet_printf("INDIVIDUAL Constraint is present");\r
583                                 tet_printf("individual_identity_type=%d "\r
584                                                 "individual_id=%s",\r
585                                                 constraint_info.individual_identity_type,\r
586                                                 constraint_info.individual_id);\r
587 \r
588                         }\r
589 \r
590                         if(constraint_info.const_type.is_interval){\r
591                                 tet_printf("INTERVAL Constraint is present");\r
592                                 tet_printf("interval_time:"\r
593                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
594                                         constraint_info.interval_time.tm_year,\r
595                                         constraint_info.interval_time.tm_mon,\r
596                                         constraint_info.interval_time.tm_mday,\r
597                                         constraint_info.interval_time.tm_hour,\r
598                                         constraint_info.interval_time.tm_min,\r
599                                         constraint_info.interval_time.tm_sec);\r
600                         }\r
601 \r
602                         if(constraint_info.const_type.is_system){\r
603                                 tet_printf("SYSTEM Constraint is present");\r
604                                 tet_printf("system_identity_type=%d "\r
605                                                 "system_id=%s",\r
606                                                 constraint_info.system_identity_type,\r
607                                                 constraint_info.system_id);\r
608                         }\r
609 \r
610                         if(constraint_info.const_type.is_timedcount){\r
611                                 tet_printf("TIMED-COUNT Constraint is present");\r
612                                 tet_printf("timed_original_count=%d",\r
613                                                 constraint_info.timed_original_count);\r
614 \r
615                                 tet_printf("timed_remaining_count=%d",\r
616                                                 constraint_info.timed_remaining_count);\r
617 \r
618                                 tet_printf("timed_count_timer=%d",\r
619                                                                                 constraint_info.timed_count_timer);\r
620                         }\r
621 \r
622                         tet_result(TET_PASS);\r
623         }else{\r
624                         tet_infoline("drm_get_constraint_info");\r
625                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_1);\r
626                         tet_printf ("ret = 0x%x",ret);\r
627                         tet_result(TET_FAIL);\r
628         }\r
629 }\r
630 \r
631 /**\r
632  * @brief Positive test case of drm_get_constraint_info()\r
633  */\r
634 static void utc_drmclient_drm_get_constraint_info_func_06(void)\r
635 {\r
636         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
637         drm_constraint_info_s constraint_info;\r
638         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
639         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
640         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_PR_2);\r
641 \r
642         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
643         if(DRM_RETURN_SUCCESS == ret ){\r
644                         tet_infoline("drm_get_constraint_info PASS!!!");\r
645                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_2);\r
646                         tet_printf ("ret = 0x%x",ret);\r
647                         if(constraint_info.const_type.is_unlimited){\r
648                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
649                         }\r
650 \r
651                         if(constraint_info.const_type.is_accumulated){\r
652                                 tet_printf("Accumulated Constraint is present");\r
653                                 tet_printf("accumulated_original_seconds=%d",\r
654                                                 constraint_info.accumulated_original_seconds);\r
655                                 tet_printf("accumulated_remaining_seconds=%d",\r
656                                                 constraint_info.accumulated_remaining_seconds);\r
657                         }\r
658 \r
659                         if(constraint_info.const_type.is_count){\r
660                                 tet_printf("Count Constraint is present");\r
661                                 tet_printf("original_count=%d",\r
662                                                 constraint_info.original_count);\r
663                                 tet_printf("remaining_count=%d",\r
664                                                 constraint_info.remaining_count);\r
665                         }\r
666 \r
667                         if(constraint_info.const_type.is_datetime){\r
668                                 tet_printf("DATETIME Constraint is present");\r
669                                 tet_printf("start_time:"\r
670                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
671                                         constraint_info.start_time.tm_year,\r
672                                         constraint_info.start_time.tm_mon,\r
673                                         constraint_info.start_time.tm_mday,\r
674                                         constraint_info.start_time.tm_hour,\r
675                                         constraint_info.start_time.tm_min,\r
676                                         constraint_info.start_time.tm_sec);\r
677 \r
678                                 tet_printf("end_time:"\r
679                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
680                                         constraint_info.end_time.tm_year,\r
681                                         constraint_info.end_time.tm_mon,\r
682                                         constraint_info.end_time.tm_mday,\r
683                                         constraint_info.end_time.tm_hour,\r
684                                         constraint_info.end_time.tm_min,\r
685                                         constraint_info.end_time.tm_sec);\r
686                         }\r
687 \r
688                         if(constraint_info.const_type.is_individual){\r
689                                 tet_printf("INDIVIDUAL Constraint is present");\r
690                                 tet_printf("individual_identity_type=%d "\r
691                                                 "individual_id=%s",\r
692                                                 constraint_info.individual_identity_type,\r
693                                                 constraint_info.individual_id);\r
694 \r
695                         }\r
696 \r
697                         if(constraint_info.const_type.is_interval){\r
698                                 tet_printf("INTERVAL Constraint is present");\r
699                                 tet_printf("interval_time:"\r
700                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
701                                         constraint_info.interval_time.tm_year,\r
702                                         constraint_info.interval_time.tm_mon,\r
703                                         constraint_info.interval_time.tm_mday,\r
704                                         constraint_info.interval_time.tm_hour,\r
705                                         constraint_info.interval_time.tm_min,\r
706                                         constraint_info.interval_time.tm_sec);\r
707                         }\r
708 \r
709                         if(constraint_info.const_type.is_system){\r
710                                 tet_printf("SYSTEM Constraint is present");\r
711                                 tet_printf("system_identity_type=%d "\r
712                                                 "system_id=%s",\r
713                                                 constraint_info.system_identity_type,\r
714                                                 constraint_info.system_id);\r
715                         }\r
716 \r
717                         if(constraint_info.const_type.is_timedcount){\r
718                                 tet_printf("TIMED-COUNT Constraint is present");\r
719                                 tet_printf("timed_original_count=%d",\r
720                                                 constraint_info.timed_original_count);\r
721 \r
722                                 tet_printf("timed_remaining_count=%d",\r
723                                                 constraint_info.timed_remaining_count);\r
724 \r
725                                 tet_printf("timed_count_timer=%d",\r
726                                                                                 constraint_info.timed_count_timer);\r
727                         }\r
728 \r
729                         tet_result(TET_PASS);\r
730         }else{\r
731                         tet_infoline("drm_get_constraint_info");\r
732                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_2);\r
733                         tet_printf ("ret = 0x%x",ret);\r
734                         tet_result(TET_FAIL);\r
735         }\r
736 }\r
737 \r
738 /**\r
739  * @brief Positive test case of drm_get_constraint_info()\r
740  */\r
741 static void utc_drmclient_drm_get_constraint_info_func_07(void)\r
742 {\r
743         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
744         drm_constraint_info_s constraint_info;\r
745         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
746         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
747         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_PR_3);\r
748 \r
749         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
750         if(DRM_RETURN_SUCCESS == ret ){\r
751                         tet_infoline("drm_get_constraint_info PASS!!!");\r
752                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_3);\r
753                         tet_printf ("ret = 0x%x",ret);\r
754                         if(constraint_info.const_type.is_unlimited){\r
755                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
756                         }\r
757 \r
758                         if(constraint_info.const_type.is_accumulated){\r
759                                 tet_printf("Accumulated Constraint is present");\r
760                                 tet_printf("accumulated_original_seconds=%d",\r
761                                                 constraint_info.accumulated_original_seconds);\r
762                                 tet_printf("accumulated_remaining_seconds=%d",\r
763                                                 constraint_info.accumulated_remaining_seconds);\r
764                         }\r
765 \r
766                         if(constraint_info.const_type.is_count){\r
767                                 tet_printf("Count Constraint is present");\r
768                                 tet_printf("original_count=%d",\r
769                                                 constraint_info.original_count);\r
770                                 tet_printf("remaining_count=%d",\r
771                                                 constraint_info.remaining_count);\r
772                         }\r
773 \r
774                         if(constraint_info.const_type.is_datetime){\r
775                                 tet_printf("DATETIME Constraint is present");\r
776                                 tet_printf("start_time:"\r
777                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
778                                         constraint_info.start_time.tm_year,\r
779                                         constraint_info.start_time.tm_mon,\r
780                                         constraint_info.start_time.tm_mday,\r
781                                         constraint_info.start_time.tm_hour,\r
782                                         constraint_info.start_time.tm_min,\r
783                                         constraint_info.start_time.tm_sec);\r
784 \r
785                                 tet_printf("end_time:"\r
786                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
787                                         constraint_info.end_time.tm_year,\r
788                                         constraint_info.end_time.tm_mon,\r
789                                         constraint_info.end_time.tm_mday,\r
790                                         constraint_info.end_time.tm_hour,\r
791                                         constraint_info.end_time.tm_min,\r
792                                         constraint_info.end_time.tm_sec);\r
793                         }\r
794 \r
795                         if(constraint_info.const_type.is_individual){\r
796                                 tet_printf("INDIVIDUAL Constraint is present");\r
797                                 tet_printf("individual_identity_type=%d "\r
798                                                 "individual_id=%s",\r
799                                                 constraint_info.individual_identity_type,\r
800                                                 constraint_info.individual_id);\r
801 \r
802                         }\r
803 \r
804                         if(constraint_info.const_type.is_interval){\r
805                                 tet_printf("INTERVAL Constraint is present");\r
806                                 tet_printf("interval_time:"\r
807                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
808                                         constraint_info.interval_time.tm_year,\r
809                                         constraint_info.interval_time.tm_mon,\r
810                                         constraint_info.interval_time.tm_mday,\r
811                                         constraint_info.interval_time.tm_hour,\r
812                                         constraint_info.interval_time.tm_min,\r
813                                         constraint_info.interval_time.tm_sec);\r
814                         }\r
815 \r
816                         if(constraint_info.const_type.is_system){\r
817                                 tet_printf("SYSTEM Constraint is present");\r
818                                 tet_printf("system_identity_type=%d "\r
819                                                 "system_id=%s",\r
820                                                 constraint_info.system_identity_type,\r
821                                                 constraint_info.system_id);\r
822                         }\r
823 \r
824                         if(constraint_info.const_type.is_timedcount){\r
825                                 tet_printf("TIMED-COUNT Constraint is present");\r
826                                 tet_printf("timed_original_count=%d",\r
827                                                 constraint_info.timed_original_count);\r
828 \r
829                                 tet_printf("timed_remaining_count=%d",\r
830                                                 constraint_info.timed_remaining_count);\r
831 \r
832                                 tet_printf("timed_count_timer=%d",\r
833                                                                                 constraint_info.timed_count_timer);\r
834                         }\r
835 \r
836                         tet_result(TET_PASS);\r
837         }else{\r
838                         tet_infoline("drm_get_constraint_info");\r
839                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_PR_3);\r
840                         tet_printf ("ret = 0x%x",ret);\r
841                         tet_result(TET_FAIL);\r
842         }\r
843 }\r
844 \r
845 /**\r
846  * @brief Positive test case of drm_get_constraint_info()\r
847  */\r
848 static void utc_drmclient_drm_get_constraint_info_func_08(void)\r
849 {\r
850         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
851         drm_constraint_info_s constraint_info;\r
852         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
853         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
854         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_DIVX_1);\r
855 \r
856         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
857         if(DRM_RETURN_SUCCESS == ret ){\r
858                         tet_infoline("drm_get_constraint_info PASS!!!");\r
859                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_DIVX_1);\r
860                         tet_printf ("ret = 0x%x",ret);\r
861                         if(constraint_info.const_type.is_unlimited){\r
862                                 tet_printf("Unlimited:for permission=%d",perm_type);\r
863                         }\r
864 \r
865                         if(constraint_info.const_type.is_accumulated){\r
866                                 tet_printf("Accumulated Constraint is present");\r
867                                 tet_printf("accumulated_original_seconds=%d",\r
868                                                 constraint_info.accumulated_original_seconds);\r
869                                 tet_printf("accumulated_remaining_seconds=%d",\r
870                                                 constraint_info.accumulated_remaining_seconds);\r
871                         }\r
872 \r
873                         if(constraint_info.const_type.is_count){\r
874                                 tet_printf("Count Constraint is present");\r
875                                 tet_printf("original_count=%d",\r
876                                                 constraint_info.original_count);\r
877                                 tet_printf("remaining_count=%d",\r
878                                                 constraint_info.remaining_count);\r
879                         }\r
880 \r
881                         if(constraint_info.const_type.is_datetime){\r
882                                 tet_printf("DATETIME Constraint is present");\r
883                                 tet_printf("start_time:"\r
884                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
885                                         constraint_info.start_time.tm_year,\r
886                                         constraint_info.start_time.tm_mon,\r
887                                         constraint_info.start_time.tm_mday,\r
888                                         constraint_info.start_time.tm_hour,\r
889                                         constraint_info.start_time.tm_min,\r
890                                         constraint_info.start_time.tm_sec);\r
891 \r
892                                 tet_printf("end_time:"\r
893                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
894                                         constraint_info.end_time.tm_year,\r
895                                         constraint_info.end_time.tm_mon,\r
896                                         constraint_info.end_time.tm_mday,\r
897                                         constraint_info.end_time.tm_hour,\r
898                                         constraint_info.end_time.tm_min,\r
899                                         constraint_info.end_time.tm_sec);\r
900                         }\r
901 \r
902                         if(constraint_info.const_type.is_individual){\r
903                                 tet_printf("INDIVIDUAL Constraint is present");\r
904                                 tet_printf("individual_identity_type=%d "\r
905                                                 "individual_id=%s",\r
906                                                 constraint_info.individual_identity_type,\r
907                                                 constraint_info.individual_id);\r
908 \r
909                         }\r
910 \r
911                         if(constraint_info.const_type.is_interval){\r
912                                 tet_printf("INTERVAL Constraint is present");\r
913                                 tet_printf("interval_time:"\r
914                                                 "Year=%d,Month=%d,Day=%d,Hour=%d, minute=%d, Second=%d",\r
915                                         constraint_info.interval_time.tm_year,\r
916                                         constraint_info.interval_time.tm_mon,\r
917                                         constraint_info.interval_time.tm_mday,\r
918                                         constraint_info.interval_time.tm_hour,\r
919                                         constraint_info.interval_time.tm_min,\r
920                                         constraint_info.interval_time.tm_sec);\r
921                         }\r
922 \r
923                         if(constraint_info.const_type.is_system){\r
924                                 tet_printf("SYSTEM Constraint is present");\r
925                                 tet_printf("system_identity_type=%d "\r
926                                                 "system_id=%s",\r
927                                                 constraint_info.system_identity_type,\r
928                                                 constraint_info.system_id);\r
929                         }\r
930 \r
931                         if(constraint_info.const_type.is_timedcount){\r
932                                 tet_printf("TIMED-COUNT Constraint is present");\r
933                                 tet_printf("timed_original_count=%d",\r
934                                                 constraint_info.timed_original_count);\r
935 \r
936                                 tet_printf("timed_remaining_count=%d",\r
937                                                 constraint_info.timed_remaining_count);\r
938 \r
939                                 tet_printf("timed_count_timer=%d",\r
940                                                                                 constraint_info.timed_count_timer);\r
941                         }\r
942 \r
943                         tet_result(TET_PASS);\r
944         }else{\r
945                         tet_infoline("drm_get_constraint_info");\r
946                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_DIVX_1);\r
947                         tet_printf ("ret = 0x%x",ret);\r
948                         tet_result(TET_FAIL);\r
949         }\r
950 }\r
951 #endif\r
952 /**\r
953  * @brief Negative test case of drm_get_constraint_info()\r
954  */\r
955 \r
956 static void utc_drmclient_drm_get_constraint_info_func_09(void)\r
957 {\r
958         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
959         drm_constraint_info_s constraint_info;\r
960         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
961 \r
962         ret = drm_get_constraint_info(FILE_PATH_INVALID_FILE_NULL,perm_type,&constraint_info);\r
963         if(DRM_RETURN_SUCCESS != ret){\r
964                         tet_infoline("drm_get_constraint_info PASS!!!");\r
965                         tet_printf ("file_path checked is %s",FILE_PATH_INVALID_FILE_NULL);\r
966                         tet_printf ("ret = 0x%x",ret);\r
967                         tet_result(TET_PASS);\r
968         }else{\r
969                         tet_infoline("drm_get_constraint_info");\r
970                         tet_printf ("file_path checked is %s",FILE_PATH_INVALID_FILE_NULL);\r
971                         tet_printf ("ret = 0x%x",ret);\r
972                         tet_result(TET_FAIL);\r
973         }\r
974 }\r
975 \r
976 /**\r
977  * @brief Negative test case of drm_get_constraint_info()\r
978  */\r
979 \r
980 static void utc_drmclient_drm_get_constraint_info_func_10(void)\r
981 {\r
982         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
983         drm_constraint_info_s constraint_info;\r
984         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
985         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
986 \r
987         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
988         if(DRM_RETURN_SUCCESS != ret){\r
989                         tet_infoline("drm_get_constraint_info PASS!!!");\r
990                         tet_printf ("file_path checked is %s",FILE_PATH_INVALID_FILE_EMPTY);\r
991                         tet_printf ("ret = 0x%x",ret);\r
992                         tet_result(TET_PASS);\r
993         }else{\r
994                         tet_infoline("drm_get_constraint_info");\r
995                         tet_printf ("file_path checked is %s",FILE_PATH_INVALID_FILE_EMPTY);\r
996                         tet_printf ("ret = 0x%x",ret);\r
997                         tet_result(TET_FAIL);\r
998         }\r
999 }\r
1000 \r
1001 /**\r
1002  * @brief Negative test case of drm_get_constraint_info()\r
1003  */\r
1004 \r
1005 static void utc_drmclient_drm_get_constraint_info_func_11(void)\r
1006 {\r
1007         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
1008         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_PLAY;\r
1009         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
1010         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_1);\r
1011 \r
1012         ret = drm_get_constraint_info(file_path,perm_type,INVALID_POINTER_OBJECT);\r
1013         if(DRM_RETURN_SUCCESS != ret){\r
1014                         tet_infoline("drm_get_constraint_info PASS!!!");\r
1015                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_1);\r
1016                         tet_printf ("ret = 0x%x",ret);\r
1017                         tet_result(TET_PASS);\r
1018         }else{\r
1019                         tet_infoline("drm_get_constraint_info");\r
1020                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_1);\r
1021                         tet_printf ("ret = 0x%x",ret);\r
1022                         tet_result(TET_FAIL);\r
1023         }\r
1024 }\r
1025 \r
1026 /**\r
1027  * @brief Negative test case of drm_get_constraint_info()\r
1028  */\r
1029 static void utc_drmclient_drm_get_constraint_info_func_12(void)\r
1030 {\r
1031         int ret = DRM_RETURN_INTERNAL_ERROR ;\r
1032         drm_constraint_info_s constraint_info;\r
1033         drm_permission_type_e perm_type = DRM_PERMISSION_TYPE_DISPLAY;\r
1034         char file_path[FILE_PATH_MAX_SIZE] = {0,};\r
1035         snprintf(file_path,FILE_PATH_MAX_SIZE, "%s",FILE_PATH_VALID_FILE_OMA_7);\r
1036 \r
1037         ret = drm_get_constraint_info(file_path,perm_type,&constraint_info);\r
1038         if(DRM_RETURN_SUCCESS != ret ){\r
1039                         /* pbarimage_timedcount.dr RO is in wrong format */\r
1040                         /* Thus it will fail */\r
1041                         tet_infoline("drm_get_constraint_info PASS!!!");\r
1042                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_7);\r
1043                         tet_printf ("ret = 0x%x",ret);\r
1044                         tet_result(TET_PASS);\r
1045         }else{\r
1046                         tet_infoline("drm_get_constraint_info");\r
1047                         tet_printf ("file_path checked is %s",FILE_PATH_VALID_FILE_OMA_7);\r
1048                         tet_printf ("ret = 0x%x",ret);\r
1049                         tet_result(TET_FAIL);\r
1050         }\r
1051 }\r