Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_scroller_tc1.c
1 /*
2  * Tested interface: AtkObject
3  *
4  * Tested AtkObject: EailScroller
5  *
6  * Description: Test whether accessible object is successfully registered
7  *    in GObject type system and is visible in AtkObject tree. Test
8  *    accessible children availability.
9  *
10  * Test input: accessible object representing EailScroller
11  *
12  * Expected test result: test should return 0 (success)
13  */
14
15
16 #include <Elementary.h>
17 #include <atk/atk.h>
18 #include "eail_test_utils.h"
19
20 INIT_TEST("EailScroller")
21
22 static void
23 _do_test(AtkObject *obj)
24 {
25    int child_count = 0;
26
27    g_assert(ATK_IS_OBJECT(obj));
28    atk_object_set_description(obj, "test");
29    g_assert_cmpstr(atk_object_get_description(obj), ==, "test");
30
31    atk_object_set_name(obj, "test name");
32    g_assert_cmpstr(atk_object_get_name(obj), ==, "test name");
33
34    g_assert(atk_object_get_role(obj) == ATK_ROLE_SCROLL_PANE);
35
36    child_count = atk_object_get_n_accessible_children(obj);
37    g_assert(1 == child_count);
38
39    eailu_test_atk_focus(obj, TRUE);
40
41    eailu_test_code_called = TRUE;
42 }
43
44 static void
45 _init_scroller(Evas_Object *win)
46 {
47    Evas_Object  *label, *scroller;
48
49    /* default */
50    label = elm_label_add(win);
51    elm_object_text_set(label, "");
52    evas_object_show(label);
53
54    scroller = elm_scroller_add(win);
55    evas_object_size_hint_weight_set(scroller, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
56    elm_win_resize_object_add(win, scroller);
57    evas_object_show(scroller);
58    elm_object_content_set(scroller, label);
59    elm_scroller_bounce_set(scroller, EINA_TRUE, EINA_FALSE);
60    elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_ON, ELM_SCROLLER_POLICY_ON);
61    elm_scroller_propagate_events_set(scroller, EINA_TRUE);
62    elm_scroller_page_relative_set(scroller, 0, 1);
63    elm_scroller_region_show(scroller, 50, 50, 200, 200);
64 }
65
66 EAPI_MAIN int
67 elm_main(int argc, char **argv)
68 {
69    Evas_Object *win;
70
71    win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
72    _init_scroller(win);
73
74    evas_object_show(win);
75
76    elm_run();
77    elm_shutdown();
78
79    /* exit code */
80    return 0;
81 }
82 ELM_MAIN()