Merge branch 'master' of 165.213.180.234:/git/slp/pkgs/elementary
[framework/uifw/elementary.git] / TC / elm_ts / genlist / utc_UIFW_elm_genlist_clear_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         Evas_Object *err = y; \
9         if (err == (x1)) \
10                 { \
11                         tet_printf("[TET_CHECK_PASS]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
12                         tet_result(TET_FAIL); \
13                         return; \
14                 } \
15 }
16
17 // For checking the result of the negative test case.
18 #define TET_CHECK_FAIL(x1, y...) \
19 { \
20         Evas_Object *err = y; \
21         if (err != (x1)) \
22                 { \
23                         tet_printf("[TET_CHECK_FAIL]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
24                         tet_result(TET_FAIL); \
25                         return; \
26                 } \
27 }
28
29
30 Evas_Object *main_win, *genlist;
31 static char *Items[] = { "Main Item1", "Main Item 2", "Main Item 3", "Main Item 4", "Main Item 5", "Main Item 6", "Main Item 7", "Main Item 8"  };
32 Elm_Genlist_Item_Class itc;
33
34 static void startup(void);
35 static void cleanup(void);
36
37 void (*tet_startup)(void) = startup;
38 void (*tet_cleanup)(void) = cleanup;
39
40 static void utc_UIFW_elm_genlist_clear_func_01(void);
41 static void utc_UIFW_elm_genlist_clear_func_02(void);
42
43 enum {
44         POSITIVE_TC_IDX = 0x01,
45         NEGATIVE_TC_IDX,
46 };
47
48 struct tet_testlist tet_testlist[] = {
49         { utc_UIFW_elm_genlist_clear_func_01, POSITIVE_TC_IDX },
50         { utc_UIFW_elm_genlist_clear_func_02, NEGATIVE_TC_IDX },
51 };
52
53 static void startup(void)
54 {
55         Elm_Genlist_Item *item = NULL;
56         int index = 0;
57         tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ ");
58         elm_init(0, NULL);
59         main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
60         evas_object_show(main_win);     
61         genlist = elm_genlist_add(main_win);
62         evas_object_show(genlist);
63         elm_win_resize_object_add(main_win, genlist);
64         evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL);
65         evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
66         itc.item_style = "1line_textonly";
67         itc.func.label_get = _gl_label_get;
68         itc.func.icon_get = NULL;
69         itc.func.state_get = NULL;
70         itc.func.del = NULL;
71         for (index = 0; index < 8; index++) {
72                 item = elm_genlist_item_append(genlist, &itc, (void *) index, NULL,
73                                 ELM_GENLIST_ITEM_NONE, NULL, NULL);
74         }
75 }
76
77 static void cleanup(void)
78 {
79         if ( NULL != main_win ) {
80                 evas_object_del(main_win);
81                 main_win = NULL;
82         }
83         elm_shutdown();
84         tet_infoline("[[ TET_MSG ]]:: ============ Cleanup ============ ");
85 }
86
87 static char *_gl_label_get( const void *data, Evas_Object *obj, const char *part )
88 {
89         int index = (int) data;
90
91         if (!strcmp(part, "elm.text")) {
92                 return strdup(Items[index]);
93         }
94         return NULL;
95 }
96
97 /**
98  * @brief Positive test case of elm_genlist_clear()
99  */
100 static void utc_UIFW_elm_genlist_clear_func_01(void)
101 {
102    elm_genlist_clear(genlist);
103         tet_result(TET_PASS);
104 }
105
106 /**
107  * @brief Negative test case of ug_init elm_genlist_clear()
108  */
109 static void utc_UIFW_elm_genlist_clear_func_02(void)
110 {
111         elm_genlist_clear(NULL);
112         tet_result(TET_PASS);
113 }