0017_input_sync: add test cases generating mouse/touch events 68/294768/1
authorduna.oh <duna.oh@samsung.com>
Mon, 26 Jun 2023 08:41:43 +0000 (17:41 +0900)
committerduna.oh <duna.oh@samsung.com>
Mon, 26 Jun 2023 08:41:43 +0000 (17:41 +0900)
Change-Id: I3cf8fe63ae2b927436f2bcd8674ce003d637cb1e

src/testcase/0017_input_sync.cpp

index 8750877396e6446590f77f0dfa468d940713c127..0433b984e691d88866eacd91963465fad89ee16c 100644 (file)
@@ -81,3 +81,90 @@ TEST_F(etTestInputSync, keygrab_nowin_excl)
 
    ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
 }
+
+TEST_F(etTestInputSync, mouse_wheel_up)
+{
+   int ret = EFL_UTIL_ERROR_NONE;
+   auto inputgen_h = std::make_shared<etInputGenHandler>(EFL_UTIL_INPUT_DEVTYPE_POINTER, true);
+   ret = inputgen_h->generateMouseWheelUp();
+   ASSERT_TRUE(ret);
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
+TEST_F(etTestInputSync, mouse_wheel_down)
+{
+   int ret = EFL_UTIL_ERROR_NONE;
+   auto inputgen_h = std::make_shared<etInputGenHandler>(EFL_UTIL_INPUT_DEVTYPE_POINTER, true);
+   ret = inputgen_h->generateMouseWheelDown();
+   ASSERT_TRUE(ret);
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
+TEST_F(etTestInputSync, gesture_tap22)
+{
+   int ret = EFL_UTIL_ERROR_NONE;
+   auto inputgen_h = std::make_shared<etInputGenHandler>(EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN, true);
+   GestureHandler gesture_h = std::make_shared<etGestureHandler>();
+   efl_util_gesture_data tap_d;
+
+   tap_d = gesture_h->createTapData(2, 2);
+   ASSERT_TRUE(tap_d != NULL) << "failed to generate tap grab data";
+
+   ret = gesture_h->grabGesture(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to grab tap gesture: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   etRunner::get().ev.gesture.tap.fingers = 2;
+   etRunner::get().ev.gesture.tap.repeats = 2;
+   etRunner::get().generateTapGesture(inputgen_h);
+   ev_result = etRunner::get().waitEvent(NULL, E_TC_EVENT_TYPE_GESTURE_TAP);
+   ASSERT_NE(ev_result, nullptr);
+
+   etRunner::get().ev.gesture.tap.fingers = 0;
+   etRunner::get().ev.gesture.tap.repeats = 0;
+
+   ret = gesture_h->ungrabGesture(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to ungrab tap gesture: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   gesture_h->freeTapData(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to free tap grab data: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
+TEST_F(etTestInputSync, gesture_tap23)
+{
+   int ret = EFL_UTIL_ERROR_NONE;
+   auto inputgen_h = std::make_shared<etInputGenHandler>(EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN, true);
+   GestureHandler gesture_h = std::make_shared<etGestureHandler>();;
+   efl_util_gesture_data tap_d;
+
+   tap_d = gesture_h->createTapData(2, 3);
+   ASSERT_TRUE(tap_d != NULL) << "failed to generate tap grab data";
+
+   ret = gesture_h->grabGesture(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to grab tap gesture: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   etRunner::get().ev.gesture.tap.fingers = 2;
+   etRunner::get().ev.gesture.tap.repeats = 3;
+
+   etRunner::get().generateTapGesture(inputgen_h);
+   ev_result = etRunner::get().waitEvent(NULL, E_TC_EVENT_TYPE_GESTURE_TAP);
+   ASSERT_NE(ev_result, nullptr);
+
+   etRunner::get().ev.gesture.tap.fingers = 0;
+   etRunner::get().ev.gesture.tap.repeats = 0;
+
+   ret = gesture_h->ungrabGesture(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to ungrab tap gesture: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   gesture_h->freeTapData(tap_d);
+   ASSERT_TRUE(ret == EFL_UTIL_ERROR_NONE) << "failed to free tap grab data: (ret: "
+     << EFL_UTIL_RETURN_TO_STRING(ret) << ")";
+
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
\ No newline at end of file