Initialize Tizen 2.3
[framework/uifw/elementary.git] / wearable / TC / elm_ts / imageslider / utc_UIFW_elm_imageslider_item_del_func.c
1 #include <tet_api.h>
2 #include <Elementary.h>
3
4
5 // Definitions
6 // For checking the result of the positive test case.
7 #define TET_CHECK_PASS(x1, y...) \
8 { \
9         Evas_Object *err = y; \
10         if (err == (x1)) \
11                 { \
12                         tet_printf("[TET_CHECK_PASS]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
13                         tet_result(TET_FAIL); \
14                         return; \
15                 } \
16 }
17
18 // For checking the result of the negative test case.
19 #define TET_CHECK_FAIL(x1, y...) \
20 { \
21         Evas_Object *err = y; \
22         if (err != (x1)) \
23                 { \
24                         tet_printf("[TET_CHECK_FAIL]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
25                         tet_result(TET_FAIL); \
26                         return; \
27                 } \
28 }
29
30 static void startup(void);
31 static void cleanup(void);
32
33 void (*tet_startup)(void) = startup;
34 void (*tet_cleanup)(void) = cleanup;
35
36 static void utc_UIFW_elm_imageslider_item_del_func_01(void);
37 static void utc_UIFW_elm_imageslider_item_del_func_02(void);
38
39 enum {
40         POSITIVE_TC_IDX = 0x01,
41         NEGATIVE_TC_IDX,
42 };
43
44 struct tet_testlist tet_testlist[] = {
45         { utc_UIFW_elm_imageslider_item_del_func_01, POSITIVE_TC_IDX },
46         { utc_UIFW_elm_imageslider_item_del_func_02, NEGATIVE_TC_IDX },
47         { NULL, 0}
48 };
49
50 // Declare the global variables
51 Evas_Object *main_win, *main_bg;
52 Evas_Object *test_win, *test_bg;
53 Evas_Object *test_eo;
54 static char *imageslider_photos_path[] = {
55         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item1.jpg",
56         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item2.jpg",
57         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item3.jpg",
58         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item4.jpg",
59         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item5.jpg",
60         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item6.jpg",
61         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item7.jpg",
62         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item8.jpg",
63         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item9.jpg",
64         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item10.jpg",
65         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item11.jpg",
66         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item12.jpg",
67         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item13.jpg",
68         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item14.jpg",
69         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item15.jpg",
70         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item16.jpg",
71         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item17.jpg",
72         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item18.jpg",
73         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item19.jpg",
74         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item20.jpg",
75         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item21.jpg",
76         "/usr/share/beat_winset_test/icon/Albums_Item/Albums_Item22.jpg",
77 };
78
79
80 // Declare internal functions
81 void _elm_precondition(void);
82 static void _win_del(void *data, Evas_Object *obj, void *event_info);
83 static void _test_cb(void * data, Evas_Object * obj, void * event_info);
84
85 // Do precondition.
86 void _elm_precondition(void)
87 {
88         elm_init(0, NULL);
89
90         main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
91         elm_win_title_set(main_win, "Elementary Unit Test Suite");
92         evas_object_smart_callback_add(main_win, "delete,request", _win_del, NULL);
93         main_bg = elm_bg_add(main_win);
94         evas_object_size_hint_weight_set(main_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
95         elm_win_resize_object_add(main_win, main_bg);
96         evas_object_show(main_bg);
97
98         // set an initial window size
99         evas_object_resize(main_win, 320, 480);
100         // show the window
101         evas_object_show(main_win);
102
103         //elm_run();
104 }
105
106 // Delete main window
107 static void _win_del(void *data, Evas_Object *obj, void *event_info)
108 {
109         elm_exit();
110 }
111
112 // Callback function
113 static void _test_cb(void *data, Evas_Object *obj, void *event_info)
114 {
115         Elm_Imageslider_Item *it = event_info;
116         Elm_Imageslider_Item *sel = elm_imageslider_selected_item_get(obj);
117
118         printf("[[[ DEBUG ]]]::==================================================\n");
119         printf("[[[ DEBUG ]]]::%p %p\n", it, sel);
120         printf("[[[ DEBUG ]]]::PHOTO FILE: %s\n", elm_imageslider_item_photo_file_get(it));
121         printf("[[[ DEBUG ]]]::--------------------------------------------------------\n");
122
123 }
124
125 // Start up function for each test purpose
126 static void
127 startup()
128 {
129         tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ ");
130
131         // Elm precondition
132         _elm_precondition();
133
134         // Test precondition
135         test_win = elm_win_add(NULL, "Image Silder", ELM_WIN_BASIC);
136         elm_win_title_set(test_win, "Image Slider");
137         elm_win_autodel_set(test_win, 1);
138
139         test_bg = elm_bg_add(test_win);
140         elm_win_resize_object_add(test_win, test_bg);
141         evas_object_size_hint_weight_set(test_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
142         evas_object_show(test_bg);
143
144         evas_object_resize(test_win, 480, 800);
145         evas_object_show(test_win);
146
147         // Add an Image Slider Widget.
148         test_eo = elm_imageslider_add(test_win);
149
150         tet_infoline("[[ TET_MSG ]]:: Completing startup");
151 }
152
153 // Clean up function for each test purpose
154 static void
155 cleanup()
156 {
157         tet_infoline("[[ TET_MSG ]]:: ============ Cleanup ============ ");
158
159         // Clean up the used resources.
160         if ( NULL != main_win ) {
161                 evas_object_del(main_win);
162                 main_win = NULL;
163         }
164
165         if ( NULL != main_bg ) {
166                 evas_object_del(main_bg);
167                 main_bg = NULL;
168         }
169
170         if ( NULL != test_win ) {
171                 evas_object_del(test_win);
172                 test_win = NULL;
173         }
174
175         if ( NULL != test_bg ) {
176                 evas_object_del(test_bg);
177                 test_bg = NULL;
178         }
179
180         if ( NULL != test_eo ) {
181                 evas_object_del(test_eo);
182                 test_eo = NULL;
183         }
184
185         // clean up and shut down
186         elm_shutdown(); ;
187
188         tet_infoline("[[ TET_MSG ]]:: ========= TC COMPLETE  ========== ");
189 }
190
191 /**
192  * @brief Positive test case of elm_imageslider_item_del()
193  */
194 static void utc_UIFW_elm_imageslider_item_del_func_01(void)
195 {
196         Elm_Imageslider_Item *it = NULL;
197
198         it = elm_imageslider_item_append(test_eo, imageslider_photos_path[0], _test_cb, NULL);
199
200         // Current return type is "Void", but will change to Bool.
201         elm_imageslider_item_del(it);
202
203         tet_result(TET_PASS);
204         tet_infoline("[[ TET_MSG ]]::[ID]:TC_01, [TYPE]: Positive, [RESULT]:PASS, The selected Image Slider item deleted successfully.");
205 }
206
207 /**
208  * @brief Negative test case of ug_init elm_imageslider_item_del()
209  */
210 static void utc_UIFW_elm_imageslider_item_del_func_02(void)
211 {
212         // Current return type is "Void", but will change to Bool.
213         elm_imageslider_item_del(NULL);
214
215         tet_result(TET_PASS);
216         tet_infoline("[[ TET_MSG ]]::[ID]:TC_02, [TYPE]: Negative, [RESULT]:PASS, Deleting the selected Image Slider item has failed.");
217 }