Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_diskselector_tc2.c
1 /*
2  * Tested interface: AtkAction
3  *
4  * Tested AtkObject: EailDiskselector
5  *
6  * Description: Test AtkSelection interface
7  *
8  * Test input: accessible object representing EailDiskselector
9  *
10  * Expected test result: test should return 0 (success)
11  */
12
13 #include <Elementary.h>
14 #include <atk/atk.h>
15
16 #include "eail_test_utils.h"
17
18 INIT_TEST("EailDiskselector")
19
20 static void
21 _do_test(AtkObject *obj)
22 {
23    g_assert(ATK_IS_ACTION(obj));
24
25    eailu_test_action_activate(ATK_ACTION(obj), "scroll_left");
26    eailu_test_action_activate(ATK_ACTION(obj), "scroll_right");
27    eailu_test_action_activate(ATK_ACTION(obj), "scroll_up");
28    eailu_test_action_activate(ATK_ACTION(obj), "scroll_down");
29    eailu_test_action_activate(ATK_ACTION(obj), "next");
30    g_assert(atk_selection_is_child_selected(ATK_SELECTION(obj), 1));
31    eailu_test_action_activate(ATK_ACTION(obj), "next");
32    g_assert(atk_selection_is_child_selected(ATK_SELECTION(obj), 2));
33    eailu_test_action_activate(ATK_ACTION(obj), "next");
34    g_assert(atk_selection_is_child_selected(ATK_SELECTION(obj), 3));
35    eailu_test_action_activate(ATK_ACTION(obj), "previous");
36    g_assert(atk_selection_is_child_selected(ATK_SELECTION(obj), 2));
37
38    eailu_test_action_description_all(ATK_ACTION(obj));
39
40    eailu_test_code_called = 1;
41 }
42
43 static void
44 _init_diskselector(Evas_Object *win)
45 {
46    Evas_Object  *bx, *ds, *bg;
47    unsigned int i;
48    static const char *lbl[] =
49      {
50         "Sunday",
51         "Monday",
52         "Tuesday",
53         "Wednesday",
54         "Thursday",
55         "Friday",
56         "Saturday"
57      };
58    bg = elm_bg_add(win);
59    elm_win_resize_object_add(win, bg);
60    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
61    evas_object_show(bg);
62
63    bx = elm_box_add(win);
64    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
65    evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
66    elm_win_resize_object_add(win, bx);
67    evas_object_show(bx);
68
69    /* default */
70    ds = elm_diskselector_add(win);
71    evas_object_size_hint_weight_set(ds, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
72    evas_object_size_hint_align_set(ds, EVAS_HINT_FILL, EVAS_HINT_FILL);
73
74    elm_box_pack_end(bx, ds);
75
76    for (i = 0; i < sizeof(lbl) / sizeof(lbl[0]); i++)
77      elm_diskselector_item_append(ds, lbl[i], NULL, NULL, NULL);
78    evas_object_show(ds);
79    evas_object_resize(win, 800, 200);
80 }
81
82 EAPI_MAIN int
83 elm_main(int argc, char **argv)
84 {
85    Evas_Object *win;
86
87    win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
88    _init_diskselector(win);
89
90    evas_object_show(win);
91
92    elm_run();
93    elm_shutdown();
94
95    /* exit code */
96    return 0;
97 }
98 ELM_MAIN()