5814c18940adb9e9e056b6156b817bfc5411faf5
[framework/uifw/elementary.git] / TC / elm_ts / navigationbar / utc_UIFW_elm_navigationbar_title_object_list_unset_func.c
1 #include <tet_api.h>
2 #include <Elementary.h>
3 #define ICON_DIR "usr/share/beat_winset_test/icon"
4
5
6 // Definitions
7 // For checking the result of the positive test case.
8 #define TET_CHECK_PASS(x1, y...) \
9 { \
10         Evas_Object *err = y; \
11         if (err == (x1)) \
12                 { \
13                         tet_printf("[TET_CHECK_PASS]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
14                         tet_result(TET_FAIL); \
15                         return; \
16                 } \
17 }
18
19 // For checking the result of the negative test case.
20 #define TET_CHECK_FAIL(x1, y...) \
21 { \
22         Evas_Object *err = y; \
23         if (err != (x1)) \
24                 { \
25                         tet_printf("[TET_CHECK_FAIL]:: %s[%d] : Test has failed..", __FILE__,__LINE__); \
26                         tet_result(TET_FAIL); \
27                         return; \
28                 } \
29 }
30
31
32 Evas_Object *main_win, *navibar;
33 char buf[PATH_MAX];
34
35
36 static void startup(void);
37 static void cleanup(void);
38
39 void (*tet_startup)(void) = startup;
40 void (*tet_cleanup)(void) = cleanup;
41
42 static void utc_UIFW_elm_navigationbar_title_object_list_unset_func_01(void);
43 static void utc_UIFW_elm_navigationbar_title_object_list_unset_func_02(void);
44
45 enum {
46         POSITIVE_TC_IDX = 0x01,
47         NEGATIVE_TC_IDX,
48 };
49
50 struct tet_testlist tet_testlist[] = {
51         { utc_UIFW_elm_navigationbar_title_object_list_unset_func_01, POSITIVE_TC_IDX },
52         { utc_UIFW_elm_navigationbar_title_object_list_unset_func_02, NEGATIVE_TC_IDX },
53         { NULL, 0 }
54 };
55
56 static void startup(void)
57 {
58         tet_infoline("[[ TET_MSG ]]:: ============ Startup ============ ");
59         elm_init(0, NULL);
60         main_win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
61         evas_object_show(main_win);
62         navibar = elm_navigationbar_add(main_win);
63         evas_object_show(navibar);
64         elm_win_resize_object_add(main_win, navibar);
65 }
66
67 static void cleanup(void)
68 {
69         if ( NULL != navibar ) {
70                 evas_object_del(navibar);
71                 navibar = NULL;
72         }
73         if ( NULL != main_win ) {
74                 evas_object_del(main_win);
75                 main_win = NULL;
76         }
77         elm_shutdown();
78         tet_infoline("[[ TET_MSG ]]:: ============ Cleanup ============ ");
79 }
80
81 /**
82  * @brief Positive test case of elm_navigationbar_title_object_list_unset()
83  */
84 static void utc_UIFW_elm_navigationbar_title_object_list_unset_func_01(void)
85 {
86         Eina_List *list = NULL;
87         Evas_Object *content = elm_icon_add(navibar);
88         snprintf(buf, sizeof(buf), "%s/00_volume_icon.png", ICON_DIR);
89         elm_icon_file_set(content, buf, NULL);
90         evas_object_size_hint_aspect_set(content, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
91         elm_icon_scale_set(content, 1, 1);
92
93         Evas_Object *title = elm_button_add(navibar);
94         evas_object_show(title);
95
96         elm_navigationbar_push(navibar, "title", NULL, NULL, NULL, content);
97         elm_navigationbar_title_object_add(navibar, content, title);
98         elm_navigationbar_title_object_list_unset(navibar, content, &list);
99         if (!list) {
100                 tet_infoline("elm_navigationbar_title_object_list_unset() failed in positive test case");
101                 tet_result(TET_FAIL);
102                 return;
103         }
104         tet_result(TET_PASS);
105 }
106
107 /**
108  * @brief Negative test case of ug_init elm_navigationbar_title_object_list_unset()
109  */
110 static void utc_UIFW_elm_navigationbar_title_object_list_unset_func_02(void)
111 {
112         Eina_List *list = NULL;
113         Evas_Object *content = elm_icon_add(navibar);
114         snprintf(buf, sizeof(buf), "%s/00_volume_icon.png", ICON_DIR);
115         elm_icon_file_set(content, buf, NULL);
116         evas_object_size_hint_aspect_set(content, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
117         elm_icon_scale_set(content, 1, 1);
118
119         Evas_Object *title = elm_button_add(navibar);
120         evas_object_show(title);
121
122         elm_navigationbar_push(navibar, "title", NULL, NULL, NULL, content);
123         elm_navigationbar_title_object_add(navibar, content, title);
124         elm_navigationbar_title_object_list_unset(NULL, content, &list);
125         if (list) {
126                 tet_infoline("elm_navigationbar_title_object_list_unset() failed in negative test case");
127                 tet_result(TET_FAIL);
128                 return;
129         }
130         tet_result(TET_PASS);
131 }