2 * Tested interface: AtkAction
4 * Tested AtkObject: EailHoversel
6 * Description: Test AtkAction interface
8 * Test input: accessible object representing EailHoversel
10 * Expected test result: test should return 0 (success)
13 #include <Elementary.h>
16 #include "eail_test_utils.h"
18 #define ACTIONS_COUNT 2
19 #define ACTION_SHRINK 0
20 #define ACTION_EXPAND 1
22 #define ITEM1_NAME "Print items"
23 #define ITEM2_NAME "Option 2"
24 #define ITEM3_NAME "Clear all items"
26 INIT_TEST("EailHoversel")
29 _init_hoversel(Evas_Object *win)
31 Evas_Object *bg, *rect, *hoversel;
34 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
35 elm_win_resize_object_add(win, bg);
38 rect = evas_object_rectangle_add(evas_object_evas_get(win));
39 evas_object_color_set(rect, 255, 0, 0, 255);
40 evas_object_show(rect);
42 hoversel = elm_hoversel_add(win);
43 elm_hoversel_hover_parent_set(hoversel, win);
44 elm_hoversel_horizontal_set(hoversel, EINA_FALSE);
45 elm_object_text_set(hoversel, "Hoversel");
46 elm_object_part_content_set(hoversel, "icon", rect);
48 elm_hoversel_item_add(hoversel, ITEM1_NAME, NULL, ELM_ICON_NONE,
50 elm_hoversel_item_add(hoversel, ITEM2_NAME, "home", ELM_ICON_STANDARD, NULL,
52 elm_hoversel_item_add(hoversel, ITEM3_NAME, "close",
53 ELM_ICON_STANDARD, NULL, NULL);
55 evas_object_resize(hoversel, 180, 30);
56 evas_object_resize(win, 200, 180);
57 evas_object_move(hoversel, 10, 10);
58 evas_object_show(hoversel);
59 elm_hoversel_hover_begin(hoversel);
63 _do_test(AtkObject *obj)
65 AtkStateSet *state_set;
67 g_assert(ATK_IS_ACTION(obj));
69 g_assert(atk_action_get_n_actions(ATK_ACTION(obj)) == ACTIONS_COUNT);
71 eailu_test_action_description_all(ATK_ACTION(obj));
73 g_assert(atk_action_do_action(ATK_ACTION(obj), ACTION_SHRINK));
74 state_set = atk_object_ref_state_set(obj);
75 atk_state_set_contains_state(state_set, ATK_STATE_DEFAULT);
76 g_object_unref(state_set);
78 g_assert(atk_action_do_action(ATK_ACTION(obj), ACTION_EXPAND));
79 state_set = atk_object_ref_state_set(obj);
80 g_assert(atk_state_set_contains_state(state_set, ATK_STATE_EXPANDED));
81 g_assert(atk_state_set_contains_state(state_set, ATK_STATE_VERTICAL));
82 g_object_unref(state_set);
84 g_assert((eailu_get_action_number(ATK_ACTION(obj), "typo")) == -1);
86 eailu_test_code_called = 1;
90 elm_main(int argc, char **argv)
92 Evas_Object *win = NULL;
94 win = eailu_create_test_window_with_glib_init(_on_done, _on_focus_in);
97 evas_object_show(win);