tests: refactor of atspi test suite
authorLukasz Stanislawski <l.stanislaws@samsung.com>
Mon, 21 Jul 2014 15:16:54 +0000 (17:16 +0200)
committerLukasz Stanislawski <l.stanislaws@samsung.com>
Mon, 21 Jul 2014 15:33:56 +0000 (17:33 +0200)
Summary:
elm_test_atspi adjusted to recent internal api changes. Tests regarding elm_win
moved from elm_test_atspi to elm_test_win. Entry tests fixed. Test to
Atspi_Selection interface temporary skipped.

Reviewers: z.kosinski

Reviewed By: z.kosinski

Differential Revision: https://phab.enlightenment.org/D1199

legacy/elementary/src/tests/elm_test_atspi.c
legacy/elementary/src/tests/elm_test_entry.c
legacy/elementary/src/tests/elm_test_glview.c
legacy/elementary/src/tests/elm_test_list.c
legacy/elementary/src/tests/elm_test_win.c

index d7ec2a8..1e6bb69 100644 (file)
@@ -8,16 +8,15 @@
 #include "elm_priv.h"
 #include "elm_suite.h"
 
+#include "elm_atspi_app_object.eo.h"
+
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
-#define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
-#include "elm_interface_atspi_component.eo.h"
-
 static Evas_Object *g_win, *g_btn, *g_bg;
 
