7ce1a6f864c40bd29ba0c47fef12e930886aa568
[framework/uifw/elementary.git] / TC / elm_ts / gengrid / utc_UIFW_elm_gengrid_item_object_get_func.c
1 #include <tet_api.h>
2 #include <Elementary.h>
3
4 // Definitions
5 // For checking the result of the positive test case.
6 #define TET_CHECK_PASS(x1, y...) \
7 { \
8         if (y == (x1)) \
9                 { \
10                         tet_printf("[TET_CHECK_PASS]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
11                         tet_result(TET_FAIL); \
12                         return; \
13                 } \
14 }
15
16 // For checking the result of the negative test case.
17 #define TET_CHECK_FAIL(x1, y...) \
18 { \
19         if (y != (x1)) \
20                 { \
21                         tet_printf("[TET_CHECK_FAIL]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
22                         tet_result(TET_FAIL); \
23                         return; \
24                 } \
25 }
26
27 Evas_Object *main_win, *main_bg;
28 Evas_Object *test_win, *test_bg;
29 Evas_Object *test_eo = NULL;
30 Elm_Gengrid_Item_Class gic;
31 Elm_Gengrid_Item *item;
32
33 void _elm_precondition(void);
34 static void _win_del(void *data, Evas_Object *obj, void *event_info);
35
36 static void _win_del(void *data, Evas_Object *obj, void *event_info)
37 {
38         elm_exit();
39 }
40
41 void _elm_precondition(void)
42 {
43         elm_init(0, NULL);
44
45         main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
46         elm_win_title_set(main_win, "Elementary Unit Test Suite");
47         evas_object_smart_callback_add(main_win, "delete,request", _win_del, NULL);
48         main_bg = elm_bg_add(main_win);
49         evas_object_size_hint_weight_set(main_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
50
51         evas_object_resize(main_win, 320, 480);
52         evas_object_show(main_win);
53 }
54
55 static void startup(void);
56 static void cleanup(void);
57
58 void (*tet_startup)(void) = startup;
59 void (*tet_cleanup)(void) = cleanup;
60
61 static void utc_UIFW_elm_gengrid_item_object_get_func_01(void);
62 static void utc_UIFW_elm_gengrid_item_object_get_func_02(void);
63
64 enum {
65         POSITIVE_TC_IDX = 0x01,
66         NEGATIVE_TC_IDX,
67 };
68
69 struct tet_testlist tet_testlist[] = {
70         { utc_UIFW_elm_gengrid_item_object_get_func_01, POSITIVE_TC_IDX },
71         { utc_UIFW_elm_gengrid_item_object_get_func_02, NEGATIVE_TC_IDX },
72         { NULL, 0 }
73 };
74
75 static Evas_Object * _icon_get(const void *data, Evas_Object *obj, const char *part)
76 {
77         if (!strcmp(part, "elm.swallow.icon"))
78         {
79                 Evas_Object *icon = elm_icon_add(obj);
80                 elm_icon_file_set(icon, "/usr/share/beat_winset_test/icon/grid_image/1_raw.jpg", NULL);
81                 evas_object_size_hint_aspect_set(icon, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
82                 evas_object_show(icon);
83                 return icon;
84         }
85
86         return NULL;
87 }
88
89 static void startup(void)
90 {
91         tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ ");
92
93         _elm_precondition();
94
95         test_win = elm_win_add(NULL, "Page Control", ELM_WIN_BASIC);
96         elm_win_title_set(test_win, "Page Control");
97         elm_win_autodel_set(test_win, 1);
98
99         test_bg = elm_bg_add(test_win);
100         elm_win_resize_object_add(test_win, test_bg);
101         evas_object_size_hint_weight_set(test_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
102         evas_object_show(test_bg);
103
104         evas_object_resize(test_win, 480, 800);
105         evas_object_show(test_win);
106
107         test_eo = elm_gengrid_add(test_win);
108         elm_gengrid_item_size_set(test_eo, 120, 130);
109         elm_gengrid_align_set(test_eo, 0.5, 0.0);
110         elm_gengrid_horizontal_set(test_eo, EINA_FALSE);
111         elm_gengrid_bounce_set(test_eo, EINA_FALSE, EINA_TRUE);
112         elm_gengrid_multi_select_set(test_eo, EINA_TRUE);
113
114         gic.item_style = "default_grid";
115         gic.func.label_get = NULL;
116         gic.func.icon_get = _icon_get;
117
118         item = elm_gengrid_item_append(test_eo, &gic, NULL, NULL, NULL);
119
120         tet_infoline("[[ TET_MSG ]]:: Completing startup");
121 }
122
123 static void cleanup(void)
124 {
125         if ( NULL != main_win ) {
126                 main_win = NULL;
127         }
128
129         if ( NULL != main_bg ) {
130                 main_bg = NULL;
131         }
132
133         if ( NULL != test_win ) {
134                 test_win = NULL;
135         }
136
137         if ( NULL != test_bg ) {
138                 test_bg = NULL;
139         }
140
141         if ( NULL != test_eo ) {
142                 test_eo = NULL;
143         }
144
145         elm_exit();
146
147         tet_infoline("[[ TET_MSG ]]:: ============ Cleanup ============ ");
148 }
149
150 static void utc_UIFW_elm_gengrid_item_object_get_func_01(void)
151 {
152         const Evas_Object *obj = NULL;
153
154         obj = elm_gengrid_item_object_get(item);
155
156         TET_CHECK_FAIL(NULL, obj);
157
158         tet_result(TET_PASS);
159         tet_infoline("[[ TET_MSG ]]::[ID]:TC_01, [TYPE]: Positive, [RESULT]:PASS, elm_gengrid_item_object_get");
160 }
161
162 static void utc_UIFW_elm_gengrid_item_object_get_func_02(void)
163 {
164         const Evas_Object *obj = NULL;
165
166         obj = elm_gengrid_item_object_get(NULL);
167
168         TET_CHECK_FAIL(NULL, obj);
169
170         tet_result(TET_PASS);
171         tet_infoline("[[ TET_MSG ]]::[ID]:TC_02, [TYPE]: Negative, [RESULT]:PASS, elm_gengrid_item_object_get");
172 }