Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_entry_tc1.c
1 /*
2  * Tested interface: AtkObject
3  *
4  * Tested AtkObject: EailEntry
5  *
6  * Description: Test AtkObject interface
7  *
8  * Test input: accessible object representing EailEntry
9  *
10  * Expected test result: test should return 0 (success)
11  */
12
13 #include <Elementary.h>
14 #include <atk/atk.h>
15 #include "eail_test_utils.h"
16
17 INIT_TEST("EailEntry")
18
19 static void
20 _do_test(AtkObject *obj)
21 {
22    AtkRole role;
23    AtkStateSet *state_set;
24    const char *type_name = g_type_name(G_TYPE_FROM_INSTANCE(obj));
25
26    g_assert(ATK_IS_OBJECT(obj));
27    g_assert_cmpstr(type_name, ==, "EailEntry");
28
29    atk_object_set_description(obj, "test");
30    g_assert_cmpstr(atk_object_get_description(obj), ==, "test");
31
32    atk_object_set_name(obj, "test name");
33    g_assert_cmpstr(atk_object_get_name(obj), ==, "test name");
34
35    role = atk_object_get_role(obj);
36    g_assert(role == ATK_ROLE_ENTRY);
37    state_set = atk_object_ref_state_set(obj);
38    g_assert(atk_state_set_contains_state(state_set, ATK_STATE_MULTI_LINE));
39    g_object_unref(state_set);
40
41    eailu_test_code_called = 1;
42 }
43
44 static void
45 _init_entry(Evas_Object *win)
46 {
47    Evas_Object *box, *tb, *bg, *en;
48
49    elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
50    elm_win_autodel_set(win, EINA_TRUE);
51
52    bg = elm_bg_add(win);
53    elm_win_resize_object_add(win, bg);
54    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
55    evas_object_show(bg);
56
57    box = elm_box_add(win);
58    evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
59    elm_win_resize_object_add(win, box);
60    evas_object_show(box);
61
62    tb = elm_box_add(win);
63    elm_box_horizontal_set(tb, EINA_TRUE);
64    evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, 0.0);
65    evas_object_size_hint_weight_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL);
66    elm_box_pack_end(box, tb);
67    evas_object_show(tb);
68
69    en = elm_entry_add(win);
70    elm_entry_line_wrap_set(en, ELM_WRAP_WORD);
71    evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
72    evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
73    elm_box_pack_end(box, en);
74    evas_object_show(en);
75
76    evas_object_resize(win, 200, 300);
77 }
78
79 EAPI_MAIN int
80 elm_main(int argc, char *argv[])
81 {
82    Evas_Object *win;
83
84    win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
85    _init_entry(win);
86    evas_object_show(win);
87    elm_run();
88    elm_shutdown();
89
90    return 0;
91 }
92 ELM_MAIN()