-Eo* generate_app(void)
+void generate_app(void)
 {
    g_win = elm_win_add(NULL, "Title", ELM_WIN_BASIC);
    evas_object_geometry_set(g_win, 100, 100, 100, 100);
@@ -29,24 +28,25 @@ Eo* generate_app(void)
    evas_object_show(g_btn);
    evas_object_show(g_bg);
    evas_object_show(g_win);
-
-   return _elm_atspi_bridge_root_get();
 }
 
 START_TEST (elm_atspi_name_get)
 {
    elm_init(0, NULL);
 
-   Eo* obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
+
+   ck_assert(root != NULL);
 
    const char *ret = NULL;
 
    elm_app_name_set("Test name");
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_name_get());
 
    ck_assert_str_eq(ret, "Test name");
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -55,14 +55,15 @@ START_TEST (elm_atspi_role_get)
 {
    elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    Elm_Atspi_Role role;
 
-   eo_do(obj, role = elm_interface_atspi_accessible_role_get());
+   eo_do(root, role = elm_interface_atspi_accessible_role_get());
 
    ck_assert(role == ELM_ATSPI_ROLE_APPLICATION);
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -72,14 +73,15 @@ START_TEST (elm_atspi_role_name_get)
 {
    elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    const char *ret = NULL;
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_role_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_role_name_get());
 
    ck_assert(ret != NULL);
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -88,14 +90,15 @@ START_TEST (elm_atspi_localized_role_name_get)
 {
    elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    const char *ret = NULL;
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_localized_role_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_localized_role_name_get());
 
    ck_assert(ret != NULL);
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -104,23 +107,24 @@ START_TEST (elm_atspi_description_set)
 {
    elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    const char *ret = NULL;
 
    const char *desc = "Test description";
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_description_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_description_get());
 
    ck_assert(ret == NULL);
 
-   eo_do(obj, elm_interface_atspi_accessible_description_set(desc));
+   eo_do(root, elm_interface_atspi_accessible_description_set(desc));
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_description_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_description_get());
 
    ck_assert(ret != NULL);
    ck_assert_str_eq(ret, "Test description");
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -129,7 +133,8 @@ START_TEST (elm_atspi_children_and_parent)
 {
    elm_init(0, NULL);
 
-   Eo *root = generate_app();
+   generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    Eina_List *child_list = NULL;
 
@@ -146,200 +151,7 @@ START_TEST (elm_atspi_children_and_parent)
    ck_assert(win != NULL);
    ck_assert(win == g_win);
 
-   Eo *win_parent = NULL;
-
-   eo_do(win, win_parent = elm_interface_atspi_accessible_parent_get());
-
-   ck_assert(root == win_parent);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_position)
-{
-   Eina_List *child_list = NULL;
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   eo_do(root, child_list = elm_interface_atspi_accessible_children_get());
-
-   win = eina_list_nth(child_list, 0);
-
-   Eina_Bool ret = EINA_FALSE;
-
-   eo_do(win, ret = elm_interface_atspi_component_position_set(EINA_TRUE, 100, 100));
-
-   ck_assert(ret == EINA_TRUE);
-
-   int x, y;
-
-   eo_do(win, elm_interface_atspi_component_position_get(EINA_TRUE, &x, &y));
-
-   ck_assert((x == 100) && (y == 100));
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_size)
-{
-   Eina_List *child_list = NULL;
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   eo_do(root, child_list = elm_interface_atspi_accessible_children_get());
-
-   win = eina_list_nth(child_list, 0);
-
-   Eina_Bool ret = EINA_FALSE;
-
-   eo_do(win, ret = elm_interface_atspi_component_size_set(100, 100));
-
-   ck_assert(ret == EINA_TRUE);
-
-   int w, h;
-
-   eo_do(win, elm_interface_atspi_component_size_get(&w, &h));
-
-   ck_assert((w == 100) && (h == 100));
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_focus)
-{
-   Eina_List *child_list = NULL;
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   eo_do(root, child_list = elm_interface_atspi_accessible_children_get());
-
-   win = eina_list_nth(child_list, 0);
-
-   Eina_Bool ret = EINA_FALSE;
-
-   eo_do(win, ret = elm_interface_atspi_component_focus_grab());
-
-   ck_assert(ret == EINA_TRUE);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_test_atspi_object_children_get)
-{
-   elm_init(0, NULL);
-
-   Eo *root = _elm_atspi_bridge_root_get();
-
-   Eina_List *children = NULL;
-   eo_do(root, children = elm_interface_atspi_accessible_children_get());
-
-   ck_assert(children == NULL);
-
-   eina_list_free(children);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_test_atspi_obj_index_in_parent_get)
-{
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   int ret = 0;
-
-   Eina_List *children = NULL;
-   eo_do(root, children = elm_interface_atspi_accessible_children_get());
-
-   Evas_Object *win = eina_list_nth(children, 0);
-   ck_assert(win != NULL);
-
-   eo_do(win, ret = elm_interface_atspi_accessible_index_in_parent_get());
-
-   ck_assert(ret == 0);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_z_order)
-{
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   Eina_List *children;
-   eo_do(root, children = elm_interface_atspi_accessible_children_get());
-
-   win = eina_list_nth(children, 0);
-   int z_order = -1;
-
-   eo_do(win, z_order = elm_interface_atspi_component_z_order_get());
-
-   ck_assert(z_order != -1);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_layer)
-{
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   Eina_List *children;
-   eo_do(root, children = elm_interface_atspi_accessible_children_get());
-
-   win = eina_list_nth(children, 0);
-
-   int layer = -1;
-
-   eo_do(win, layer = elm_interface_atspi_component_layer_get());
-
-   ck_assert(layer != -1);
-
-   elm_shutdown();
-}
-END_TEST
-
-START_TEST (elm_atspi_component_alpha)
-{
-   elm_init(0, NULL);
-
-   Eo *root = generate_app();
-
-   Eo *win = NULL;
-
-   Eina_List *children;
-   eo_do(root, children = elm_interface_atspi_accessible_children_get());
-   win = eina_list_nth(children, 0);
-
-   double alpha = -1.0;
-
-   eo_do(win, alpha = elm_interface_atspi_component_alpha_get());
-
-   ck_assert(alpha >= 0.0);
-   ck_assert(alpha <= 1.0);
-
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -348,7 +160,8 @@ START_TEST (elm_atspi_children_and_parent2)
 {
    elm_init(0, NULL);
 
-   Eo *root = generate_app();
+   generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
    Eo *win = NULL;
 
@@ -363,10 +176,15 @@ START_TEST (elm_atspi_children_and_parent2)
 
    Eo *btn = NULL;
 
+   btn = eina_list_nth(win_children, 0);
+   ck_assert(btn != NULL);
+   ck_assert(btn == g_bg);
+
    btn = eina_list_nth(win_children, 1);
    ck_assert(btn != NULL);
    ck_assert(btn == g_btn);
 
+   eo_unref(root);
    elm_shutdown();
 }
 END_TEST
@@ -379,22 +197,5 @@ void elm_test_atspi(TCase *tc)
    tcase_add_test(tc, elm_atspi_localized_role_name_get);
    tcase_add_test(tc, elm_atspi_description_set);
    tcase_add_test(tc, elm_atspi_children_and_parent);
-   tcase_add_test(tc, elm_atspi_component_position);
-   tcase_add_test(tc, elm_atspi_component_size);
-   tcase_add_test(tc, elm_atspi_component_focus);
-   tcase_add_test(tc, elm_test_atspi_object_children_get);
-   tcase_add_test(tc, elm_test_atspi_obj_index_in_parent_get);
-   tcase_add_test(tc, elm_atspi_component_z_order);
-   tcase_add_test(tc, elm_atspi_component_layer);
-   tcase_add_test(tc, elm_atspi_component_alpha);
    tcase_add_test(tc, elm_atspi_children_and_parent2);
 }
