Merge "custom eail widget implementation" into tizen
[platform/core/uifw/eail.git] / tests / eail_mapbuf_tc1.c
1 /*\r * Tested interface: AtkObject\r *\r * Tested AtkObject: EailMapbuf\r *\r * Description: Test AtkObject interface\r *\r * Test input: accessible object representing EailMapbuf\r *\r * Expected test result: test should return 0 (success)\r */\r\r#include <Elementary.h>\r#include <atk/atk.h>\r\r#include "eail_test_utils.h"\r\rINIT_TEST("EailMapbuf")\r\rstatic void\r_do_test(AtkObject *object)\r{\r   int child_count = atk_object_get_n_accessible_children(object);\r   g_assert(child_count == 1);\r   atk_object_set_description(object, "test");\r   g_assert_cmpstr(atk_object_get_description(object), ==, "test");\r\r   atk_object_set_name(object, "test name");\r   g_assert_cmpstr(atk_object_get_name(object), ==, "test name");\r\r   AtkStateSet *state_set = atk_object_ref_state_set(object);\r   gboolean enabled = atk_state_set_contains_state(state_set,\r                                                   ATK_STATE_ENABLED);\r   g_object_unref(state_set);\r   g_assert(enabled);\r\r   AtkObject *child = atk_object_ref_accessible_child(object, 0);\r   g_assert(ATK_IS_OBJECT(child));\r   child_count = atk_object_get_n_accessible_children(child);\r   for (int i = 0; i < child_count; i++)\r     {\r        AtkObject *image = atk_object_ref_accessible_child(child, i);\r        gboolean is_image = ATK_IS_IMAGE(image);\r        g_object_unref(image);\r        g_assert(is_image);\r     }\r   g_object_unref(child);\r   g_assert(child_count == 25);\r\r   eailu_test_atk_focus(object, FALSE);\r\r   eailu_test_code_called = 1;\r}\r\rstatic void\r_init_mapbuf(Evas_Object *win)\r{\r   Evas_Object *bg, *bx, *mb, *grid, *ic;\r   unsigned int i, j;\r\r   bg = elm_bg_add(win);\r   elm_win_resize_object_add(win, bg);\r   evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);\r   evas_object_show(bg);\r\r   bx = elm_box_add(win);\r   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);\r   evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);\r   elm_win_resize_object_add(win, bx);\r   evas_object_show(bx);\r\r   mb = elm_mapbuf_add(win);\r   evas_object_size_hint_weight_set(mb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);\r   evas_object_size_hint_align_set(mb, EVAS_HINT_FILL, EVAS_HINT_FILL);\r   elm_box_pack_end(bx, mb);\r\r   grid = elm_grid_add(win);\r   elm_grid_size_set(grid, 200, 200);\r   evas_object_show(grid);\r   for (i = 0; i < 5; i++)\r     {\r        for (j = 0; j < 5; j++)\r          {\r             int w, h;\r             ic = elm_icon_add(win);\r             elm_icon_standard_set(ic, "home");\r             elm_image_resizable_set(ic, EINA_FALSE, EINA_FALSE);\r             evas_object_show(ic);\r             elm_image_object_size_get(ic, &w, &h);\r             elm_grid_pack(grid, ic, 5 + (w * i),  5 + (h * j) , w, h);\r          }\r     }\r\r   elm_object_content_set(mb, grid);\r   elm_mapbuf_enabled_set(mb, EINA_TRUE);\r   elm_mapbuf_alpha_set(mb, EINA_TRUE);\r   elm_mapbuf_smooth_set(mb, EINA_TRUE);\r   evas_object_show(mb);\r}\r\rEAPI_MAIN int\relm_main(int argc, char **argv)\r{\r   Evas_Object *win;\r\r   win = eailu_create_test_window_with_glib_init(NULL, _on_focus_in);\r   _init_mapbuf(win);\r   evas_object_resize(win, 700, 500);\r   evas_object_show(win);\r\r   elm_run();\r   elm_shutdown();\r\r   return 0;\r}\rELM_MAIN()\r