• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include <cstdio>
17 #include <gtest/gtest.h>
18 
19 #include "input_event_handler.h"
20 #include "touch_gesture_adapter.h"
21 #include "mmi_log.h"
22 
23 #undef MMI_LOG_TAG
24 #define MMI_LOG_TAG "TouchGestureAdapterTest"
25 
26 namespace OHOS {
27 namespace MMI {
28 namespace {
29 using namespace testing::ext;
30 }
31 class TouchGestureAdapterTest : public testing::Test {
32 public:
SetUpTestCase(void)33     static void SetUpTestCase(void) {}
TearDownTestCase(void)34     static void TearDownTestCase(void) {}
SetUp()35     void SetUp() {}
TearDown()36     void TearDown() {}
37 };
38 
39 /**
40  * @tc.name: TouchGestureAdapterTest_SetGestureEnable_001
41  * @tc.desc: Test the funcation SetGestureEnable
42  * @tc.type: FUNC
43  * @tc.require:
44  */
45 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_SetGestureEnable_001, TestSize.Level1)
46 {
47     CALL_TEST_DEBUG;
48     TouchGestureType adapterType = TOUCH_GESTURE_TYPE_SWIPE;
49     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
50     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
51     touchGestureAdapter->Init();
52     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
53     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(false, adapterType, 0));
54 }
55 
56 /**
57  * @tc.name: TouchGestureAdapterTest_process_001
58  * @tc.desc: Test the funcation process
59  * @tc.type: FUNC
60  * @tc.require:
61  */
62 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_process_001, TestSize.Level1)
63 {
64     CALL_TEST_DEBUG;
65     TouchGestureType adapterType = 5;
66     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
67     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
68     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
69     touchGestureAdapter->shouldDeliverToNext_ = true;
70     touchGestureAdapter->nextAdapter_ = nullptr;
71     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(event));
72     touchGestureAdapter->shouldDeliverToNext_ = true;
73     touchGestureAdapter->nextAdapter_ = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
74     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(event));
75     touchGestureAdapter->shouldDeliverToNext_ = false;
76     touchGestureAdapter->nextAdapter_ = nullptr;
77     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(event));
78     touchGestureAdapter->shouldDeliverToNext_ = false;
79     touchGestureAdapter->nextAdapter_ = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
80     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(event));
81 }
82 
83 /**
84  * @tc.name: TouchGestureAdapterTest_process_002
85  * @tc.desc: Test TouchGestureAdapter::process
86  * @tc.type: FUNC
87  * @tc.require:
88  */
89 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_process_002, TestSize.Level1)
90 {
91     CALL_TEST_DEBUG;
92     auto nextAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_PINCH, nullptr);
93     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nextAdapter);
94     auto pointerEvent = PointerEvent::Create();
95     ASSERT_NE(pointerEvent, nullptr);
96     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
97     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(pointerEvent));
98 }
99 
100 /**
101  * @tc.name: TouchGestureAdapterTest_process_003
102  * @tc.desc: Test TouchGestureAdapter::process
103  * @tc.type: FUNC
104  * @tc.require:
105  */
106 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_process_003, TestSize.Level1)
107 {
108     CALL_TEST_DEBUG;
109     auto nextAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_PINCH, nullptr);
110     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nextAdapter);
111     auto pointerEvent = PointerEvent::Create();
112     ASSERT_NE(pointerEvent, nullptr);
113     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_UNKNOWN);
114     touchGestureAdapter->shouldDeliverToNext_ = false;
115     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(pointerEvent));
116 }
117 
118 /**
119  * @tc.name: TouchGestureAdapterTest_process_004
120  * @tc.desc: Test TouchGestureAdapter::process
121  * @tc.type: FUNC
122  * @tc.require:
123  */
124 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_process_004, TestSize.Level1)
125 {
126     CALL_TEST_DEBUG;
127     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
128     auto pointerEvent = PointerEvent::Create();
129     ASSERT_NE(pointerEvent, nullptr);
130     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
131     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->process(pointerEvent));
132 }
133 
134 /**
135  * @tc.name: TouchGestureAdapterTest_Init_001
136  * @tc.desc: Test the funcation Init
137  * @tc.type: FUNC
138  * @tc.require:
139  */
140 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_Init_001, TestSize.Level1)
141 {
142     CALL_TEST_DEBUG;
143     TouchGestureType adapterType = 5;
144     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
145     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
146     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->Init());
147     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
148     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
149     touchGestureAdapter->nextAdapter_ = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
150     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->Init());
151     touchGestureAdapter->nextAdapter_ = nullptr;
152     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->Init());
153 }
154 
155 /**
156  * @tc.name: TouchGestureAdapterTest_GetGestureFactory_001
157  * @tc.desc: Test the funcation GetGestureFactory
158  * @tc.type: FUNC
159  * @tc.require:
160  */
161 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_GetGestureFactory_001, TestSize.Level1)
162 {
163     CALL_TEST_DEBUG;
164     TouchGestureType adapterType = 5;
165     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
166     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
167     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->GetGestureFactory());
168 }
169 
170 /**
171  * @tc.name: TouchGestureAdapterTest_OnTouchEvent_001
172  * @tc.desc: Test the funcation OnTouchEvent
173  * @tc.type: FUNC
174  * @tc.require:
175  */
176 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnTouchEvent_001, TestSize.Level1)
177 {
178     CALL_TEST_DEBUG;
179     TouchGestureType adapterType = 5;
180     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
181     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
182     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
183     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
184     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
185     event->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHPAD);
186     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
187     event->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
188     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
189     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
190     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
191     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
192     event->SetPointerAction(PointerEvent::POINTER_ACTION_CANCEL);
193     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
194     touchGestureAdapter->gestureStarted_ = false;
195     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
196     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
197     touchGestureAdapter->gestureStarted_ = false;
198     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
199     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
200     touchGestureAdapter->gestureStarted_ = true;
201     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
202     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
203     touchGestureAdapter->gestureStarted_ = true;
204     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
205     touchGestureAdapter->gestureType_ = TOUCH_GESTURE_TYPE_SWIPE;
206     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
207     touchGestureAdapter->gestureType_ = TOUCH_GESTURE_TYPE_PINCH;
208     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
209     touchGestureAdapter->gestureType_ = 2;
210     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
211     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::SWIPE;
212     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
213 }
214 
215 /**
216  * @tc.name: TouchGestureAdapterTest_OnTouchEvent_002
217  * @tc.desc: Test the funcation OnTouchEvent
218  * @tc.type: FUNC
219  * @tc.require:
220  */
221 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnTouchEvent_002, TestSize.Level1)
222 {
223     CALL_TEST_DEBUG;
224     TouchGestureType adapterType = 5;
225     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
226     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
227     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
228     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
229     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
230     event->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
231     touchGestureAdapter->gestureStarted_ = true;
232     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
233     touchGestureAdapter->gestureType_ = 2;
234     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::IDLE;
235     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
236     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
237     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
238     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::SWIPE;
239     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
240     event->SetPointerAction(PointerEvent::POINTER_ACTION_MOVE);
241     touchGestureAdapter->gestureStarted_ = true;
242     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
243     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
244     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
245     touchGestureAdapter->gestureStarted_ = false;
246     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
247     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
248     event->SetPointerAction(PointerEvent::POINTER_ACTION_MOVE);
249     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
250 }
251 
252 /**
253  * @tc.name: TouchGestureAdapterTest_OnSwipeGesture_001
254  * @tc.desc: Test the funcation OnSwipeGesture
255  * @tc.type: FUNC
256  * @tc.require:
257  */
258 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnSwipeGesture_001, TestSize.Level1)
259 {
260     CALL_TEST_DEBUG;
261     TouchGestureType adapterType = 5;
262     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
263     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
264     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
265     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
266     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
267     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::PINCH;
268     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnSwipeGesture(event));
269     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::IDLE;
270     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnSwipeGesture(event));
271 }
272 
273 /**
274  * @tc.name: TouchGestureAdapterTest_OnPinchGesture_001
275  * @tc.desc: Test the funcation OnPinchGesture
276  * @tc.type: FUNC
277  * @tc.require:
278  */
279 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnPinchGesture_001, TestSize.Level1)
280 {
281     CALL_TEST_DEBUG;
282     TouchGestureType adapterType = 5;
283     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
284     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
285     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
286     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
287     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
288     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::SWIPE;
289     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnPinchGesture(event));
290     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::IDLE;
291     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnPinchGesture(event));
292 }
293 
294 /**
295  * @tc.name: TouchGestureAdapterTest_OnGestureEvent_001
296  * @tc.desc: Test the funcation OnGestureEvent
297  * @tc.type: FUNC
298  * @tc.require:
299  */
300 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnGestureEvent_001, TestSize.Level1)
301 {
302     CALL_TEST_DEBUG;
303     TouchGestureType adapterType = 5;
304     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
305     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
306     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
307     InputHandler->eventMonitorHandler_ = std::make_shared<EventMonitorHandler>();
308     GestureMode mode = GestureMode::ACTION_SWIPE_DOWN;
309     bool ret = touchGestureAdapter->OnGestureEvent(event, mode);
310     ASSERT_EQ(ret, true);
311     mode = GestureMode::ACTION_SWIPE_UP;
312     ret = touchGestureAdapter->OnGestureEvent(event, mode);
313     ASSERT_EQ(ret, true);
314     mode = GestureMode::ACTION_SWIPE_LEFT;
315     ret = touchGestureAdapter->OnGestureEvent(event, mode);
316     ASSERT_EQ(ret, true);
317     mode = GestureMode::ACTION_SWIPE_RIGHT;
318     ret = touchGestureAdapter->OnGestureEvent(event, mode);
319     ASSERT_EQ(ret, true);
320     mode = GestureMode::ACTION_PINCH_CLOSED;
321     ret = touchGestureAdapter->OnGestureEvent(event, mode);
322     ASSERT_EQ(ret, true);
323     mode = GestureMode::ACTION_PINCH_OPENED;
324     ret = touchGestureAdapter->OnGestureEvent(event, mode);
325     ASSERT_EQ(ret, true);
326     mode = GestureMode::ACTION_UNKNOWN;
327     ret = touchGestureAdapter->OnGestureEvent(event, mode);
328     ASSERT_EQ(ret, false);
329 }
330 
331 /**
332  * @tc.name: TouchGestureAdapterTest_SetGestureEnable_002
333  * @tc.desc: Test the funcation SetGestureEnable
334  * @tc.type: FUNC
335  * @tc.require:
336  */
337 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_SetGestureEnable_002, TestSize.Level1)
338 {
339     CALL_TEST_DEBUG;
340     TouchGestureType adapterType = TOUCH_GESTURE_TYPE_ALL;
341     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
342     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
343     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
344     adapterType = TOUCH_GESTURE_TYPE_SWIPE;
345     touchGestureAdapter->gestureType_ = TOUCH_GESTURE_TYPE_SWIPE;
346     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
347     adapterType = TOUCH_GESTURE_TYPE_PINCH;
348     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
349     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
350     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
351     adapterType = TOUCH_GESTURE_TYPE_ALL;
352     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
353     adapterType = TOUCH_GESTURE_TYPE_PINCH;
354     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
355     touchGestureAdapter->nextAdapter_ = nullptr;
356     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
357     touchGestureAdapter->nextAdapter_ = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
358     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->SetGestureCondition(true, adapterType, 0));
359 }
360 
361 /**
362  * @tc.name: TouchGestureAdapterTest_OnTouchEvent_003
363  * @tc.desc: Test the funcation OnTouchEvent
364  * @tc.type: FUNC
365  * @tc.require:
366  */
367 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_OnTouchEvent_003, TestSize.Level1)
368 {
369     CALL_TEST_DEBUG;
370     TouchGestureType adapterType = 5;
371     std::shared_ptr<TouchGestureAdapter> nextAdapter = nullptr;
372     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(adapterType, nextAdapter);
373     std::shared_ptr<PointerEvent> event = PointerEvent::Create();
374     std::shared_ptr<OHOS::MMI::TouchGestureDetector::GestureListener> listener = nullptr;
375     touchGestureAdapter->gestureDetector_ = std::make_shared<TouchGestureDetector>(adapterType, listener);
376     event->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
377     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
378     touchGestureAdapter->gestureType_ = 2;
379     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::SWIPE;
380     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
381     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
382     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
383     event->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
384     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::IDLE;
385     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
386     event->SetPointerAction(PointerEvent::POINTER_ACTION_MOVE);
387     touchGestureAdapter->gestureStarted_ = true;
388     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::SWIPE;
389     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
390     touchGestureAdapter->state_ = TouchGestureAdapter::GestureState::IDLE;
391     event->SetPointerAction(PointerEvent::POINTER_ACTION_UP);
392     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->OnTouchEvent(event));
393 }
394 
395 /**
396  * @tc.name: TouchGestureAdapterTest_LogTouchEvent_01
397  * @tc.desc: Test TouchGestureAdapter::LogTouchEvent
398  * @tc.type: FUNC
399  * @tc.require:
400  */
401 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_LogTouchEvent_01, TestSize.Level1)
402 {
403     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
404     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->LogTouchEvent(nullptr));
405 }
406 
407 /**
408  * @tc.name: TouchGestureAdapterTest_LogTouchEvent_02
409  * @tc.desc: Test TouchGestureAdapter::LogTouchEvent
410  * @tc.type: FUNC
411  * @tc.require:
412  */
413 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_LogTouchEvent_02, TestSize.Level1)
414 {
415     auto pointerEvent = PointerEvent::Create();
416     ASSERT_NE(pointerEvent, nullptr);
417     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_MOUSE);
418     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
419     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->LogTouchEvent(pointerEvent));
420 }
421 
422 /**
423  * @tc.name: TouchGestureAdapterTest_LogTouchEvent_03
424  * @tc.desc: Test TouchGestureAdapter::LogTouchEvent
425  * @tc.type: FUNC
426  * @tc.require:
427  */
428 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_LogTouchEvent_03, TestSize.Level1)
429 {
430     auto pointerEvent = PointerEvent::Create();
431     ASSERT_NE(pointerEvent, nullptr);
432     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
433     pointerEvent->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
434     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
435     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->LogTouchEvent(pointerEvent));
436 }
437 
438 /**
439  * @tc.name: TouchGestureAdapterTest_LogTouchEvent_04
440  * @tc.desc: Test TouchGestureAdapter::LogTouchEvent
441  * @tc.type: FUNC
442  * @tc.require:
443  */
444 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_LogTouchEvent_04, TestSize.Level1)
445 {
446     auto pointerEvent = PointerEvent::Create();
447     ASSERT_NE(pointerEvent, nullptr);
448     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
449     pointerEvent->SetPointerAction(PointerEvent::POINTER_ACTION_UNKNOWN);
450     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
451     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->LogTouchEvent(pointerEvent));
452 }
453 
454 /**
455  * @tc.name: TouchGestureAdapterTest_LogTouchEvent_05
456  * @tc.desc: Test TouchGestureAdapter::LogTouchEvent
457  * @tc.type: FUNC
458  * @tc.require:
459  */
460 HWTEST_F(TouchGestureAdapterTest, TouchGestureAdapterTest_LogTouchEvent_05, TestSize.Level1)
461 {
462     auto pointerEvent = PointerEvent::Create();
463     ASSERT_NE(pointerEvent, nullptr);
464     pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN);
465     pointerEvent->SetPointerAction(PointerEvent::POINTER_ACTION_DOWN);
466     int32_t pointerId = 1;
467     PointerEvent::PointerItem pointerItem {};
468     pointerItem.SetPointerId(pointerId);
469     pointerEvent->AddPointerItem(pointerItem);
470     pointerEvent->SetPointerId(pointerId);
471     auto touchGestureAdapter = std::make_shared<TouchGestureAdapter>(TOUCH_GESTURE_TYPE_SWIPE, nullptr);
472     ASSERT_NO_FATAL_FAILURE(touchGestureAdapter->LogTouchEvent(pointerEvent));
473 }
474 } // namespace MMI
475 } // namespace OHOS