diff --git a/src/tests/elementary/efl_ui_test_spin_button.c b/src/tests/elementary/efl_ui_test_spin_button.c index bded16cb13..78b21a4046 100644 --- a/src/tests/elementary/efl_ui_test_spin_button.c +++ b/src/tests/elementary/efl_ui_test_spin_button.c @@ -40,14 +40,10 @@ _set_flag_quit(void *data, const Efl_Event *ev) } static void -click_spin_part(Efl_Part *obj) +click_spin_part(Eo *obj, const char *part) { get_me_to_those_events(spin); - efl_ref(obj); - click_object(obj); - edje_object_message_signal_process(obj); - efl_unref(obj); - edje_object_message_signal_process(spin); + click_part(obj, part); } EFL_START_TEST (spin_value_events) @@ -131,7 +127,7 @@ EFL_START_TEST (spin_value_inc) efl_event_callback_add(spin, EFL_UI_SPIN_EVENT_MAX_REACHED, _set_flag, &max_reached); efl_event_callback_add(spin, EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED, _set_flag_quit, &delay_changed); - click_spin_part(efl_content_get(efl_part(spin, "efl.inc_button"))); + click_spin_part(spin, "efl.inc_button"); ck_assert_int_eq(changed, EINA_TRUE); ck_assert_int_eq(min_reached, EINA_FALSE); @@ -156,7 +152,7 @@ EFL_START_TEST (spin_value_inc_max) efl_event_callback_add(spin, EFL_UI_SPIN_EVENT_MAX_REACHED, _set_flag, &max_reached); efl_event_callback_add(spin, EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED, _set_flag_quit, &delay_changed); - click_spin_part(efl_content_get(efl_part(spin, "efl.inc_button"))); + click_spin_part(spin, "efl.inc_button"); ck_assert_int_eq(changed, EINA_TRUE); ck_assert_int_eq(min_reached, EINA_FALSE); @@ -181,7 +177,7 @@ EFL_START_TEST (spin_value_dec_min) efl_event_callback_add(spin, EFL_UI_SPIN_EVENT_MAX_REACHED, _set_flag, &max_reached); efl_event_callback_add(spin, EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED, _set_flag_quit, &delay_changed); - click_spin_part(efl_content_get(efl_part(spin, "efl.dec_button"))); + click_spin_part(spin, "efl.dec_button"); ck_assert_int_eq(changed, EINA_TRUE); ck_assert_int_eq(min_reached, EINA_TRUE); diff --git a/src/tests/elementary/suite_helpers.c b/src/tests/elementary/suite_helpers.c index 080abadd4e..ee2efcb8d4 100644 --- a/src/tests/elementary/suite_helpers.c +++ b/src/tests/elementary/suite_helpers.c @@ -400,3 +400,15 @@ click_object(Eo *obj) evas_event_feed_mouse_down(e, 1, 0, 0, NULL); evas_event_feed_mouse_up(e, 1, 0, 0, NULL); } + +void +click_part(Eo *obj, const char *part) +{ + Efl_Part *part_obj = efl_ref(efl_part(obj, part)); + Eo *content = efl_content_get(part_obj); + click_object(content); + if (efl_isa(content, EFL_LAYOUT_SIGNAL_INTERFACE)) + edje_object_message_signal_process(content); + edje_object_message_signal_process(obj); + efl_unref(part_obj); +} diff --git a/src/tests/elementary/suite_helpers.h b/src/tests/elementary/suite_helpers.h index 46bd04ef23..9c1bd2a866 100644 --- a/src/tests/elementary/suite_helpers.h +++ b/src/tests/elementary/suite_helpers.h @@ -12,4 +12,5 @@ void fail_on_errors_setup(void); void get_me_to_those_events(Eo *obj); void click_object(Eo *obj); +void click_part(Eo *obj, const char *part); #endif