Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_win_tc1.c
1 /*
2  * Tested interface: AtkAction
3  *
4  * Tested AtkObject: EailWindow
5  *
6  * Description: Test AtkAction interface
7  *
8  * Test input: accessible object representing EailWindow
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 EAIL_ACTION_FOR_MAXIMIZE "maximize"
19 #define EAIL_ACTION_FOR_MINIMIZE "minimize"
20 #define EAIL_ACTION_FOR_RESTORE "restore"
21
22 INIT_TEST("EailWindow")
23
24 static int maximize_test_passed = 0;
25 static int minimize_test_passed = 0;
26 static int resize_test_passed = 0;
27 static int restore_test_passed = 0;
28
29 static Evas_Object *global_win = NULL;
30
31 void maximize_callback()
32 {
33    maximize_test_passed = 1;
34 }
35
36 void minimize_callback()
37 {
38    minimize_test_passed = 1;
39 }
40
41 void resize_callback()
42 {
43    resize_test_passed = 1;
44 }
45
46 void restore_callback()
47 {
48    restore_test_passed = 1;
49 }
50
51 static void
52 _setup_signals(AtkObject *obj)
53 {
54    g_signal_connect(G_OBJECT(obj), "maximize",
55                     G_CALLBACK(maximize_callback), NULL);
56    g_signal_connect(G_OBJECT(obj), "minimize",
57                     G_CALLBACK(minimize_callback), NULL);
58    g_signal_connect(G_OBJECT(obj), "resize",
59                     G_CALLBACK(resize_callback), NULL);
60    g_signal_connect(G_OBJECT(obj), "restore",
61                     G_CALLBACK(restore_callback), NULL);
62 }
63
64 static void
65 _do_test(AtkObject *obj)
66 {
67    _setup_signals(obj);
68
69    g_assert(ATK_IS_ACTION(obj));
70    g_assert(3 == atk_action_get_n_actions(ATK_ACTION(obj)));
71
72    eailu_test_action_activate(ATK_ACTION(obj), EAIL_ACTION_FOR_MAXIMIZE);
73    eailu_test_action_activate(ATK_ACTION(obj), EAIL_ACTION_FOR_MINIMIZE);
74    eailu_test_action_activate(ATK_ACTION(obj), EAIL_ACTION_FOR_RESTORE);
75
76    g_assert(maximize_test_passed);
77    g_assert(minimize_test_passed);
78    g_assert(restore_test_passed);
79
80    evas_object_resize(global_win, 450, 450);
81    g_assert(resize_test_passed);
82    eailu_test_code_called = 1;
83 }
84
85 EAPI_MAIN int
86 elm_main(int argc, char **argv)
87 {
88    Evas_Object *win;
89
90    win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
91    global_win = win;
92    evas_object_show(win);
93
94    elm_run();
95    elm_shutdown();
96
97    /* exit code */
98    return 0;
99 }
100 ELM_MAIN()