diff --git a/src/tests/ecore_wl2/ecore_wl2_suite.c b/src/tests/ecore_wl2/ecore_wl2_suite.c index b4285ccd62..b6875c006d 100644 --- a/src/tests/ecore_wl2/ecore_wl2_suite.c +++ b/src/tests/ecore_wl2/ecore_wl2_suite.c @@ -12,6 +12,7 @@ static const Efl_Test_Case etc[] = { "Ecore_Wl2", ecore_wl2_test_init }, { "Display", ecore_wl2_test_display }, { "Window", ecore_wl2_test_window }, + { "Input", ecore_wl2_test_input }, #endif { NULL, NULL } }; diff --git a/src/tests/ecore_wl2/ecore_wl2_suite.h b/src/tests/ecore_wl2/ecore_wl2_suite.h index a344818814..a8edf93074 100644 --- a/src/tests/ecore_wl2/ecore_wl2_suite.h +++ b/src/tests/ecore_wl2/ecore_wl2_suite.h @@ -7,5 +7,6 @@ void ecore_wl2_test_init(TCase *tc); void ecore_wl2_test_display(TCase *tc); void ecore_wl2_test_window(TCase *tc); +void ecore_wl2_test_input(TCase *tc); #endif diff --git a/src/tests/ecore_wl2/ecore_wl2_test_display.c b/src/tests/ecore_wl2/ecore_wl2_test_display.c index f988d3adc3..b499d21df3 100644 --- a/src/tests/ecore_wl2/ecore_wl2_test_display.c +++ b/src/tests/ecore_wl2/ecore_wl2_test_display.c @@ -174,8 +174,7 @@ ecore_wl2_test_display(TCase *tc) tcase_add_test(tc, wl2_display_get); tcase_add_test(tc, wl2_display_name_get); } - - if (getenv("WAYLAND_DISPLAY")) + else if (getenv("WAYLAND_DISPLAY")) { /* tests here are for client-side functions */ printf("Wayland Compositor detected. Testing client-side functions\n"); diff --git a/src/tests/ecore_wl2/ecore_wl2_test_input.c b/src/tests/ecore_wl2/ecore_wl2_test_input.c new file mode 100644 index 0000000000..074455a394 --- /dev/null +++ b/src/tests/ecore_wl2/ecore_wl2_test_input.c @@ -0,0 +1,53 @@ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include +#include +#include +#include +#include + +#include "ecore_wl2_suite.h" + +static Ecore_Wl2_Display * +_display_connect(void) +{ + Ecore_Wl2_Display *disp; + + disp = ecore_wl2_display_connect(NULL); + return disp; +} + +EFL_START_TEST(wl2_input_seat_get) +{ + Ecore_Wl2_Display *disp; + Ecore_Wl2_Input *input; + Eina_Iterator *itr; + + disp = _display_connect(); + ck_assert(disp != NULL); + + itr = ecore_wl2_display_inputs_get(disp); + ck_assert(itr != NULL); + + EINA_ITERATOR_FOREACH(itr, input) + { + struct wl_seat *seat; + + seat = ecore_wl2_input_seat_get(input); + ck_assert(seat != NULL); + } + + eina_iterator_free(itr); +} +EFL_END_TEST + +void +ecore_wl2_test_input(TCase *tc) +{ + if (getenv("WAYLAND_DISPLAY")) + { + tcase_add_test(tc, wl2_input_seat_get); + } +} diff --git a/src/tests/ecore_wl2/meson.build b/src/tests/ecore_wl2/meson.build index 54fdeeec76..eb1a13db6a 100644 --- a/src/tests/ecore_wl2/meson.build +++ b/src/tests/ecore_wl2/meson.build @@ -4,7 +4,8 @@ ecore_wl2_suite_src = [ 'ecore_wl2_tests_helpers.h', 'ecore_wl2_test_ecore_wl2.c', 'ecore_wl2_test_display.c', - 'ecore_wl2_test_window.c' + 'ecore_wl2_test_window.c', + 'ecore_wl2_test_input.c' ] ecore_wl2_suite = executable('ecore_wl2_suite',