From: Junkyeong Kim Date: Tue, 25 Mar 2025 11:39:46 +0000 (+0900) Subject: 0009_input: Add gesture grab mode set test X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=eaae983b794af06414633125aa661ca06aad6ac4;p=platform%2Fcore%2Fuifw%2Fe-tizen-testcase.git 0009_input: Add gesture grab mode set test Change-Id: Iff3051d05004427eaaef59bd4002ab6af88bd37d Signed-off-by: Junkyeong Kim --- diff --git a/src/e_test_efl_util.cpp b/src/e_test_efl_util.cpp index cd7ddb8..c203929 100644 --- a/src/e_test_efl_util.cpp +++ b/src/e_test_efl_util.cpp @@ -419,6 +419,17 @@ etGestureHandler::freeEdgeDragData(efl_util_gesture_data data) return efl_util_gesture_edge_drag_free(handler, data); } +int +etGestureHandler::setGestureGrabMode(efl_util_gesture_data data, efl_util_gesture_grab_mode_e mode) +{ + if (handler == nullptr) + return EFL_UTIL_ERROR_INVALID_PARAMETER; + if (mode == EFL_UTIL_GESTURE_GRAB_MODE_NONE || mode > EFL_UTIL_GESTURE_GRAB_MODE_SHARED) + return EFL_UTIL_ERROR_INVALID_PARAMETER; + + return efl_util_gesture_grab_mode_set(handler, data, mode); +} + int etGestureHandler::grabGesture(efl_util_gesture_data data) { diff --git a/src/e_test_efl_util.h b/src/e_test_efl_util.h index 9c5d25b..02eeddc 100644 --- a/src/e_test_efl_util.h +++ b/src/e_test_efl_util.h @@ -63,6 +63,7 @@ class etGestureHandler int freeEdgeSwipeData(efl_util_gesture_data data); efl_util_gesture_data createEdgeDragData(unsigned int fingers, efl_util_gesture_edge_e edge); int freeEdgeDragData(efl_util_gesture_data data); + int setGestureGrabMode(efl_util_gesture_data data, efl_util_gesture_grab_mode_e mode); int grabGesture(efl_util_gesture_data data); int ungrabGesture(efl_util_gesture_data data); @@ -72,4 +73,4 @@ class etGestureHandler typedef std::shared_ptr GestureHandler; #endif -#endif // end of __ET_TESTCASE_EFL_UTIL__ \ No newline at end of file +#endif // end of __ET_TESTCASE_EFL_UTIL__ diff --git a/src/testcase/0009_input.cpp b/src/testcase/0009_input.cpp index d36a443..989831c 100644 --- a/src/testcase/0009_input.cpp +++ b/src/testcase/0009_input.cpp @@ -22,8 +22,8 @@ public: key_name = NULL; }; #ifndef DISABLE_GESTURE_TESTS - void test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge); - void test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge); + void test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge, bool shared); + void test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge, bool shared); #endif protected: @@ -1848,7 +1848,7 @@ TEST_F(etTestInput, gesture_tap23) } void -etTestInput::test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge) +etTestInput::test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge, bool shared) { int ret = EFL_UTIL_ERROR_NONE; auto inputgen_h = std::make_shared(EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN, true); @@ -1858,6 +1858,9 @@ etTestInput::test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge) edge_swipe_d = gesture_h->createEdgeSwipeData(fingers, edge); ASSERT_TRUE(edge_swipe_d != NULL) << "failed to generate edge swipe grab data"; + if (shared) + gesture_h->setGestureGrabMode(edge_swipe_d, EFL_UTIL_GESTURE_GRAB_MODE_SHARED); + ret = gesture_h->grabGesture(edge_swipe_d); ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to grab edge swipe gesture: (ret: " << EFL_UTIL_RETURN_TO_STRING(ret) << ")"; @@ -1885,62 +1888,90 @@ etTestInput::test_gesture_edge_swipe(int fingers, efl_util_gesture_edge_e edge) TEST_F(etTestInput, gesture_edge_swipe11) { - test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_TOP); + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_TOP, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe12) { - test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_RIGHT); + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_RIGHT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe13) { - test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_BOTTOM); + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_BOTTOM, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe14) { - test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_LEFT); + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_LEFT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe21) { - test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_TOP); + test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_TOP, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe22) { - test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_RIGHT); + test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_RIGHT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe23) { - test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_BOTTOM); + test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_BOTTOM, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_swipe24) { - test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_LEFT); + test_gesture_edge_swipe(2, EFL_UTIL_GESTURE_EDGE_LEFT, false); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_swipe31) +{ + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_TOP, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_swipe32) +{ + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_RIGHT, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_swipe33) +{ + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_BOTTOM, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_swipe34) +{ + test_gesture_edge_swipe(1, EFL_UTIL_GESTURE_EDGE_LEFT, true); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } void -etTestInput::test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge) +etTestInput::test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge, bool shared) { int ret = EFL_UTIL_ERROR_NONE; auto inputgen_h = std::make_shared(EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN, true); @@ -1950,6 +1981,9 @@ etTestInput::test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge) edge_drag_d = gesture_h->createEdgeDragData(fingers, edge); ASSERT_TRUE(edge_drag_d != NULL) << "failed to generate edge drag grab data"; + if (shared) + gesture_h->setGestureGrabMode(edge_drag_d, EFL_UTIL_GESTURE_GRAB_MODE_SHARED); + ret = gesture_h->grabGesture(edge_drag_d); ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to grab edge drag gesture: (ret: " << EFL_UTIL_RETURN_TO_STRING(ret) << ")"; @@ -1975,56 +2009,84 @@ etTestInput::test_gesture_edge_drag(int fingers, efl_util_gesture_edge_e edge) TEST_F(etTestInput, gesture_edge_drag11) { - test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_TOP); + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_TOP, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag12) { - test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_RIGHT); + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_RIGHT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag13) { - test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_BOTTOM); + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_BOTTOM, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag14) { - test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_LEFT); + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_LEFT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag21) { - test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_TOP); + test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_TOP, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag22) { - test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_RIGHT); + test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_RIGHT, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag23) { - test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_BOTTOM); + test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_BOTTOM, false); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); } TEST_F(etTestInput, gesture_edge_drag24) { - test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_LEFT); + test_gesture_edge_drag(2, EFL_UTIL_GESTURE_EDGE_LEFT, false); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_drag31) +{ + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_TOP, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_drag32) +{ + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_RIGHT, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_drag33) +{ + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_BOTTOM, true); + + ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); +} + +TEST_F(etTestInput, gesture_edge_drag34) +{ + test_gesture_edge_drag(1, EFL_UTIL_GESTURE_EDGE_LEFT, true); ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE); }