1 /*
2  * Copyright (C) 2022-2023 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 <gtest/gtest.h>
17 #include "accessibility_ability_ut_helper.h"
18 #include "accessibility_ui_test_ability_impl.h"
19 #include "mock_accessible_ability_listener.h"
20 
21 using namespace testing;
22 using namespace testing::ext;
23 
24 namespace OHOS {
25 namespace Accessibility {
26 namespace {
27     const std::string TEST = "test";
28     constexpr int32_t FOCUS_TYPE = 1;
29     constexpr int32_t WINDOW_ID = 1;
30     constexpr uint64_t DISPLAY_ID = 1;
31     constexpr int32_t CACHE_MODE = 2;
32 } // namespace
33 
34 class MultiFingerGestureHandlerTest : public ::testing::Test {
35 public:
MultiFingerGestureHandlerTest()36     MultiFingerGestureHandlerTest()
37     {}
~MultiFingerGestureHandlerTest()38     ~MultiFingerGestureHandlerTest()
39     {}
40 
41     std::shared_ptr<MultiFingerGestureHandler> instance_ = nullptr;
SetUpTestCase()42     static void SetUpTestCase()
43     {
44         GTEST_LOG_(INFO) << "MultiFingerGestureHandlerTest Start";
45     }
TearDownTestCase()46     static void TearDownTestCase()
47     {
48         GTEST_LOG_(INFO) << "MultiFingerGestureHandlerTest End";
49     }
SetUp()50     void SetUp()
51     {
52         GTEST_LOG_(INFO) << "MultiFingerGestureHandlerTest SetUp()";
53         instance_ = std::make_shared<MultiFingerGestureHandler>();
54     }
TearDown()55     void TearDown()
56     {
57         GTEST_LOG_(INFO) << "MultiFingerGestureHandlerTest TearDown()";
58         instance_ = nullptr;
59     }
60 };
61 
62 /**
63  * @tc.number: IsTapGesture_001
64  * @tc.name: IsTapGesture
65  * @tc.desc: Test function IsTapGesture
66  */
HWTEST_F(MultiFingerGestureHandlerTest, IsTapGesture_001, TestSize.Level1)67 HWTEST_F(MultiFingerGestureHandlerTest, IsTapGesture_001, TestSize.Level1)
68 {
69     GTEST_LOG_(INFO) << "IsTapGesture_001 start";
70     EXPECT_TRUE(AccessibilityUITestAbility::IsTapGesture());
71     GTEST_LOG_(INFO) << "IsTapGesture_001 end";
72 }
73 
74 /**
75  * @tc.number: ProcessMultiFingerGestureTypeEvent_001
76  * @tc.name: ProcessMultiFingerGestureTypeEvent
77  * @tc.desc: Test function ProcessMultiFingerGestureTypeEvent(listener is null)
78  */
HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_001, TestSize.Level1)79 HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_001, TestSize.Level1)
80 {
81     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_001 start";
82 
83     if (!instance_) {
84         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
85         return;
86     }
87     std::shared_ptr<AccessibleAbilityListener> listener = nullptr;
88     EXPECT_EQ(instance_->ProcessMultiFingerGestureTypeEvent(listener), RET_ERR_INVALID_PARAM);
89 
90     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_001 end";
91 }
92 
93 /**
94  * @tc.number: ProcessMultiFingerGestureTypeEvent_002
95  * @tc.name: ProcessMultiFingerGestureTypeEvent
96  * @tc.desc: Test function ProcessMultiFingerGestureTypeEvent(AccessibleAbilityClient is null)
97  */
HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_002, TestSize.Level1)98 HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_002, TestSize.Level1)
99 {
100     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_002 start";
101 
102     if (!instance_) {
103         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
104         return;
105     }
106     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
107     std::shared_ptr<AccessibleAbilityListener> listener = std::make_shared<MockAccessibleAbilityListener>();
108     EXPECT_EQ(instance_->ProcessMultiFingerGestureTypeEvent(listener), RET_ERR_NULLPTR);
109     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
110 
111     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_002 end";
112 }
113 
114 /**
115  * @tc.number: ProcessMultiFingerGestureTypeEvent_003
116  * @tc.name: ProcessMultiFingerGestureTypeEvent
117  * @tc.desc: Test function ProcessMultiFingerGestureTypeEvent(AccessibleAbilityClient is not null)
118  */
HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_003, TestSize.Level1)119 HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureTypeEvent_003, TestSize.Level1)
120 {
121     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_003 start";
122 
123     if (!instance_) {
124         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
125         return;
126     }
127     std::shared_ptr<AccessibleAbilityListener> listener = std::make_shared<MockAccessibleAbilityListener>();
128     EXPECT_EQ(instance_->ProcessMultiFingerGestureTypeEvent(listener), RET_OK);
129 
130     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureTypeEvent_003 end";
131 }
132 
133 /**
134  * @tc.number: ProcessMultiFingerGestureEvent_001
135  * @tc.name: ProcessMultiFingerGestureEvent
136  * @tc.desc: Test function ProcessMultiFingerGestureEvent
137  */
HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureEvent_001, TestSize.Level1)138 HWTEST_F(MultiFingerGestureHandlerTest, ProcessMultiFingerGestureEvent_001, TestSize.Level1)
139 {
140     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureEvent_001 start";
141 
142     if (!instance_) {
143         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
144         return;
145     }
146     EXPECT_EQ(RET_OK, instance_->ProcessMultiFingerGestureEvent());
147 
148     GTEST_LOG_(INFO) << "ProcessMultiFingerGestureEvent_001 end";
149 }
150 
151 /**
152  * @tc.number: ProcessEvent_001
153  * @tc.name: ProcessEvent
154  * @tc.desc: Test function ProcessEvent
155  */
HWTEST_F(MultiFingerGestureHandlerTest, ProcessEvent_001, TestSize.Level1)156 HWTEST_F(MultiFingerGestureHandlerTest, ProcessEvent_001, TestSize.Level1)
157 {
158     GTEST_LOG_(INFO) << "ProcessEvent_001 start";
159 
160     if (!instance_) {
161         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
162         return;
163     }
164     EXPECT_EQ(instance_->ProcessEvent(), RET_OK);
165 
166     GTEST_LOG_(INFO) << "ProcessEvent_001 end";
167 }
168 
169 /**
170  * @tc.number: AccessibilityMultiTapGestureRecognizer_001
171  * @tc.name: AccessibilityMultiTapGestureRecognizer
172  * @tc.desc: Test function AccessibilityMultiTapGestureRecognizer(AccessibleAbilityClient is null)
173  */
HWTEST_F(MultiFingerGestureHandlerTest, AccessibilityMultiTapGestureRecognizer_001, TestSize.Level1)174 HWTEST_F(MultiFingerGestureHandlerTest, AccessibilityMultiTapGestureRecognizer_001, TestSize.Level1)
175 {
176     GTEST_LOG_(INFO) << "AccessibilityMultiTapGestureRecognizer_001 start";
177 
178     if (!instance_) {
179         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
180         return;
181     }
182     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
183     AccessibilityElementInfo elementInfo {};
184     EXPECT_EQ(instance_->AccessibilityMultiTapGestureRecognizer(FOCUS_TYPE, elementInfo), RET_ERR_NULLPTR);
185     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
186 
187     GTEST_LOG_(INFO) << "AccessibilityMultiTapGestureRecognizer_001 end";
188 }
189 
190 /**
191  * @tc.number: AccessibilityMultiTapGestureRecognizer_002
192  * @tc.name: AccessibilityMultiTapGestureRecognizer
193  * @tc.desc: Test function AccessibilityMultiTapGestureRecognizer(AccessibleAbilityClient is not null)
194  */
HWTEST_F(MultiFingerGestureHandlerTest, AccessibilityMultiTapGestureRecognizer_002, TestSize.Level1)195 HWTEST_F(MultiFingerGestureHandlerTest, AccessibilityMultiTapGestureRecognizer_002, TestSize.Level1)
196 {
197     GTEST_LOG_(INFO) << "AccessibilityMultiTapGestureRecognizer_002 start";
198 
199     if (!instance_) {
200         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
201         return;
202     }
203     AccessibilityElementInfo elementInfo {};
204     EXPECT_EQ(instance_->AccessibilityMultiTapGestureRecognizer(FOCUS_TYPE, elementInfo), RET_OK);
205 
206     GTEST_LOG_(INFO) << "AccessibilityMultiTapGestureRecognizer_002 end";
207 }
208 
209 /**
210  * @tc.number: CancelTwoFingerEvent_001
211  * @tc.name: CancelTwoFingerEvent
212  * @tc.desc: Test function CancelTwoFingerEvent(AccessibleAbilityClient is null)
213  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelTwoFingerEvent_001, TestSize.Level1)214 HWTEST_F(MultiFingerGestureHandlerTest, CancelTwoFingerEvent_001, TestSize.Level1)
215 {
216     GTEST_LOG_(INFO) << "CancelTwoFingerEvent_001 start";
217 
218     if (!instance_) {
219         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
220         return;
221     }
222     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
223     AccessibilityElementInfo sourceInfo {};
224     AccessibilityElementInfo elementInfo {};
225     EXPECT_EQ(instance_->CancelTwoFingerEvent(sourceInfo, FOCUS_TYPE, elementInfo), RET_ERR_NULLPTR);
226     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
227 
228     GTEST_LOG_(INFO) << "CancelTwoFingerEvent_001 end";
229 }
230 
231 /**
232  * @tc.number: CancelTwoFingerEvent_002
233  * @tc.name: CancelTwoFingerEvent
234  * @tc.desc: Test function CancelTwoFingerEvent(AccessibleAbilityClient is not null)
235  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelTwoFingerEvent_002, TestSize.Level1)236 HWTEST_F(MultiFingerGestureHandlerTest, CancelTwoFingerEvent_002, TestSize.Level1)
237 {
238     GTEST_LOG_(INFO) << "CancelTwoFingerEvent_002 start";
239 
240     if (!instance_) {
241         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
242         return;
243     }
244     AccessibilityElementInfo sourceInfo {};
245     AccessibilityElementInfo elementInfo {};
246     EXPECT_EQ(instance_->CancelTwoFingerEvent(sourceInfo, FOCUS_TYPE, elementInfo), RET_OK);
247 
248     GTEST_LOG_(INFO) << "CancelTwoFingerEvent_002 end";
249 }
250 
251 /**
252  * @tc.number: CancelThreeFingerEvent_001
253  * @tc.name: CancelThreeFingerEvent
254  * @tc.desc: Test function CancelThreeFingerEvent(AccessibleAbilityClient is null)
255  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelThreeFingerEvent_001, TestSize.Level1)256 HWTEST_F(MultiFingerGestureHandlerTest, CancelThreeFingerEvent_001, TestSize.Level1)
257 {
258     GTEST_LOG_(INFO) << "CancelThreeFingerEvent_001 start";
259 
260     if (!instance_) {
261         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
262         return;
263     }
264     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
265     AccessibilityElementInfo sourceInfo {};
266     AccessibilityElementInfo elementInfo {};
267     EXPECT_EQ(instance_->CancelThreeFingerEvent(sourceInfo, FOCUS_TYPE, elementInfo), RET_ERR_NULLPTR);
268     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
269 
270     GTEST_LOG_(INFO) << "CancelThreeFingerEvent_001 end";
271 }
272 
273 /**
274  * @tc.number: CancelThreeFingerEvent_002
275  * @tc.name: CancelThreeFingerEvent
276  * @tc.desc: Test function CancelThreeFingerEvent
277  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelThreeFingerEvent_002, TestSize.Level1)278 HWTEST_F(MultiFingerGestureHandlerTest, CancelThreeFingerEvent_002, TestSize.Level1)
279 {
280     GTEST_LOG_(INFO) << "CancelThreeFingerEvent_002 start";
281 
282     if (!instance_) {
283         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
284         return;
285     }
286     AccessibilityElementInfo sourceInfo {};
287     AccessibilityElementInfo elementInfo {};
288     EXPECT_EQ(instance_->CancelThreeFingerEvent(sourceInfo, FOCUS_TYPE, elementInfo), RET_OK);
289 
290     GTEST_LOG_(INFO) << "CancelThreeFingerEvent_002 end";
291 }
292 
293 /**
294  * @tc.number: CancelTapAndHoldGestureEvent_001
295  * @tc.name: CancelTapAndHoldGestureEvent
296  * @tc.desc: Test function CancelTapAndHoldGestureEvent
297  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelTapAndHoldGestureEvent_001, TestSize.Level1)298 HWTEST_F(MultiFingerGestureHandlerTest, CancelTapAndHoldGestureEvent_001, TestSize.Level1)
299 {
300     GTEST_LOG_(INFO) << "CancelTapAndHoldGestureEvent_001 start";
301 
302     if (!instance_) {
303         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
304         return;
305     }
306     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
307     std::shared_ptr<AccessibilityGestureInjectPath> gesturePath = std::make_shared<AccessibilityGestureInjectPath>();
308     EXPECT_EQ(instance_->CancelTapAndHoldGestureEvent(gesturePath), RET_ERR_NULLPTR);
309     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
310 
311     GTEST_LOG_(INFO) << "CancelTapAndHoldGestureEvent_001 end";
312 }
313 
314 /**
315  * @tc.number: CancelTapAndHoldGestureEvent_002
316  * @tc.name: CancelTapAndHoldGestureEvent
317  * @tc.desc: Test function CancelTapAndHoldGestureEvent
318  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelTapAndHoldGestureEvent_002, TestSize.Level1)319 HWTEST_F(MultiFingerGestureHandlerTest, CancelTapAndHoldGestureEvent_002, TestSize.Level1)
320 {
321     GTEST_LOG_(INFO) << "CancelTapAndHoldGestureEvent_002 start";
322 
323     if (!instance_) {
324         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
325         return;
326     }
327     std::shared_ptr<AccessibilityGestureInjectPath> gesturePath = std::make_shared<AccessibilityGestureInjectPath>();
328     EXPECT_EQ(instance_->CancelTapAndHoldGestureEvent(gesturePath), RET_OK);
329 
330     GTEST_LOG_(INFO) << "CancelTapAndHoldGestureEvent_002 end";
331 }
332 
333 /**
334  * @tc.number: CancelHoldGestureEvent_001
335  * @tc.name: CancelHoldGestureEvent
336  * @tc.desc: Test function CancelHoldGestureEvent(AccessibleAbilityClient is null)
337  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelHoldGestureEvent_001, TestSize.Level1)338 HWTEST_F(MultiFingerGestureHandlerTest, CancelHoldGestureEvent_001, TestSize.Level1)
339 {
340     GTEST_LOG_(INFO) << "CancelHoldGestureEvent_001 start";
341 
342     if (!instance_) {
343         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
344         return;
345     }
346     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
347     AccessibilityElementInfo elementInfo {};
348     EXPECT_EQ(instance_->CancelHoldGestureEvent(elementInfo), RET_ERR_NULLPTR);
349     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
350 
351     GTEST_LOG_(INFO) << "CancelHoldGestureEvent_001 end";
352 }
353 
354 /**
355  * @tc.number: CancelHoldGestureEvent_002
356  * @tc.name: CancelHoldGestureEvent
357  * @tc.desc: Test function CancelHoldGestureEvent(AccessibleAbilityClient is not null)
358  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelHoldGestureEvent_002, TestSize.Level1)359 HWTEST_F(MultiFingerGestureHandlerTest, CancelHoldGestureEvent_002, TestSize.Level1)
360 {
361     GTEST_LOG_(INFO) << "CancelHoldGestureEvent_002 start";
362 
363     if (!instance_) {
364         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
365         return;
366     }
367     AccessibilityElementInfo elementInfo {};
368     EXPECT_EQ(instance_->CancelHoldGestureEvent(elementInfo), RET_OK);
369 
370     GTEST_LOG_(INFO) << "CancelHoldGestureEvent_002 end";
371 }
372 
373 /**
374  * @tc.number: CancelAllPenddingEvent_001
375  * @tc.name: CancelAllPenddingEvent
376  * @tc.desc: Test function CancelAllPenddingEvent(AccessibleAbilityClient is null)
377  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelAllPenddingEvent_001, TestSize.Level1)378 HWTEST_F(MultiFingerGestureHandlerTest, CancelAllPenddingEvent_001, TestSize.Level1)
379 {
380     GTEST_LOG_(INFO) << "CancelAllPenddingEvent_001 start";
381 
382     if (!instance_) {
383         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
384         return;
385     }
386     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
387     AccessibilityWindowInfo windowInfo {};
388     AccessibilityElementInfo elementInfo {};
389     EXPECT_EQ(instance_->CancelAllPenddingEvent(windowInfo, elementInfo), RET_ERR_NULLPTR);
390     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
391 
392     GTEST_LOG_(INFO) << "CancelAllPenddingEvent_001 end";
393 }
394 
395 /**
396  * @tc.number: CancelAllPenddingEvent_002
397  * @tc.name: CancelAllPenddingEvent
398  * @tc.desc: Test function CancelAllPenddingEvent(AccessibleAbilityClient is not null)
399  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelAllPenddingEvent_002, TestSize.Level1)400 HWTEST_F(MultiFingerGestureHandlerTest, CancelAllPenddingEvent_002, TestSize.Level1)
401 {
402     GTEST_LOG_(INFO) << "CancelAllPenddingEvent_002 start";
403 
404     if (!instance_) {
405         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
406         return;
407     }
408     AccessibilityWindowInfo windowInfo {};
409     AccessibilityElementInfo elementInfo {};
410     EXPECT_EQ(instance_->CancelAllPenddingEvent(windowInfo, elementInfo), RET_OK);
411 
412     GTEST_LOG_(INFO) << "CancelAllPenddingEvent_002 end";
413 }
414 
415 /**
416  * @tc.number: CancelGesture_001
417  * @tc.name: CancelGesture
418  * @tc.desc: Test function CancelGesture(AccessibleAbilityClient is null)
419  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelGesture_001, TestSize.Level1)420 HWTEST_F(MultiFingerGestureHandlerTest, CancelGesture_001, TestSize.Level1)
421 {
422     GTEST_LOG_(INFO) << "CancelGesture_001 start";
423 
424     if (!instance_) {
425         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
426         return;
427     }
428     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
429     AccessibilityWindowInfo winInfo {};
430     EXPECT_EQ(instance_->CancelGesture(WINDOW_ID, winInfo), RET_ERR_NULLPTR);
431     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
432     GTEST_LOG_(INFO) << "CancelGesture_001 end";
433 }
434 
435 /**
436  * @tc.number: CancelGesture_002
437  * @tc.name: CancelGesture
438  * @tc.desc: Test function CancelGesture(AccessibleAbilityClient is not null)
439  */
HWTEST_F(MultiFingerGestureHandlerTest, CancelGesture_002, TestSize.Level1)440 HWTEST_F(MultiFingerGestureHandlerTest, CancelGesture_002, TestSize.Level1)
441 {
442     GTEST_LOG_(INFO) << "CancelGesture_002 start";
443 
444     if (!instance_) {
445         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
446         return;
447     }
448     AccessibilityWindowInfo winInfo {};
449     EXPECT_EQ(instance_->CancelGesture(WINDOW_ID, winInfo), RET_OK);
450     GTEST_LOG_(INFO) << "CancelGesture_002 end";
451 }
452 
453 /**
454  * @tc.number: ParamCheck_001
455  * @tc.name: ParamCheck
456  * @tc.desc: Test function ParamCheck(AccessibleAbilityClient is null)
457  */
HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_001, TestSize.Level1)458 HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_001, TestSize.Level1)
459 {
460     GTEST_LOG_(INFO) << "ParamCheck_001 start";
461 
462     if (!instance_) {
463         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
464         return;
465     }
466     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
467     std::vector<AccessibilityWindowInfo> res {};
468     EXPECT_EQ(instance_->ParamCheck(res), RET_ERR_NULLPTR);
469     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
470     GTEST_LOG_(INFO) << "ParamCheck_001 end";
471 }
472 
473 /**
474  * @tc.number: ParamCheck_002
475  * @tc.name: ParamCheck
476  * @tc.desc: Test function ParamCheck(AccessibleAbilityClient is not null)
477  */
HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_002, TestSize.Level1)478 HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_002, TestSize.Level1)
479 {
480     GTEST_LOG_(INFO) << "ParamCheck_002 start";
481 
482     if (!instance_) {
483         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
484         return;
485     }
486     std::vector<AccessibilityWindowInfo> res {};
487     EXPECT_EQ(instance_->ParamCheck(res), RET_OK);
488     GTEST_LOG_(INFO) << "ParamCheck_002 end";
489 }
490 
491 /**
492  * @tc.number: ParamCheck_003
493  * @tc.name: ParamCheck
494  * @tc.desc: Test function ParamCheck(AccessibleAbilityClient is null)
495  */
HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_003, TestSize.Level1)496 HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_003, TestSize.Level1)
497 {
498     GTEST_LOG_(INFO) << "ParamCheck_003 start";
499 
500     if (!instance_) {
501         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
502         return;
503     }
504     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
505     std::vector<AccessibilityWindowInfo> res {};
506     EXPECT_EQ(instance_->ParamCheck(DISPLAY_ID, res), RET_ERR_NULLPTR);
507     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
508     GTEST_LOG_(INFO) << "ParamCheck_003 end";
509 }
510 
511 /**
512  * @tc.number: ParamCheck_004
513  * @tc.name: ParamCheck
514  * @tc.desc: Test function ParamCheck(AccessibleAbilityClient is not null)
515  */
HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_004, TestSize.Level1)516 HWTEST_F(MultiFingerGestureHandlerTest, ParamCheck_004, TestSize.Level1)
517 {
518     GTEST_LOG_(INFO) << "ParamCheck_004 start";
519 
520     if (!instance_) {
521         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
522         return;
523     }
524     std::vector<AccessibilityWindowInfo> res {};
525     EXPECT_EQ(instance_->ParamCheck(DISPLAY_ID, res), RET_OK);
526     GTEST_LOG_(INFO) << "ParamCheck_004 end";
527 }
528 
529 /**
530  * @tc.number: GetLastFirstPointUpTime_001
531  * @tc.name: GetLastFirstPointUpTime
532  * @tc.desc: Test function GetLastFirstPointUpTime(AccessibleAbilityClient is null)
533  */
HWTEST_F(MultiFingerGestureHandlerTest, GetLastFirstPointUpTime_001, TestSize.Level1)534 HWTEST_F(MultiFingerGestureHandlerTest, GetLastFirstPointUpTime_001, TestSize.Level1)
535 {
536     GTEST_LOG_(INFO) << "GetLastFirstPointUpTime_001 start";
537 
538     if (!instance_) {
539         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
540         return;
541     }
542     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
543     AccessibilityElementInfo nextElementInfo {};
544     AccessibilityElementInfo elementInfo {};
545     FocusMoveDirection direction = DIRECTION_INVALID;
546     EXPECT_EQ(instance_->GetLastFirstPointUpTime(elementInfo, direction, elementInfo), RET_ERR_NULLPTR);
547     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
548 
549     GTEST_LOG_(INFO) << "GetLastFirstPointUpTime_001 end";
550 }
551 
552 /**
553  * @tc.number: GetLastFirstPointUpTime_002
554  * @tc.name: GetLastFirstPointUpTime
555  * @tc.desc: Test function GetLastFirstPointUpTime(AccessibleAbilityClient is not null)
556  */
HWTEST_F(MultiFingerGestureHandlerTest, GetLastFirstPointUpTime_002, TestSize.Level1)557 HWTEST_F(MultiFingerGestureHandlerTest, GetLastFirstPointUpTime_002, TestSize.Level1)
558 {
559     GTEST_LOG_(INFO) << "GetLastFirstPointUpTime_002 start";
560 
561     if (!instance_) {
562         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
563         return;
564     }
565     AccessibilityElementInfo nextElementInfo {};
566     AccessibilityElementInfo elementInfo {};
567     FocusMoveDirection direction = DIRECTION_INVALID;
568     EXPECT_EQ(instance_->GetLastFirstPointUpTime(elementInfo, direction, elementInfo), RET_OK);
569 
570     GTEST_LOG_(INFO) << "GetLastFirstPointUpTime_002 end";
571 }
572 
573 /**
574  * @tc.number: IsDoubelTapSlopConditionMatch_001
575  * @tc.name: IsDoubelTapSlopConditionMatch
576  * @tc.desc: Test function IsDoubelTapSlopConditionMatch(AccessibleAbilityClient is null)
577  */
HWTEST_F(MultiFingerGestureHandlerTest, IsDoubelTapSlopConditionMatch_001, TestSize.Level1)578 HWTEST_F(MultiFingerGestureHandlerTest, IsDoubelTapSlopConditionMatch_001, TestSize.Level1)
579 {
580     GTEST_LOG_(INFO) << "IsDoubelTapSlopConditionMatch_001 start";
581 
582     if (!instance_) {
583         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
584         return;
585     }
586     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
587     AccessibilityElementInfo parent {};
588     AccessibilityElementInfo child {};
589     int32_t index = 1;
590     EXPECT_EQ(instance_->IsDoubelTapSlopConditionMatch(index, parent, child), RET_ERR_NULLPTR);
591     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
592 
593     GTEST_LOG_(INFO) << "IsDoubelTapSlopConditionMatch_001 end";
594 }
595 
596 /**
597  * @tc.number: IsDoubelTapSlopConditionMatch_002
598  * @tc.name: IsDoubelTapSlopConditionMatch
599  * @tc.desc: Test function IsDoubelTapSlopConditionMatch(AccessibleAbilityClient is not null)
600  */
HWTEST_F(MultiFingerGestureHandlerTest, IsDoubelTapSlopConditionMatch_002, TestSize.Level1)601 HWTEST_F(MultiFingerGestureHandlerTest, IsDoubelTapSlopConditionMatch_002, TestSize.Level1)
602 {
603     GTEST_LOG_(INFO) << "IsDoubelTapSlopConditionMatch_002 start";
604 
605     if (!instance_) {
606         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
607         return;
608     }
609     AccessibilityElementInfo parent {};
610     AccessibilityElementInfo child {};
611     int32_t index = 1;
612     EXPECT_EQ(instance_->IsDoubelTapSlopConditionMatch(index, parent, child), RET_OK);
613 
614     GTEST_LOG_(INFO) << "IsDoubelTapSlopConditionMatch_002 end";
615 }
616 
617 /**
618  * @tc.number: GetPointerItemWithFingerNum_001
619  * @tc.name: GetPointerItemWithFingerNum
620  * @tc.desc: Test function GetPointerItemWithFingerNum(AccessibleAbilityClient is null)
621  */
HWTEST_F(MultiFingerGestureHandlerTest, GetPointerItemWithFingerNum_001, TestSize.Level1)622 HWTEST_F(MultiFingerGestureHandlerTest, GetPointerItemWithFingerNum_001, TestSize.Level1)
623 {
624     GTEST_LOG_(INFO) << "GetPointerItemWithFingerNum_001 start";
625 
626     if (!instance_) {
627         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
628         return;
629     }
630     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
631     AccessibilityElementInfo parent {};
632     std::vector<AccessibilityElementInfo> elementInfos {};
633     EXPECT_EQ(instance_->GetPointerItemWithFingerNum(parent, TEST, elementInfos), RET_ERR_NULLPTR);
634     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
635 
636     GTEST_LOG_(INFO) << "GetPointerItemWithFingerNum_001 end";
637 }
638 
639 /**
640  * @tc.number: GetPointerItemWithFingerNum_002
641  * @tc.name: GetPointerItemWithFingerNum
642  * @tc.desc: Test function GetPointerItemWithFingerNum(AccessibleAbilityClient is not null)
643  */
HWTEST_F(MultiFingerGestureHandlerTest, GetPointerItemWithFingerNum_002, TestSize.Level1)644 HWTEST_F(MultiFingerGestureHandlerTest, GetPointerItemWithFingerNum_002, TestSize.Level1)
645 {
646     GTEST_LOG_(INFO) << "GetPointerItemWithFingerNum_002 start";
647 
648     if (!instance_) {
649         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
650         return;
651     }
652     AccessibilityElementInfo parent {};
653     std::vector<AccessibilityElementInfo> elementInfos {};
654     EXPECT_EQ(instance_->GetPointerItemWithFingerNum(parent, TEST, elementInfos), RET_OK);
655 
656     GTEST_LOG_(INFO) << "GetPointerItemWithFingerNum_002 end";
657 }
658 
659 /**
660  * @tc.number: IsMultiFingerDoubleTap_001
661  * @tc.name: IsMultiFingerDoubleTap
662  * @tc.desc: Test function IsMultiFingerDoubleTap(AccessibleAbilityClient is null)
663  */
HWTEST_F(MultiFingerGestureHandlerTest, IsMultiFingerDoubleTap_001, TestSize.Level1)664 HWTEST_F(MultiFingerGestureHandlerTest, IsMultiFingerDoubleTap_001, TestSize.Level1)
665 {
666     GTEST_LOG_(INFO) << "IsMultiFingerDoubleTap_001 start";
667 
668     if (!instance_) {
669         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
670         return;
671     }
672     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
673     AccessibilityEventInfo eventInfo {};
674     AccessibilityElementInfo elementInfo {};
675     EXPECT_EQ(instance_->IsMultiFingerDoubleTap(eventInfo, elementInfo), RET_ERR_NULLPTR);
676     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
677 
678     GTEST_LOG_(INFO) << "IsMultiFingerDoubleTap_001 end";
679 }
680 
681 /**
682  * @tc.number: IsMultiFingerDoubleTap_002
683  * @tc.name: IsMultiFingerDoubleTap
684  * @tc.desc: Test function IsMultiFingerDoubleTap(AccessibleAbilityClient is not null)
685  */
HWTEST_F(MultiFingerGestureHandlerTest, IsMultiFingerDoubleTap_002, TestSize.Level1)686 HWTEST_F(MultiFingerGestureHandlerTest, IsMultiFingerDoubleTap_002, TestSize.Level1)
687 {
688     GTEST_LOG_(INFO) << "IsMultiFingerDoubleTap_002 start";
689 
690     if (!instance_) {
691         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
692         return;
693     }
694     AccessibilityEventInfo eventInfo {};
695     AccessibilityElementInfo elementInfo {};
696     EXPECT_EQ(instance_->IsMultiFingerDoubleTap(eventInfo, elementInfo), RET_OK);
697 
698     GTEST_LOG_(INFO) << "IsMultiFingerDoubleTap_002 end";
699 }
700 
701 /**
702  * @tc.number: HanleFirstTouchDownEvent_001
703  * @tc.name: HanleFirstTouchDownEvent
704  * @tc.desc: Test function HanleFirstTouchDownEvent(AccessibleAbilityClient is null)
705  */
HWTEST_F(MultiFingerGestureHandlerTest, HanleFirstTouchDownEvent_001, TestSize.Level1)706 HWTEST_F(MultiFingerGestureHandlerTest, HanleFirstTouchDownEvent_001, TestSize.Level1)
707 {
708     GTEST_LOG_(INFO) << "HanleFirstTouchDownEvent_001 start";
709 
710     if (!instance_) {
711         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
712         return;
713     }
714     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
715     AccessibilityElementInfo child {};
716     AccessibilityElementInfo parent {};
717     EXPECT_EQ(instance_->HanleFirstTouchDownEvent(child, parent), RET_ERR_NULLPTR);
718     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
719 
720     GTEST_LOG_(INFO) << "HanleFirstTouchDownEvent_001 end";
721 }
722 
723 /**
724  * @tc.number: HanleFirstTouchDownEvent_002
725  * @tc.name: HanleFirstTouchDownEvent
726  * @tc.desc: Test function HanleFirstTouchDownEvent(AccessibleAbilityClient is not null)
727  */
HWTEST_F(MultiFingerGestureHandlerTest, HanleFirstTouchDownEvent_002, TestSize.Level1)728 HWTEST_F(MultiFingerGestureHandlerTest, HanleFirstTouchDownEvent_002, TestSize.Level1)
729 {
730     GTEST_LOG_(INFO) << "HanleFirstTouchDownEvent_002 start";
731 
732     if (!instance_) {
733         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
734         return;
735     }
736     AccessibilityElementInfo child {};
737     AccessibilityElementInfo parent {};
738     EXPECT_EQ(instance_->HanleFirstTouchDownEvent(child, parent), RET_OK);
739 
740     GTEST_LOG_(INFO) << "HanleFirstTouchDownEvent_002 end";
741 }
742 
743 /**
744  * @tc.number: HandleMultiTapEvent_001
745  * @tc.name: HandleMultiTapEvent
746  * @tc.desc: Test function HandleMultiTapEvent(AccessibleAbilityClient is null)
747  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiTapEvent_001, TestSize.Level1)748 HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiTapEvent_001, TestSize.Level1)
749 {
750     GTEST_LOG_(INFO) << "HandleMultiTapEvent_001 start";
751 
752     if (!instance_) {
753         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
754         return;
755     }
756     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
757     AccessibilityElementInfo elementInfo {};
758     ActionType action = ACCESSIBILITY_ACTION_INVALID;
759     std::map<std::string, std::string> actionArguments {};
760     EXPECT_EQ(instance_->HandleMultiTapEvent(elementInfo, action, actionArguments), RET_ERR_NULLPTR);
761     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
762 
763     GTEST_LOG_(INFO) << "HandleMultiTapEvent_001 end";
764 }
765 
766 /**
767  * @tc.number: HandleMultiTapEvent_002
768  * @tc.name: HandleMultiTapEvent
769  * @tc.desc: Test function HandleMultiTapEvent(AccessibleAbilityClient is not null)
770  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiTapEvent_002, TestSize.Level1)771 HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiTapEvent_002, TestSize.Level1)
772 {
773     GTEST_LOG_(INFO) << "HandleMultiTapEvent_002 start";
774 
775     if (!instance_) {
776         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
777         return;
778     }
779     AccessibilityElementInfo elementInfo {};
780     ActionType action = ACCESSIBILITY_ACTION_INVALID;
781     std::map<std::string, std::string> actionArguments {};
782     EXPECT_EQ(instance_->HandleMultiTapEvent(elementInfo, action, actionArguments), RET_OK);
783 
784     GTEST_LOG_(INFO) << "HandleMultiTapEvent_002 end";
785 }
786 
787 /**
788  * @tc.number: HandleContinueTouchDownEvent_001
789  * @tc.name: HandleContinueTouchDownEvent
790  * @tc.desc: Test function HandleContinueTouchDownEvent(AccessibleAbilityClient is null)
791  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleContinueTouchDownEvent_001, TestSize.Level1)792 HWTEST_F(MultiFingerGestureHandlerTest, HandleContinueTouchDownEvent_001, TestSize.Level1)
793 {
794     GTEST_LOG_(INFO) << "HandleContinueTouchDownEvent_001 start";
795 
796     if (!instance_) {
797         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
798         return;
799     }
800     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
801     std::vector<std::string> targetBundleNames;
802     EXPECT_EQ(instance_->HandleContinueTouchDownEvent(targetBundleNames), RET_ERR_NULLPTR);
803     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
804 
805     GTEST_LOG_(INFO) << "HandleContinueTouchDownEvent_001 end";
806 }
807 
808 /**
809  * @tc.number: HandleContinueTouchDownEvent_002
810  * @tc.name: HandleContinueTouchDownEvent
811  * @tc.desc: Test function HandleContinueTouchDownEvent(AccessibleAbilityClient is not null)
812  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleContinueTouchDownEvent_002, TestSize.Level1)813 HWTEST_F(MultiFingerGestureHandlerTest, HandleContinueTouchDownEvent_002, TestSize.Level1)
814 {
815     GTEST_LOG_(INFO) << "HandleContinueTouchDownEvent_002 start";
816 
817     if (!instance_) {
818         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
819         return;
820     }
821     std::vector<std::string> targetBundleNames;
822     EXPECT_EQ(instance_->HandleContinueTouchDownEvent(targetBundleNames), RET_OK);
823 
824     GTEST_LOG_(INFO) << "HandleContinueTouchDownEvent_002 end";
825 }
826 
827 /**
828  * @tc.number: storeBaseDownPoint_001
829  * @tc.name: storeBaseDownPoint
830  * @tc.desc: Test function storeBaseDownPoint
831  */
HWTEST_F(MultiFingerGestureHandlerTest, storeBaseDownPoint_001, TestSize.Level1)832 HWTEST_F(MultiFingerGestureHandlerTest, storeBaseDownPoint_001, TestSize.Level1)
833 {
834     GTEST_LOG_(INFO) << "storeBaseDownPoint_001 start";
835 
836     if (!instance_) {
837         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
838         return;
839     }
840     AccessibilityElementInfo parent;
841     std::vector<AccessibilityElementInfo> children;
842     EXPECT_EQ(instance_->storeBaseDownPoint(parent, children), RET_OK);
843 
844     GTEST_LOG_(INFO) << "storeBaseDownPoint_001 end";
845 }
846 
847 /**
848  * @tc.number: GetSwipeDirection_001
849  * @tc.name: GetSwipeDirection
850  * @tc.desc: Test function GetSwipeDirection
851  */
HWTEST_F(MultiFingerGestureHandlerTest, GetSwipeDirection_001, TestSize.Level1)852 HWTEST_F(MultiFingerGestureHandlerTest, GetSwipeDirection_001, TestSize.Level1)
853 {
854     GTEST_LOG_(INFO) << "GetSwipeDirection_001 start";
855 
856     if (!instance_) {
857         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
858         return;
859     }
860     instance_->GetSwipeDirection(CACHE_MODE);
861     EXPECT_EQ(CACHE_MODE, AccessibilityAbilityUtHelper::IsTapGesture().GetCacheMode());
862 
863     GTEST_LOG_(INFO) << "GetSwipeDirection_001 end";
864 }
865 
866 /**
867  * @tc.number: SaveMoveGesturePointerInfo_001
868  * @tc.name: SaveMoveGesturePointerInfo
869  * @tc.desc: Test function SaveMoveGesturePointerInfo(AccessibleAbilityClient is null)
870  */
HWTEST_F(MultiFingerGestureHandlerTest, SaveMoveGesturePointerInfo_001, TestSize.Level1)871 HWTEST_F(MultiFingerGestureHandlerTest, SaveMoveGesturePointerInfo_001, TestSize.Level1)
872 {
873     GTEST_LOG_(INFO) << "SaveMoveGesturePointerInfo_001 start";
874 
875     if (!instance_) {
876         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
877         return;
878     }
879     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
880     std::vector<AccessibilityElementInfo> elementInfos;
881     EXPECT_EQ(instance_->SaveMoveGesturePointerInfo(elementInfos), RET_ERR_NULLPTR);
882     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
883 
884     GTEST_LOG_(INFO) << "SaveMoveGesturePointerInfo_001 end";
885 }
886 
887 /**
888  * @tc.number: SaveMoveGesturePointerInfo_002
889  * @tc.name: SaveMoveGesturePointerInfo
890  * @tc.desc: Test function SaveMoveGesturePointerInfo(AccessibleAbilityClient is not null)
891  */
HWTEST_F(MultiFingerGestureHandlerTest, SaveMoveGesturePointerInfo_002, TestSize.Level1)892 HWTEST_F(MultiFingerGestureHandlerTest, SaveMoveGesturePointerInfo_002, TestSize.Level1)
893 {
894     GTEST_LOG_(INFO) << "SaveMoveGesturePointerInfo_002 start";
895 
896     if (!instance_) {
897         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
898         return;
899     }
900     std::vector<AccessibilityElementInfo> elementInfos;
901     EXPECT_EQ(instance_->SaveMoveGesturePointerInfo(elementInfos), RET_OK);
902 
903     GTEST_LOG_(INFO) << "SaveMoveGesturePointerInfo_002 end";
904 }
905 
906 /**
907  * @tc.number: GetBasePointItem_001
908  * @tc.name: GetBasePointItem
909  * @tc.desc: Test function CancelAllPenddingEvent(AccessibleAbilityClient is null)
910  */
HWTEST_F(MultiFingerGestureHandlerTest, GetBasePointItem_001, TestSize.Level1)911 HWTEST_F(MultiFingerGestureHandlerTest, GetBasePointItem_001, TestSize.Level1)
912 {
913     GTEST_LOG_(INFO) << "GetBasePointItem_001 start";
914 
915     if (!instance_) {
916         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
917         return;
918     }
919     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(true);
920     AccessibilityWindowInfo windowInfo {};
921     std::vector<AccessibilityElementInfo> elementInfos;
922     EXPECT_EQ(instance_->GetBasePointItem(windowInfo, elementInfos, true), RET_ERR_NULLPTR);
923     AccessibilityAbilityUtHelper::IsTapGesture().SetAbilityClientNullFlag(false);
924 
925     GTEST_LOG_(INFO) << "GetBasePointItem_001 end";
926 }
927 
928 /**
929  * @tc.number: GetBasePointItem_002
930  * @tc.name: GetBasePointItem
931  * @tc.desc: Test function GetBasePointItem(AccessibleAbilityClient is not null)
932  */
HWTEST_F(MultiFingerGestureHandlerTest, GetBasePointItem_002, TestSize.Level1)933 HWTEST_F(MultiFingerGestureHandlerTest, GetBasePointItem_002, TestSize.Level1)
934 {
935     GTEST_LOG_(INFO) << "GetBasePointItem_002 start";
936 
937     if (!instance_) {
938         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandler instance_";
939         return;
940     }
941     AccessibilityWindowInfo windowInfo {};
942     std::vector<AccessibilityElementInfo> elementInfos;
943     EXPECT_EQ(instance_->GetBasePointItem(windowInfo, elementInfos, true), RET_OK);
944 
945     GTEST_LOG_(INFO) << "GetBasePointItem_002 end";
946 }
947 
948 /**
949  * @tc.number: HandleMultiFingerMoveEvent_001
950  * @tc.name: HandleMultiFingerMoveEvent
951  * @tc.desc: Test function HandleMultiFingerMoveEvent
952  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerMoveEvent_001, TestSize.Level1)953 HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerMoveEvent_001, TestSize.Level1)
954 {
955     GTEST_LOG_(INFO) << "HandleMultiFingerMoveEvent_001 start";
956     const int32_t accountId = 1;
957     const int32_t windowId = 1;
958     sptr<AccessibilityAccountData> currentAccount =
959         Singleton<AccessibleAbilityManagerService>::GetInstance().GetCurrentAccountData();
960     if (!currentAccount) {
961         GTEST_LOG_(ERROR) << "Account data is nullptr";
962         return;
963     }
964     sptr<AccessibilityWindowConnection> operationConnection =
965         new AccessibilityWindowConnection(windowId, nullptr, accountId);
966     currentAccount->AddAccessibilityWindowConnection(windowId, operationConnection);
967     std::string cmdWindow("-w");
968     std::vector<std::u16string> args;
969     args.emplace_back(Str8ToStr16(cmdWindow));
970     int ret = HandleMultiFingerMoveEventer_->HandleMultiFingerMoveEvent(fd_, args);
971     EXPECT_GE(ret, -1);
972     currentAccount->RemoveAccessibilityWindowConnection(windowId);
973     GTEST_LOG_(INFO) << "HandleMultiFingerMoveEvent_001 end";
974 }
975 
976 /**
977  * @tc.number: HandleMultiFingerMoveEvent_002
978  * @tc.name: HandleMultiFingerMoveEvent
979  * @tc.desc: Test function HandleMultiFingerMoveEvent
980  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerMoveEvent_001, TestSize.Level1)981 HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerMoveEvent_001, TestSize.Level1)
982 {
983     GTEST_LOG_(INFO) << "HandleMultiFingerMoveEvent_002 start";
984     sptr<AccessibilityAccountData> currentAccount =
985         Singleton<AccessibleAbilityManagerService>::GetInstance().GetCurrentAccountData();
986 
987     std::shared_ptr<AccessibilitySettingsConfig> config = currentAccount->GetConfig();
988     if (!config) {
989         GTEST_LOG_(ERROR) << "Config is nullptr";
990         return;
991     }
992     config->SetCaptionState(true);
993     std::string cmdUser("-u");
994     std::vector<std::u16string> args;
995     args.emplace_back(Str8ToStr16(cmdUser));
996     AccessibilityAbilityHelper::GetInstance().SetNeedAccountDataNullFlag(true);
997     int ret = HandleMultiFingerMoveEventer_->HandleMultiFingerMoveEvent(fd_, args);
998     EXPECT_GE(ret, -1);
999     AccessibilityAbilityHelper::GetInstance().SetNeedAccountDataNullFlag(false);
1000     GTEST_LOG_(INFO) << "HandleMultiFingerMoveEvent_002 end";
1001 }
1002 
1003 /**
1004  * @tc.number: StoreUpPointInPointerRoute_001
1005  * @tc.name: StoreUpPointInPointerRoute
1006  * @tc.desc: Test function StoreUpPointInPointerRoute
1007  */
HWTEST_F(MultiFingerGestureHandlerTest, StoreUpPointInPointerRoute_001, TestSize.Level1)1008 HWTEST_F(MultiFingerGestureHandlerTest, StoreUpPointInPointerRoute_001, TestSize.Level1)
1009 {
1010     GTEST_LOG_(INFO) << "StoreUpPointInPointerRoute_001 start";
1011     if (!instance_) {
1012         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1013         return;
1014     }
1015 
1016     std::vector<AccessibilityElementInfo> infos;
1017     AccessibilityElementInfo info {};
1018     infos.push_back(info);
1019     instance_->StoreUpPointInPointerRoute(info, SEQUENCE_NUM);
1020     EXPECT_NE(instance_.get(), nullptr);
1021     GTEST_LOG_(INFO) << "StoreUpPointInPointerRoute_001 end";
1022 }
1023 
1024 /**
1025  * @tc.number: recognizeGesturePath_001
1026  * @tc.name: recognizeGesturePath
1027  * @tc.desc: Test function recognizeGesturePath
1028  */
HWTEST_F(MultiFingerGestureHandlerTest, recognizeGesturePath_001, TestSize.Level1)1029 HWTEST_F(MultiFingerGestureHandlerTest, recognizeGesturePath_001, TestSize.Level1)
1030 {
1031     GTEST_LOG_(INFO) << "recognizeGesturePath_001 start";
1032     if (!instance_) {
1033         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1034         return;
1035     }
1036 
1037     std::vector<AccessibilityElementInfo> infos;
1038     AccessibilityElementInfo info {};
1039     infos.push_back(info);
1040     instance_->recognizeGesturePath(info, SEQUENCE_NUM);
1041     EXPECT_NE(instance_.get(), nullptr);
1042     GTEST_LOG_(INFO) << "recognizeGesturePath_001 end";
1043 }
1044 
1045 /**
1046  * @tc.number: GetMoveGestureId_001
1047  * @tc.name: GetMoveGestureId
1048  * @tc.desc: Test function GetMoveGestureId
1049  */
HWTEST_F(MultiFingerGestureHandlerTest, GetMoveGestureId_001, TestSize.Level1)1050 HWTEST_F(MultiFingerGestureHandlerTest, GetMoveGestureId_001, TestSize.Level1)
1051 {
1052     GTEST_LOG_(INFO) << "GetMoveGestureId_001 start";
1053     if (!instance_) {
1054         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1055         return;
1056     }
1057 
1058     std::vector<AccessibilityElementInfo> infos;
1059     AccessibilityElementInfo info {};
1060     infos.push_back(info);
1061     instance_->GetMoveGestureId(true, SEQUENCE_NUM);
1062     EXPECT_NE(instance_.get(), nullptr);
1063     GTEST_LOG_(INFO) << "GetMoveGestureId_001 end";
1064 }
1065 
1066 /**
1067  * @tc.number: IsMoveGestureRecognize_001
1068  * @tc.name: IsMoveGestureRecognize
1069  * @tc.desc: Test function IsMoveGestureRecognize
1070  */
HWTEST_F( MultiFingerGestureHandlerTest, IsMoveGestureRecognize_001, TestSize.Level1)1071 HWTEST_F(
1072     MultiFingerGestureHandlerTest, IsMoveGestureRecognize_001, TestSize.Level1)
1073 {
1074     GTEST_LOG_(INFO) << "IsMoveGestureRecognize_001 start";
1075 
1076     if (!instance_) {
1077         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1078         return;
1079     }
1080 
1081     std::vector<AccessibilityElementInfo> infos;
1082     AccessibilityElementInfo info {};
1083     infos.push_back(info);
1084     instance_->IsMoveGestureRecognize(infos, SEQUENCE_NUM);
1085     EXPECT_NE(instance_.get(), nullptr);
1086     GTEST_LOG_(INFO) << "IsMoveGestureRecognize_001 end";
1087 }
1088 
1089 /**
1090  * @tc.number: HandleMultiFingerTouchUpEvent_001
1091  * @tc.name: HandleMultiFingerTouchUpEvent
1092  * @tc.desc: Test function HandleMultiFingerTouchUpEvent
1093  */
HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerTouchUpEvent_001, TestSize.Level1)1094 HWTEST_F(MultiFingerGestureHandlerTest, HandleMultiFingerTouchUpEvent_001, TestSize.Level1)
1095 {
1096     GTEST_LOG_(INFO) << "HandleMultiFingerTouchUpEvent_001 start";
1097     if (!instance_) {
1098         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1099         return;
1100     }
1101 
1102     std::vector<AccessibilityElementInfo> infos;
1103     AccessibilityElementInfo info {};
1104     infos.push_back(info);
1105     instance_->HandleMultiFingerTouchUpEvent(infos, SEQUENCE_NUM);
1106     EXPECT_NE(instance_.get(), nullptr);
1107     GTEST_LOG_(INFO) << "HandleMultiFingerTouchUpEvent_001 end";
1108 }
1109 
1110 /**
1111  * @tc.number: OnPointerEvent_001
1112  * @tc.name: OnPointerEvent
1113  * @tc.desc: Test function OnPointerEvent(listener is null)
1114  */
HWTEST_F(MultiFingerGestureHandlerTest, OnPointerEvent_001, TestSize.Level1)1115 HWTEST_F(MultiFingerGestureHandlerTest, OnPointerEvent_001, TestSize.Level1)
1116 {
1117     GTEST_LOG_(INFO) << "OnPointerEvent_001 start";
1118 
1119     if (!instance_) {
1120         GTEST_LOG_(INFO) << "Cann't get MultiFingerGestureHandlerTest instance_";
1121         return;
1122     }
1123     std::shared_ptr<AccessibleAbilityListener> listener = nullptr;
1124     EXPECT_EQ(instance_->OnPointerEvent(listener), RET_ERR_INVALID_PARAM);
1125 
1126     GTEST_LOG_(INFO) << "OnPointerEvent_001 end";
1127 }
1128 } // namespace Accessibility
1129 } // namespace OHOS