2 * Tested interface: AtkEditableText
4 * Tested AtkObject: EailMultibuttonentry
6 * Description: Test AtkEditableText interface
8 * Test input: accessible object representing EailMultibuttonentry
10 * Expected test result: test should return 0 (success)
13 #include <Elementary.h>
16 #include "eail_test_utils.h"
18 #define ENTRY_TEXT "Trololo lololololo olololo"
20 INIT_TEST("EailMultibuttonentry")
23 _do_test(AtkObject *obj)
29 g_assert(ATK_IS_EDITABLE_TEXT(obj));
31 atk_editable_text_set_text_contents(ATK_EDITABLE_TEXT(obj), ENTRY_TEXT);
35 text = atk_text_get_text(ATK_TEXT(obj), start_offset, end_offset);
36 g_assert_cmpstr(text, ==, ENTRY_TEXT);
41 atk_editable_text_delete_text(ATK_EDITABLE_TEXT(obj), start_offset, end_offset);
42 text = atk_text_get_text(ATK_TEXT(obj), 0, -1);
43 g_assert_cmpstr(text, ==, " lololololo olololo");
46 atk_editable_text_insert_text(ATK_EDITABLE_TEXT(obj), "Trololo", 7,
48 text = atk_text_get_text(ATK_TEXT(obj), 0, -1);
49 g_assert(start_offset == 7);
50 g_assert_cmpstr(text, ==, ENTRY_TEXT);
55 atk_editable_text_copy_text(ATK_EDITABLE_TEXT(obj), start_offset, end_offset);
56 atk_editable_text_set_text_contents(ATK_EDITABLE_TEXT(obj), "123");
57 atk_editable_text_paste_text(ATK_EDITABLE_TEXT(obj), 3);
61 text = atk_text_get_text(ATK_TEXT(obj), start_offset, end_offset);
62 g_assert_cmpstr(text, ==, "123lololololo");
67 atk_editable_text_cut_text(ATK_EDITABLE_TEXT(obj), start_offset, end_offset);
68 text = atk_text_get_text(ATK_TEXT(obj), start_offset, end_offset);
69 g_assert_cmpstr(text, ==, "lol");
74 atk_editable_text_paste_text(ATK_EDITABLE_TEXT(obj), 3);
75 text = atk_text_get_text(ATK_TEXT(obj), start_offset, end_offset);
76 g_assert_cmpstr(text, ==, "lol123olololo");
79 eailu_test_code_called = 1;
84 _init_multibutton_entry(Evas_Object *win)
86 Evas_Object *scroller, *bg, *box, *mb_entry;
88 elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
89 elm_win_autodel_set(win, EINA_TRUE);
92 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
93 elm_win_resize_object_add(win, bg);
96 box = elm_box_add(win);
97 evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
98 elm_win_resize_object_add(win, box);
99 evas_object_show(box);
101 scroller = elm_scroller_add(win);
102 elm_scroller_bounce_set(scroller, EINA_FALSE, EINA_TRUE);
103 elm_scroller_policy_set
104 (scroller, ELM_SCROLLER_POLICY_OFF,ELM_SCROLLER_POLICY_AUTO);
105 evas_object_show(scroller);
107 mb_entry = elm_multibuttonentry_add(win);
108 evas_object_size_hint_weight_set(mb_entry, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
109 evas_object_size_hint_align_set(mb_entry, EVAS_HINT_FILL, EVAS_HINT_FILL);
110 elm_object_content_set(scroller, mb_entry);
111 elm_multibuttonentry_editable_set(mb_entry, EINA_TRUE);
112 evas_object_show(mb_entry);
114 evas_object_resize(win, 130, 180);
118 elm_main(int argc, char **argv)
122 win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
123 _init_multibutton_entry(win);
125 evas_object_show(win);