Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_check_tc1.c
1 /*
2  * Tested interface: AtkAction
3  *
4  * Tested AtkObject: EailCheck
5  *
6  * Description: Test AtkAction interface
7  *
8  * Test input: accessible object representing EailCheck
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 #define ACTIONS_NUMBER 1
19
20 #define CHECK_TEXT1 "checkbox1"
21 #define CHECK_TEXT2 "checkbox2"
22
23 static int action_test_passed;
24
25 INIT_TEST("EailCheck")
26
27 static void
28 _print(void *data, Evas_Object *obj, void *event_info)
29 {
30    _printf("\tcheck %s - %smarked\n", elm_object_part_text_get(obj, "default"),
31            *((Eina_Bool*)data) ? "" : "un");
32
33    action_test_passed = 1;
34 }
35
36 static void
37 _init_check(Evas_Object *win)
38 {
39    Evas_Object *bg, *cb1;
40    Eina_Bool value1;
41
42    bg = elm_bg_add(win);
43    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
44    elm_win_resize_object_add(win, bg);
45    evas_object_show(bg);
46
47    cb1 = elm_check_add(win);
48    elm_object_text_set(cb1, CHECK_TEXT1);
49    elm_check_state_pointer_set(cb1, &value1);
50    elm_check_state_set(cb1, EINA_TRUE);
51    evas_object_smart_callback_add(cb1, "changed", _print, &value1);
52    evas_object_move(cb1, 10, 10);
53    evas_object_resize(cb1, 200, 30);
54    evas_object_show(cb1);
55 }
56
57 static void
58 _do_test(AtkObject *obj)
59 {
60    g_assert(ATK_IS_ACTION(obj));
61    g_assert(ACTIONS_NUMBER == atk_action_get_n_actions(ATK_ACTION(obj)));
62    eailu_test_action_activate(ATK_ACTION(obj), "click");
63    g_assert((eailu_get_action_number(ATK_ACTION(obj), "typo")) == -1);
64    eailu_test_action_description_all(ATK_ACTION(obj));
65
66    atk_object_set_name(obj, "test name");
67    g_assert_cmpstr(atk_object_get_name(obj), ==, "test name");
68
69    g_assert(action_test_passed);
70    eailu_test_code_called = 1;
71 }
72
73 EAPI_MAIN int
74 elm_main(int argc, char **argv)
75 {
76    Evas_Object *win;
77
78    win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
79    g_assert(win);
80    _init_check(win);
81    evas_object_show(win);
82    elm_run();
83    elm_shutdown();
84
85    return 0;
86 }
87 ELM_MAIN()