diff options
author | Mike Blumenkrantz <zmike@samsung.com> | 2020-01-09 10:05:32 -0500 |
---|---|---|
committer | Marcel Hollerbach <mail@marcel-hollerbach.de> | 2020-01-30 17:06:51 +0100 |
commit | 9809cec2210963f6584bed9664929f07748ae2b3 (patch) | |
tree | b85ecc5f8e7795e524bc0d263498f724e29d2234 | |
parent | 635d998f67d6216b9cde1c60094bb07672256626 (diff) | |
download | efl-9809cec2210963f6584bed9664929f07748ae2b3.tar.gz |
tests/gesture: add longpress tests
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11084
-rw-r--r-- | src/tests/elementary/efl_ui_test_gesture.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/tests/elementary/efl_ui_test_gesture.c b/src/tests/elementary/efl_ui_test_gesture.c index 1697a53401..c0d48581b0 100644 --- a/src/tests/elementary/efl_ui_test_gesture.c +++ b/src/tests/elementary/efl_ui_test_gesture.c @@ -4,6 +4,9 @@ #include <Efl_Ui.h> #include "efl_ui_suite.h" +/* mouse feeding */ +#include <Evas_Legacy.h> +#include <evas_canvas_eo.h> /* typedef enum @@ -126,6 +129,73 @@ EFL_START_TEST(test_efl_ui_gesture_taps) } EFL_END_TEST +EFL_START_TEST(test_efl_ui_gesture_long_tap) +{ + Eo *rect = setup(); + double timeout = 1.2; + Eina_Value *val; + Eo *e = efl_provider_find(rect, EVAS_CANVAS_CLASS); + + val = efl_gesture_manager_config_get(efl_provider_find(rect, EFL_CANVAS_GESTURE_MANAGER_CLASS), "glayer_long_tap_start_timeout"); + eina_value_get(val, &timeout); + + /* press */ + press_object(rect); + CHECK_ALL(TAP, 1, 0, 0, 0); + CHECK_ALL(LONG_TAP, 1, 0, 0, 0); + CHECK_ALL(DOUBLE_TAP, 1, 0, 0, 0); + CHECK_ALL(TRIPLE_TAP, 1, 0, 0, 0); + CHECK_ZERO(MOMENTUM); + CHECK_ZERO(FLICK); + CHECK_ZERO(ZOOM); + + RESET; + + wait_timer(timeout + 0.01); + + /* verify longpress */ + CHECK_ALL(TAP, 0, 0, 0, 1); + CHECK_ALL(LONG_TAP, 0, 1, 0, 0); + CHECK_ALL(DOUBLE_TAP, 0, 0, 0, 1); + CHECK_ALL(TRIPLE_TAP, 0, 0, 0, 1); + CHECK_ZERO(MOMENTUM); + CHECK_ZERO(FLICK); + CHECK_ZERO(ZOOM); + + RESET; + evas_event_feed_mouse_up(e, 1, 0, 2, NULL); + + CHECK_ZERO(TAP); + CHECK_ALL(LONG_TAP, 0, 0, 1, 0); + CHECK_ZERO(DOUBLE_TAP); + CHECK_ZERO(TRIPLE_TAP); + CHECK_ZERO(MOMENTUM); + CHECK_ZERO(FLICK); + CHECK_ZERO(ZOOM); + + RESET; + + press_object_at(rect, 0, 0); + RESET; + + /* move off-canvas */ + evas_event_feed_mouse_move(e, -1, 0, 2, NULL); + wait_timer(timeout + 0.01); + + /* verify longpress */ + CHECK_ALL(TAP, 0, 1, 0, 0); + CHECK_ALL(LONG_TAP, 0, 1, 0, 0); + CHECK_ALL(DOUBLE_TAP, 0, 0, 0, 1); + CHECK_ALL(TRIPLE_TAP, 0, 0, 0, 1); + CHECK_ALL(MOMENTUM, 1, 0, 0, 0); + CHECK_ALL(FLICK, 1, 0, 0, 0); + CHECK_ZERO(ZOOM); + + RESET; + evas_event_feed_mouse_up(e, 1, 0, 3, NULL); +} +EFL_END_TEST + EFL_START_TEST(test_efl_ui_gesture_flick) { int moves, i; @@ -309,5 +379,6 @@ EFL_END_TEST void efl_ui_test_gesture(TCase *tc) { tcase_add_test(tc, test_efl_ui_gesture_taps); + tcase_add_test(tc, test_efl_ui_gesture_long_tap); tcase_add_test(tc, test_efl_ui_gesture_flick); } |