From ab0c71803b9c9d0d5d8066f67637a6674e89e939 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 16 Jul 2019 13:38:28 -0400 Subject: [PATCH] tests/elm: break out event callback function Summary: now we have a function we can reuse which verifies that it is called exactly one time Reviewers: bu5hm4n Reviewed By: bu5hm4n Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D9330 --- src/tests/elementary/elm_test_actionslider.c | 10 +--------- src/tests/elementary/suite_helpers.c | 9 +++++++++ src/tests/elementary/suite_helpers.h | 1 + 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/tests/elementary/elm_test_actionslider.c b/src/tests/elementary/elm_test_actionslider.c index 4350791df2..4210ec6c13 100644 --- a/src/tests/elementary/elm_test_actionslider.c +++ b/src/tests/elementary/elm_test_actionslider.c @@ -43,14 +43,6 @@ EFL_END_TEST static const char *test_val; -static void -test_pos_changed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) -{ - int *called = data; - - (*called)++; -} - static void test_selected_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info) { @@ -80,7 +72,7 @@ EFL_START_TEST(elm_actionslider_test_callbacks) elm_actionslider_enabled_pos_set(as, ELM_ACTIONSLIDER_LEFT | ELM_ACTIONSLIDER_CENTER | ELM_ACTIONSLIDER_RIGHT); evas_object_smart_callback_add(as, "pos_changed", - test_pos_changed_cb, &called); + event_callback_that_is_called_exactly_one_time_and_sets_a_single_int_data_pointer_when_called, &called); evas_object_smart_callback_add(as, "selected", test_selected_cb, &called); get_me_to_those_events(as); diff --git a/src/tests/elementary/suite_helpers.c b/src/tests/elementary/suite_helpers.c index 727db9be98..b9c8d3e71d 100644 --- a/src/tests/elementary/suite_helpers.c +++ b/src/tests/elementary/suite_helpers.c @@ -456,3 +456,12 @@ click_part(Eo *obj, const char *part) edje_object_message_signal_process(obj); efl_unref(part_obj); } + +void +event_callback_that_is_called_exactly_one_time_and_sets_a_single_int_data_pointer_when_called(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + int *called = data; + + ck_assert_int_eq(*called, 0); + *called = 1; +} diff --git a/src/tests/elementary/suite_helpers.h b/src/tests/elementary/suite_helpers.h index 9c1bd2a866..f1e01d70db 100644 --- a/src/tests/elementary/suite_helpers.h +++ b/src/tests/elementary/suite_helpers.h @@ -13,4 +13,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); +void event_callback_that_is_called_exactly_one_time_and_sets_a_single_int_data_pointer_when_called(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED); #endif