-
-/*
- *    TO DO
- *    elm_interface_atspi_accessible_relation_set_get
- *    elm_interface_atspi_accessible_relation_set_set
- *    elm_interface_atspi_accessible_state_get
- *    elm_interface_atspi_accessible_attributes_get
- *    elm_interface_atspi_component_contains
-*/
index 2fb9829..8c70c58 100644 (file)
@@ -183,7 +183,7 @@ START_TEST (elm_entry_atspi_text_string_get_paragraph)
    char *val;
    int start, end;
 
-   const char *txt = "Lorem ipśum<br>   dolor sit\n amęt";
+   const char *txt = "Lorem ipśum<br>   dolor sit<br> amęt";
 
    elm_init(1, NULL);
    win = elm_win_add(NULL, "entry", ELM_WIN_BASIC);
@@ -198,18 +198,18 @@ START_TEST (elm_entry_atspi_text_string_get_paragraph)
    ck_assert(end == 11);
    if (val) free(val);
 
-   start = 22;
+   start = 20;
    eo_do(entry, val = elm_interface_atspi_text_string_get(ELM_ATSPI_TEXT_GRANULARITY_PARAGRAPH, &start, &end));
    ck_assert_str_eq(val, "   dolor sit");
-   ck_assert(start == 11);
-   ck_assert(end == 22);
+   ck_assert(start == 12);
+   ck_assert(end == 24);
    if (val) free(val);
 
-   start = 27;
+   start = 25;
    eo_do(entry, val = elm_interface_atspi_text_string_get(ELM_ATSPI_TEXT_GRANULARITY_PARAGRAPH, &start, &end));
    ck_assert_str_eq(val, " amęt");
-   ck_assert(start == 23);
-   ck_assert(end == 27);
+   ck_assert(start == 25);
+   ck_assert(end == 30);
    if (val) free(val);
 
    start = 111;
@@ -229,16 +229,19 @@ START_TEST (elm_entry_atspi_text_string_get_line)
    char *val;
    int start, end;
 
-   const char *txt = "Lorem ipśum<br>   dolor sit\n amęt";
+   const char *txt = "Lorem ipśum<br>   dolor sit amęt";
 
    elm_init(1, NULL);
    win = elm_win_add(NULL, "entry", ELM_WIN_BASIC);
 
    entry = elm_entry_add(win);
+   evas_object_resize(entry, 500, 500);
+
    elm_object_text_set(entry, txt);
 
    start = 1;
    eo_do(entry, val = elm_interface_atspi_text_string_get(ELM_ATSPI_TEXT_GRANULARITY_LINE, &start, &end));
+
    ck_assert_str_eq(val, "Lorem ipśum");
    ck_assert(start == 0);
    ck_assert(end == 11);
@@ -246,9 +249,9 @@ START_TEST (elm_entry_atspi_text_string_get_line)
 
    start = 13;
    eo_do(entry, val = elm_interface_atspi_text_string_get(ELM_ATSPI_TEXT_GRANULARITY_LINE, &start, &end));
-   ck_assert_str_eq(val, "   dolor sit");
-   ck_assert(start == 11);
-   ck_assert(end == 23);
+   ck_assert_str_eq(val, "   dolor sit amęt");
+   ck_assert(start == 12);
+   ck_assert(end == 29);
    if (val) free(val);
 
    elm_shutdown();
@@ -259,8 +262,7 @@ START_TEST (elm_entry_atspi_text_text_get)
 {
    Evas_Object *win, *entry;
    char *val;
-   const char *txt = "Lorem ipśum<br>   dolor sit\n amęt";
-   const char *txtnom = "Lorem ipśum   dolor sit\n amęt";
+   const char *txt = "Lorem Xpśum dolor sit amęt";
 
    elm_init(1, NULL);
    win = elm_win_add(NULL, "entry", ELM_WIN_BASIC);
@@ -268,8 +270,19 @@ START_TEST (elm_entry_atspi_text_text_get)
    entry = elm_entry_add(win);
    elm_object_text_set(entry, txt);
 
-   eo_do(entry, val = elm_interface_atspi_text_get(0, sizeof(txtnom)/sizeof(txtnom[0])));
-   ck_assert_str_eq(val, txtnom);
+   // invalid ranges
+   eo_do(entry, val = elm_interface_atspi_text_get(6, 100));
+   ck_assert(val == NULL);
+   eo_do(entry, val = elm_interface_atspi_text_get(-6, 10));
+   ck_assert(val == NULL);
+   eo_do(entry, val = elm_interface_atspi_text_get(-6, -10));
+   ck_assert(val == NULL);
+   eo_do(entry, val = elm_interface_atspi_text_get(60, 100));
+   ck_assert(val == NULL);
+
+   // proper range
+   eo_do(entry, val = elm_interface_atspi_text_get(6, 17));
+   ck_assert_str_eq(val, "Xpśum dolor");
 
    if (val) free(val);
    elm_shutdown();
index af38005..1129c9d 100644 (file)
@@ -19,9 +19,13 @@ START_TEST (elm_atspi_role_get)
    win = elm_win_add(NULL, "glview", ELM_WIN_BASIC);
 
    glview = elm_glview_add(win);
-   eo_do(glview, role = elm_interface_atspi_accessible_role_get());
 
-   ck_assert(role == ELM_ATSPI_ROLE_ANIMATION);
+   // if no gl backend skip test
+   if (glview)
+     {
+        eo_do(glview, role = elm_interface_atspi_accessible_role_get());
+        ck_assert(role == ELM_ATSPI_ROLE_ANIMATION);
+     }
 
    elm_shutdown();
 }
index 1bd5d1f..0b86990 100644 (file)
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#if 0
+// Skip following tests until Elm_Widget_Item will migrate to Eo infrastructure
+// and following features can be implemented
+
 START_TEST (elm_list_atspi_selection_selected_children_count_get)
 {
  Evas_Object *win, *list;
@@ -182,6 +186,8 @@ START_TEST (elm_list_atspi_selection_child_deselect)
 }
 END_TEST
 
+#endif
+
 START_TEST (elm_atspi_role_get)
 {
  Evas_Object *win, *list;
@@ -201,6 +207,8 @@ END_TEST
 
 void elm_test_list(TCase *tc)
 {
+ tcase_add_test(tc, elm_atspi_role_get);
+#if 0
  tcase_add_test(tc, elm_list_atspi_selection_selected_children_count_get);
  tcase_add_test(tc, elm_list_atspi_selection_child_select);
  tcase_add_test(tc, elm_list_atspi_selection_selected_child_deselect);
@@ -208,5 +216,5 @@ void elm_test_list(TCase *tc)
  tcase_add_test(tc, elm_list_atspi_selection_all_children_select);
  tcase_add_test(tc, elm_list_atspi_selection_clear);
  tcase_add_test(tc, elm_list_atspi_selection_child_deselect);
- tcase_add_test(tc, elm_atspi_role_get);
+#endif
 }
index eb99412..63558f8 100644 (file)
@@ -9,6 +9,9 @@
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
+#include "elm_interface_atspi_component.eo.h"
+
 
 START_TEST (elm_atspi_role_get)
 {
@@ -26,7 +29,51 @@ START_TEST (elm_atspi_role_get)
 }
 END_TEST
 
+START_TEST (elm_atspi_component_position)
+{
+   Eina_Bool ret;
+   int x, y;
+
+   elm_init(0, NULL);
+
+   Eo *win = elm_win_add(NULL, "win", ELM_WIN_BASIC);
+
+   eo_do(win, ret = elm_interface_atspi_component_position_set(EINA_TRUE, 45, 45));
+   ck_assert(ret == EINA_TRUE);
+
+   Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(win));
+   ck_assert(ee != NULL);
+   ecore_evas_geometry_get(ee, &x, &y, NULL, NULL);
+
+   ck_assert((x == 45) && (y == 45));
+
+   elm_shutdown();
+}
+END_TEST
+
+START_TEST (elm_atspi_component_size)
+{
+   Eina_Bool ret;
+   int w, h;
+
+   elm_init(0, NULL);
+
+   Eo *win = elm_win_add(NULL, "win", ELM_WIN_BASIC);
+   evas_object_resize(win, 50, 50);
+
+   eo_do(win, ret = elm_interface_atspi_component_size_set(100, 100));
+   ck_assert(ret == EINA_TRUE);
+
+   evas_object_geometry_get(win, NULL, NULL, &w, &h);
+   ck_assert((w == 100) && (h == 100));
+
+   elm_shutdown();
+}
+END_TEST
+
 void elm_test_win(TCase *tc)
 {
- tcase_add_test(tc, elm_atspi_role_get);
+   tcase_add_test(tc, elm_atspi_role_get);
+   tcase_add_test(tc, elm_atspi_component_position);
+   tcase_add_test(tc, elm_atspi_component_size);
 }