1 /*
2  * Copyright (c) 2021-2022 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 
18 #include "device_base.h"
19 #include "msg_head.h"
20 #include "proto.h"
21 
22 namespace OHOS {
23 namespace MMI {
24 namespace {
25 using namespace testing::ext;
26 } // namespace
27 
28 class DeviceBaseTest : public testing::Test {
29 public:
SetUpTestCase(void)30     static void SetUpTestCase(void) {}
TearDownTestCase(void)31     static void TearDownTestCase(void) {}
32 };
33 
34 class DeviceBaseDemo : public DeviceBase {
TransformJsonDataToInputData(const DeviceItem & fingerEventArrays,InputEventArray & inputEventArray)35     int32_t TransformJsonDataToInputData(const DeviceItem& fingerEventArrays, InputEventArray& inputEventArray)
36     {
37         return RET_ERR;
38     }
39 };
40 
41 /**
42  * @tc.name:Test_SetTimeToLibinputEvent
43  * @tc.desc:Verify device base function SetTimeToLibinputEvent
44  * @tc.type: FUNC
45  * @tc.require:
46  */
47 HWTEST_F(DeviceBaseTest, Test_SetTimeToLibinputEvent, TestSize.Level1)
48 {
49     InjectEvent injectEvent = {};
50     ASSERT_TRUE(injectEvent == nullptr);
51     DeviceBaseDemo deviceBaseDemo;
52     deviceBaseDemo.SetTimeToLibinputEvent(injectEvent);
53 }
54 
55 /**
56  * @tc.name:Test_SetSynConfigReport
57  * @tc.desc:Verify device base function SetSynConfigReport
58  * @tc.type: FUNC
59  * @tc.require:
60  */
61 HWTEST_F(DeviceBaseTest, Test_SetSynConfigReport, TestSize.Level1)
62 {
63     InputEventArray inputEventArray = {};
64     int64_t blockTime = 10;
65     DeviceBaseDemo deviceBaseDemo;
66     deviceBaseDemo.SetSynConfigReport(inputEventArray, blockTime);
67     EXPECT_GT(inputEventArray.events.size(), 0);
68     if (inputEventArray.events.size() <= 0) {
69         return;
70     }
71     EXPECT_EQ(inputEventArray.events[0].event.type, EV_SYN);
72     EXPECT_EQ(inputEventArray.events[0].event.code, SYN_REPORT);
73     EXPECT_EQ(inputEventArray.events[0].event.value, SYN_CONFIG);
74     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
75 }
76 
77 /**
78  * @tc.name:Test_SetKeyLongPressEvent
79  * @tc.desc:Verify device base function SetKeyLongPressEvent
80  * @tc.type: FUNC
81  * @tc.require:
82  */
83 HWTEST_F(DeviceBaseTest, Test_SetKeyLongPressEvent, TestSize.Level1)
84 {
85     InputEventArray inputEventArray = {};
86     int64_t blockTime = 10;
87     int32_t code = KEY_A;
88     DeviceBaseDemo deviceBaseDemo;
89     deviceBaseDemo.SetKeyLongPressEvent(inputEventArray, blockTime, code);
90     EXPECT_GT(inputEventArray.events.size(), 0);
91     if (inputEventArray.events.size() <= 0) {
92         return;
93     }
94     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
95     EXPECT_EQ(inputEventArray.events[0].event.code, static_cast<uint16_t>(code));
96     EXPECT_EQ(inputEventArray.events[0].event.value, LONG_PRESS);
97     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
98 }
99 
100 /**
101  * @tc.name:Test_SetKeyPressEvent
102  * @tc.desc:Verify device base function SetKeyPressEvent
103  * @tc.type: FUNC
104  * @tc.require:
105  */
106 HWTEST_F(DeviceBaseTest, Test_SetKeyPressEvent, TestSize.Level1)
107 {
108     InputEventArray inputEventArray = {};
109     int64_t blockTime = 10;
110     int32_t code = KEY_A;
111     DeviceBaseDemo deviceBaseDemo;
112     deviceBaseDemo.SetKeyPressEvent(inputEventArray, blockTime, code);
113     EXPECT_GT(inputEventArray.events.size(), 0);
114     if (inputEventArray.events.size() <= 0) {
115         return;
116     }
117     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
118     EXPECT_EQ(inputEventArray.events[0].event.code, static_cast<uint16_t>(code));
119     EXPECT_EQ(inputEventArray.events[0].event.value, 1);
120     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
121 }
122 
123 /**
124  * @tc.name:Test_SetKeyReleaseEvent
125  * @tc.desc:Verify device base function SetKeyReleaseEvent
126  * @tc.type: FUNC
127  * @tc.require:
128  */
129 HWTEST_F(DeviceBaseTest, Test_SetKeyReleaseEvent, TestSize.Level1)
130 {
131     InputEventArray inputEventArray = {};
132     int64_t blockTime = 10;
133     int32_t code = KEY_A;
134     DeviceBaseDemo deviceBaseDemo;
135     deviceBaseDemo.SetKeyReleaseEvent(inputEventArray, blockTime, code);
136     EXPECT_GT(inputEventArray.events.size(), 0);
137     if (inputEventArray.events.size() <= 0) {
138         return;
139     }
140     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
141     EXPECT_EQ(inputEventArray.events[0].event.code, static_cast<uint16_t>(code));
142     EXPECT_EQ(inputEventArray.events[0].event.value, 0);
143     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
144 }
145 
146 /**
147  * @tc.name:Test_SetMtSlot
148  * @tc.desc:Verify device base function SetMtSlot
149  * @tc.type: FUNC
150  * @tc.require:
151  */
152 HWTEST_F(DeviceBaseTest, Test_SetMtSlot, TestSize.Level1)
153 {
154     InputEventArray inputEventArray = {};
155     int64_t blockTime = 10;
156     int32_t value = 0;
157     DeviceBaseDemo deviceBaseDemo;
158     deviceBaseDemo.SetMtSlot(inputEventArray, blockTime, value);
159     EXPECT_GT(inputEventArray.events.size(), 0);
160     if (inputEventArray.events.size() <= 0) {
161         return;
162     }
163     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
164     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_SLOT);
165     EXPECT_EQ(inputEventArray.events[0].event.value, value);
166     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
167 }
168 
169 /**
170  * @tc.name:Test_SetTrackingId
171  * @tc.desc:Verify device base function SetTrackingId
172  * @tc.type: FUNC
173  * @tc.require:
174  */
175 HWTEST_F(DeviceBaseTest, Test_SetTrackingId, TestSize.Level1)
176 {
177     InputEventArray inputEventArray = {};
178     int64_t blockTime = 10;
179     int32_t value = 0;
180     DeviceBaseDemo deviceBaseDemo;
181     deviceBaseDemo.SetTrackingId(inputEventArray, blockTime, value);
182     EXPECT_GT(inputEventArray.events.size(), 0);
183     if (inputEventArray.events.size() <= 0) {
184         return;
185     }
186     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
187     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_TRACKING_ID);
188     EXPECT_EQ(inputEventArray.events[0].event.value, value);
189     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
190 }
191 
192 /**
193  * @tc.name:Test_SetPositionX
194  * @tc.desc:Verify device base function SetPositionX
195  * @tc.type: FUNC
196  * @tc.require:
197  */
198 HWTEST_F(DeviceBaseTest, Test_SetPositionX, TestSize.Level1)
199 {
200     InputEventArray inputEventArray = {};
201     int64_t blockTime = 10;
202     int32_t value = 10;
203     DeviceBaseDemo deviceBaseDemo;
204     deviceBaseDemo.SetPositionX(inputEventArray, blockTime, value);
205     EXPECT_GT(inputEventArray.events.size(), 0);
206     if (inputEventArray.events.size() <= 0) {
207         return;
208     }
209     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
210     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_POSITION_X);
211     EXPECT_EQ(inputEventArray.events[0].event.value, value);
212     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
213 }
214 
215 /**
216  * @tc.name:Test_SetPositionY
217  * @tc.desc:Verify device base function SetPositionY
218  * @tc.type: FUNC
219  * @tc.require:
220  */
221 HWTEST_F(DeviceBaseTest, Test_SetPositionY, TestSize.Level1)
222 {
223     InputEventArray inputEventArray = {};
224     int64_t blockTime = 10;
225     int32_t value = 10;
226     DeviceBaseDemo deviceBaseDemo;
227     deviceBaseDemo.SetPositionY(inputEventArray, blockTime, value);
228     EXPECT_GT(inputEventArray.events.size(), 0);
229     if (inputEventArray.events.size() <= 0) {
230         return;
231     }
232     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
233     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_POSITION_Y);
234     EXPECT_EQ(inputEventArray.events[0].event.value, value);
235     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
236 }
237 
238 /**
239  * @tc.name:Test_SetMtTouchMajor
240  * @tc.desc:Verify device base function SetMtTouchMajor
241  * @tc.type: FUNC
242  * @tc.require:
243  */
244 HWTEST_F(DeviceBaseTest, Test_SetMtTouchMajor, TestSize.Level1)
245 {
246     InputEventArray inputEventArray = {};
247     int64_t blockTime = 10;
248     int32_t value = 10;
249     DeviceBaseDemo deviceBaseDemo;
250     deviceBaseDemo.SetMtTouchMajor(inputEventArray, blockTime, value);
251     EXPECT_GT(inputEventArray.events.size(), 0);
252     if (inputEventArray.events.size() <= 0) {
253         return;
254     }
255     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
256     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_TOUCH_MAJOR);
257     EXPECT_EQ(inputEventArray.events[0].event.value, value);
258     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
259 }
260 
261 /**
262  * @tc.name:Test_SetMtTouchMinor
263  * @tc.desc:Verify device base function SetMtTouchMinor
264  * @tc.type: FUNC
265  * @tc.require:
266  */
267 HWTEST_F(DeviceBaseTest, Test_SetMtTouchMinor, TestSize.Level1)
268 {
269     InputEventArray inputEventArray = {};
270     int64_t blockTime = 10;
271     int32_t value = 10;
272     DeviceBaseDemo deviceBaseDemo;
273     deviceBaseDemo.SetMtTouchMinor(inputEventArray, blockTime, value);
274     EXPECT_GT(inputEventArray.events.size(), 0);
275     if (inputEventArray.events.size() <= 0) {
276         return;
277     }
278     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
279     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_TOUCH_MINOR);
280     EXPECT_EQ(inputEventArray.events[0].event.value, value);
281     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
282 }
283 
284 /**
285  * @tc.name:Test_SetMtOrientation
286  * @tc.desc:Verify device base function SetMtOrientation
287  * @tc.type: FUNC
288  * @tc.require:
289  */
290 HWTEST_F(DeviceBaseTest, Test_SetMtOrientation, TestSize.Level1)
291 {
292     InputEventArray inputEventArray = {};
293     int64_t blockTime = 10;
294     int32_t value = 10;
295     DeviceBaseDemo deviceBaseDemo;
296     deviceBaseDemo.SetMtOrientation(inputEventArray, blockTime, value);
297     EXPECT_GT(inputEventArray.events.size(), 0);
298     if (inputEventArray.events.size() <= 0) {
299         return;
300     }
301     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
302     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MT_ORIENTATION);
303     EXPECT_EQ(inputEventArray.events[0].event.value, value);
304     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
305 }
306 
307 /**
308  * @tc.name:Test_SetBtnTouch
309  * @tc.desc:Verify device base function SetBtnTouch
310  * @tc.type: FUNC
311  * @tc.require:
312  */
313 HWTEST_F(DeviceBaseTest, Test_SetBtnTouch, TestSize.Level1)
314 {
315     InputEventArray inputEventArray = {};
316     int64_t blockTime = 10;
317     int32_t value = 10;
318     DeviceBaseDemo deviceBaseDemo;
319     deviceBaseDemo.SetBtnTouch(inputEventArray, blockTime, value);
320     EXPECT_GT(inputEventArray.events.size(), 0);
321     if (inputEventArray.events.size() <= 0) {
322         return;
323     }
324     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
325     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOUCH);
326     EXPECT_EQ(inputEventArray.events[0].event.value, value);
327     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
328 }
329 
330 /**
331  * @tc.name:Test_SetEvAbsX
332  * @tc.desc:Verify device base function SetEvAbsX
333  * @tc.type: FUNC
334  * @tc.require:
335  */
336 HWTEST_F(DeviceBaseTest, Test_SetEvAbsX, TestSize.Level1)
337 {
338     InputEventArray inputEventArray = {};
339     int64_t blockTime = 10;
340     int32_t value = 10;
341     DeviceBaseDemo deviceBaseDemo;
342     deviceBaseDemo.SetEvAbsX(inputEventArray, blockTime, value);
343     EXPECT_GT(inputEventArray.events.size(), 0);
344     if (inputEventArray.events.size() <= 0) {
345         return;
346     }
347     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
348     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_X);
349     EXPECT_EQ(inputEventArray.events[0].event.value, value);
350     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
351 }
352 
353 /**
354  * @tc.name:Test_SetEvAbsY
355  * @tc.desc:Verify device base function SetEvAbsY
356  * @tc.type: FUNC
357  * @tc.require:
358  */
359 HWTEST_F(DeviceBaseTest, Test_SetEvAbsY, TestSize.Level1)
360 {
361     InputEventArray inputEventArray = {};
362     int64_t blockTime = 10;
363     int32_t value = 10;
364     DeviceBaseDemo deviceBaseDemo;
365     deviceBaseDemo.SetEvAbsY(inputEventArray, blockTime, value);
366     EXPECT_GT(inputEventArray.events.size(), 0);
367     if (inputEventArray.events.size() <= 0) {
368         return;
369     }
370     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
371     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_Y);
372     EXPECT_EQ(inputEventArray.events[0].event.value, value);
373     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
374 }
375 
376 /**
377  * @tc.name:Test_SetMtTouchOneFingerType
378  * @tc.desc:Verify device base function SetMtTouchFingerType
379  * @tc.type: FUNC
380  * @tc.require:
381  */
382 HWTEST_F(DeviceBaseTest, Test_SetMtTouchOneFingerType, TestSize.Level1)
383 {
384     InputEventArray inputEventArray = {};
385     int64_t blockTime = 10;
386     int32_t value = 1;
387     int32_t status = 1;
388     DeviceBaseDemo deviceBaseDemo;
389     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
390     EXPECT_GT(inputEventArray.events.size(), 0);
391     if (inputEventArray.events.size() <= 0) {
392         return;
393     }
394     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
395     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_FINGER);
396     EXPECT_EQ(inputEventArray.events[0].event.value, status);
397     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
398 }
399 
400 /**
401  * @tc.name:Test_SetMtTouchTwoFingerType
402  * @tc.desc:Verify device base function SetMtTouchFingerType
403  * @tc.type: FUNC
404  * @tc.require:
405  */
406 HWTEST_F(DeviceBaseTest, Test_SetMtTouchTwoFingerType, TestSize.Level1)
407 {
408     InputEventArray inputEventArray = {};
409     int64_t blockTime = 10;
410     int32_t value = 2;
411     int32_t status = 1;
412     DeviceBaseDemo deviceBaseDemo;
413     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
414     EXPECT_GT(inputEventArray.events.size(), 0);
415     if (inputEventArray.events.size() <= 0) {
416         return;
417     }
418     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
419     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_DOUBLETAP);
420     EXPECT_EQ(inputEventArray.events[0].event.value, status);
421     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
422 }
423 
424 /**
425  * @tc.name:Test_SetMtTouchThreeFingerType
426  * @tc.desc:Verify device base function SetMtTouchFingerType
427  * @tc.type: FUNC
428  * @tc.require:
429  */
430 HWTEST_F(DeviceBaseTest, Test_SetMtTouchThreeFingerType, TestSize.Level1)
431 {
432     InputEventArray inputEventArray = {};
433     int64_t blockTime = 10;
434     int32_t status = 1;
435     int32_t value = 3;
436     DeviceBaseDemo deviceBaseDemo;
437     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
438     EXPECT_GT(inputEventArray.events.size(), 0);
439     if (inputEventArray.events.size() <= 0) {
440         return;
441     }
442     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_TRIPLETAP);
443     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
444     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
445     EXPECT_EQ(inputEventArray.events[0].event.value, status);
446 }
447 
448 /**
449  * @tc.name:Test_SetMtTouchFourFingerType
450  * @tc.desc:Verify device base function SetMtTouchFingerType
451  * @tc.type: FUNC
452  * @tc.require:
453  */
454 HWTEST_F(DeviceBaseTest, Test_SetMtTouchFourFingerType, TestSize.Level1)
455 {
456     InputEventArray inputEventArray = {};
457     int64_t blockTime = 10;
458     int32_t value = 4;
459     int32_t status = 1;
460     DeviceBaseDemo deviceBaseDemo;
461     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
462     EXPECT_GT(inputEventArray.events.size(), 0);
463     if (inputEventArray.events.size() <= 0) {
464         return;
465     }
466     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
467     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_QUADTAP);
468     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
469     EXPECT_EQ(inputEventArray.events[0].event.value, status);
470 }
471 
472 /**
473  * @tc.name:Test_SetMtTouchFiveFingerType
474  * @tc.desc:Verify device base function SetMtTouchFingerType
475  * @tc.type: FUNC
476  * @tc.require:
477  */
478 HWTEST_F(DeviceBaseTest, Test_SetMtTouchFiveFingerType, TestSize.Level1)
479 {
480     InputEventArray inputEventArray = {};
481     int64_t blockTime = 10;
482     int32_t value = 5;
483     int32_t status = 1;
484     DeviceBaseDemo deviceBaseDemo;
485     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
486     EXPECT_GT(inputEventArray.events.size(), 0);
487     if (inputEventArray.events.size() <= 0) {
488         return;
489     }
490     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_QUINTTAP);
491     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
492     EXPECT_EQ(inputEventArray.events[0].event.value, status);
493     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
494 }
495 
496 /**
497  * @tc.name:Test_SetMtTouchOtherFingerType
498  * @tc.desc:Verify device base function SetMtTouchFingerType
499  * @tc.type: FUNC
500  * @tc.require:
501  */
502 HWTEST_F(DeviceBaseTest, Test_SetMtTouchOtherFingerType, TestSize.Level1)
503 {
504     InputEventArray inputEventArray = {};
505     int32_t value = 6;
506     int32_t status = 1;
507     int64_t blockTime = 10;
508     DeviceBaseDemo deviceBaseDemo;
509     deviceBaseDemo.SetMtTouchFingerType(inputEventArray, blockTime, value, status);
510     EXPECT_GT(inputEventArray.events.size(), 0);
511     if (inputEventArray.events.size() <= 0) {
512         return;
513     }
514     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_FINGER);
515     EXPECT_EQ(inputEventArray.events[0].event.value, status);
516     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
517     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
518 }
519 
520 /**
521  * @tc.name:Test_SetEvAbsZ
522  * @tc.desc:Verify device base function SetEvAbsZ
523  * @tc.type: FUNC
524  * @tc.require:
525  */
526 HWTEST_F(DeviceBaseTest, Test_SetEvAbsZ, TestSize.Level1)
527 {
528     InputEventArray inputEventArray = {};
529     int64_t blockTime = 10;
530     int32_t value = 5;
531     DeviceBaseDemo deviceBaseDemo;
532     deviceBaseDemo.SetEvAbsZ(inputEventArray, blockTime, value);
533     EXPECT_GT(inputEventArray.events.size(), 0);
534     if (inputEventArray.events.size() <= 0) {
535         return;
536     }
537     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
538     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_Z);
539     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
540     EXPECT_EQ(inputEventArray.events[0].event.value, value);
541 }
542 
543 /**
544  * @tc.name:Test_SetEvAbsRx
545  * @tc.desc:Verify device base function SetEvAbsRx
546  * @tc.type: FUNC
547  * @tc.require:
548  */
549 HWTEST_F(DeviceBaseTest, Test_SetEvAbsRx, TestSize.Level1)
550 {
551     InputEventArray inputEventArray = {};
552     int32_t value = 5;
553     int64_t blockTime = 10;
554     DeviceBaseDemo deviceBaseDemo;
555     deviceBaseDemo.SetEvAbsRx(inputEventArray, blockTime, value);
556     EXPECT_GT(inputEventArray.events.size(), 0);
557     if (inputEventArray.events.size() <= 0) {
558         return;
559     }
560     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
561     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_RX);
562     EXPECT_EQ(inputEventArray.events[0].event.value, value);
563     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
564 }
565 
566 /**
567  * @tc.name:Test_SetEvAbsRy
568  * @tc.desc:Verify device base function SetEvAbsRy
569  * @tc.type: FUNC
570  * @tc.require:
571  */
572 HWTEST_F(DeviceBaseTest, Test_SetEvAbsRy, TestSize.Level1)
573 {
574     InputEventArray inputEventArray = {};
575     int64_t blockTime = 10;
576     int32_t value = 5;
577     DeviceBaseDemo deviceBaseDemo;
578     deviceBaseDemo.SetEvAbsRy(inputEventArray, blockTime, value);
579     EXPECT_GT(inputEventArray.events.size(), 0);
580     if (inputEventArray.events.size() <= 0) {
581         return;
582     }
583     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_RY);
584     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
585     EXPECT_EQ(inputEventArray.events[0].event.value, value);
586     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
587 }
588 
589 /**
590  * @tc.name:Test_SetEvAbsHat0X
591  * @tc.desc:Verify device base function SetEvAbsHat0X
592  * @tc.type: FUNC
593  * @tc.require:
594  */
595 HWTEST_F(DeviceBaseTest, Test_SetEvAbsHat0X, TestSize.Level1)
596 {
597     InputEventArray inputEventArray = {};
598     int64_t blockTime = 10;
599     int32_t value = 5;
600     DeviceBaseDemo deviceBaseDemo;
601     deviceBaseDemo.SetEvAbsHat0X(inputEventArray, blockTime, value);
602     EXPECT_GT(inputEventArray.events.size(), 0);
603     if (inputEventArray.events.size() <= 0) {
604         return;
605     }
606     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
607     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_HAT0X);
608     EXPECT_EQ(inputEventArray.events[0].event.value, value);
609     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
610 }
611 
612 /**
613  * @tc.name:Test_SetEvAbsHat0Y
614  * @tc.desc:Verify device base function SetEvAbsHat0Y
615  * @tc.type: FUNC
616  * @tc.require:
617  */
618 HWTEST_F(DeviceBaseTest, Test_SetEvAbsHat0Y, TestSize.Level1)
619 {
620     InputEventArray inputEventArray = {};
621     int64_t blockTime = 10;
622     int32_t value = 5;
623     DeviceBaseDemo deviceBaseDemo;
624     deviceBaseDemo.SetEvAbsHat0Y(inputEventArray, blockTime, value);
625     EXPECT_GT(inputEventArray.events.size(), 0);
626     if (inputEventArray.events.size() <= 0) {
627         return;
628     }
629     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
630     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_HAT0Y);
631     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
632     EXPECT_EQ(inputEventArray.events[0].event.value, value);
633 }
634 
635 /**
636  * @tc.name:Test_SetEvAbsRz
637  * @tc.desc:Verify device base function SetEvAbsRz
638  * @tc.type: FUNC
639  * @tc.require:
640  */
641 HWTEST_F(DeviceBaseTest, Test_SetEvAbsRz, TestSize.Level1)
642 {
643     InputEventArray inputEventArray = {};
644     int64_t blockTime = 10;
645     int32_t value = 5;
646     DeviceBaseDemo deviceBaseDemo;
647     deviceBaseDemo.SetEvAbsRz(inputEventArray, blockTime, value);
648     EXPECT_GT(inputEventArray.events.size(), 0);
649     if (inputEventArray.events.size() <= 0) {
650         return;
651     }
652     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_RZ);
653     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
654     EXPECT_EQ(inputEventArray.events[0].event.value, value);
655     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
656 }
657 
658 /**
659  * @tc.name:Test_SetEvAbs
660  * @tc.desc:Verify device base function SetEvAbs
661  * @tc.type: FUNC
662  * @tc.require:
663  */
664 HWTEST_F(DeviceBaseTest, Test_SetEvAbs, TestSize.Level1)
665 {
666     InputEventArray inputEventArray = {};
667     int64_t blockTime = 10;
668     int32_t value = 5;
669     uint16_t code = 0;
670     DeviceBaseDemo deviceBaseDemo;
671     deviceBaseDemo.SetEvAbs(inputEventArray, blockTime, code, value);
672     EXPECT_GT(inputEventArray.events.size(), 0);
673     if (inputEventArray.events.size() <= 0) {
674         return;
675     }
676     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
677     EXPECT_EQ(inputEventArray.events[0].event.code, code);
678     EXPECT_EQ(inputEventArray.events[0].event.value, value);
679     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
680 }
681 
682 /**
683  * @tc.name:Test_SetRelX
684  * @tc.desc:Verify device base function SetRelX
685  * @tc.type: FUNC
686  * @tc.require:
687  */
688 HWTEST_F(DeviceBaseTest, Test_SetRelX, TestSize.Level1)
689 {
690     InputEventArray inputEventArray = {};
691     int64_t blockTime = 10;
692     int32_t value = 5;
693     DeviceBaseDemo deviceBaseDemo;
694     deviceBaseDemo.SetRelX(inputEventArray, blockTime, value);
695     EXPECT_GT(inputEventArray.events.size(), 0);
696     if (inputEventArray.events.size() <= 0) {
697         return;
698     }
699     EXPECT_EQ(inputEventArray.events[0].event.type, EV_REL);
700     EXPECT_EQ(inputEventArray.events[0].event.code, REL_X);
701     EXPECT_EQ(inputEventArray.events[0].event.value, value);
702     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
703 }
704 
705 /**
706  * @tc.name:Test_SetRelY
707  * @tc.desc:Verify device base function SetRelY
708  * @tc.type: FUNC
709  * @tc.require:
710  */
711 HWTEST_F(DeviceBaseTest, Test_SetRelY, TestSize.Level1)
712 {
713     InputEventArray inputEventArray = {};
714     int64_t blockTime = 10;
715     int32_t value = 5;
716     DeviceBaseDemo deviceBaseDemo;
717     deviceBaseDemo.SetRelY(inputEventArray, blockTime, value);
718     EXPECT_GT(inputEventArray.events.size(), 0);
719     if (inputEventArray.events.size() <= 0) {
720         return;
721     }
722     EXPECT_EQ(inputEventArray.events[0].event.type, EV_REL);
723     EXPECT_EQ(inputEventArray.events[0].event.code, REL_Y);
724     EXPECT_EQ(inputEventArray.events[0].event.value, value);
725     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
726 }
727 
728 /**
729  * @tc.name:Test_SetRelWheel
730  * @tc.desc:Verify device base function SetRelWheel
731  * @tc.type: FUNC
732  * @tc.require:
733  */
734 HWTEST_F(DeviceBaseTest, Test_SetRelWheel, TestSize.Level1)
735 {
736     InputEventArray inputEventArray = {};
737     int64_t blockTime = 10;
738     int32_t value = 5;
739     DeviceBaseDemo deviceBaseDemo;
740     deviceBaseDemo.SetRelWheel(inputEventArray, blockTime, value);
741     EXPECT_GT(inputEventArray.events.size(), 0);
742     if (inputEventArray.events.size() <= 0) {
743         return;
744     }
745     EXPECT_EQ(inputEventArray.events[0].event.type, EV_REL);
746     EXPECT_EQ(inputEventArray.events[0].event.code, REL_WHEEL);
747     EXPECT_EQ(inputEventArray.events[0].event.value, value);
748     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
749 }
750 
751 /**
752  * @tc.name:Test_SetRelHwheel
753  * @tc.desc:Verify device base function SetRelHwheel
754  * @tc.type: FUNC
755  * @tc.require:
756  */
757 HWTEST_F(DeviceBaseTest, Test_SetRelHwheel, TestSize.Level1)
758 {
759     InputEventArray inputEventArray = {};
760     int64_t blockTime = 10;
761     int32_t value = 5;
762     DeviceBaseDemo deviceBaseDemo;
763     deviceBaseDemo.SetRelHwheel(inputEventArray, blockTime, value);
764     EXPECT_GT(inputEventArray.events.size(), 0);
765     if (inputEventArray.events.size() <= 0) {
766         return;
767     }
768     EXPECT_EQ(inputEventArray.events[0].event.type, EV_REL);
769     EXPECT_EQ(inputEventArray.events[0].event.code, REL_HWHEEL);
770     EXPECT_EQ(inputEventArray.events[0].event.value, value);
771     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
772 }
773 
774 /**
775  * @tc.name:Test_SetEvAbsWheel
776  * @tc.desc:Verify device base function SetEvAbsWheel
777  * @tc.type: FUNC
778  * @tc.require:
779  */
780 HWTEST_F(DeviceBaseTest, Test_SetEvAbsWheel, TestSize.Level1)
781 {
782     InputEventArray inputEventArray = {};
783     int64_t blockTime = 10;
784     int32_t value = 5;
785     DeviceBaseDemo deviceBaseDemo;
786     deviceBaseDemo.SetEvAbsWheel(inputEventArray, blockTime, value);
787     EXPECT_GT(inputEventArray.events.size(), 0);
788     if (inputEventArray.events.size() <= 0) {
789         return;
790     }
791     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
792     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_WHEEL);
793     EXPECT_EQ(inputEventArray.events[0].event.value, value);
794     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
795 }
796 
797 /**
798  * @tc.name:Test_SetAbsMiscStartStatus
799  * @tc.desc:Verify device base function SetAbsMisc
800  * @tc.type: FUNC
801  * @tc.require:
802  */
803 HWTEST_F(DeviceBaseTest, Test_SetAbsMiscStartStatus, TestSize.Level1)
804 {
805     InputEventArray inputEventArray = {};
806     int64_t blockTime = 10;
807     int32_t value = 1;
808     DeviceBaseDemo deviceBaseDemo;
809     deviceBaseDemo.SetAbsMisc(inputEventArray, blockTime, value);
810     EXPECT_GT(inputEventArray.events.size(), 0);
811     if (inputEventArray.events.size() <= 0) {
812         return;
813     }
814     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
815     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MISC);
816     EXPECT_EQ(inputEventArray.events[0].event.value, 15);
817     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
818 }
819 
820 /**
821  * @tc.name:Test_SetAbsMiscEndStatus
822  * @tc.desc:Verify device base function SetAbsMisc
823  * @tc.type: FUNC
824  * @tc.require:
825  */
826 HWTEST_F(DeviceBaseTest, Test_SetAbsMiscEndStatus, TestSize.Level1)
827 {
828     InputEventArray inputEventArray = {};
829     int64_t blockTime = 10;
830     int32_t value = 2;
831     DeviceBaseDemo deviceBaseDemo;
832     deviceBaseDemo.SetAbsMisc(inputEventArray, blockTime, value);
833     EXPECT_GT(inputEventArray.events.size(), 0);
834     if (inputEventArray.events.size() <= 0) {
835         return;
836     }
837     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
838     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_MISC);
839     EXPECT_EQ(inputEventArray.events[0].event.value, 0);
840     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
841 }
842 
843 /**
844  * @tc.name:Test_SetAbsTiltX
845  * @tc.desc:Verify device base function SetAbsTiltX
846  * @tc.type: FUNC
847  * @tc.require:
848  */
849 HWTEST_F(DeviceBaseTest, Test_SetAbsTiltX, TestSize.Level1)
850 {
851     InputEventArray inputEventArray = {};
852     int64_t blockTime = 10;
853     int32_t value = 20;
854     DeviceBaseDemo deviceBaseDemo;
855     deviceBaseDemo.SetAbsTiltX(inputEventArray, blockTime, value);
856     EXPECT_GT(inputEventArray.events.size(), 0);
857     if (inputEventArray.events.size() <= 0) {
858         return;
859     }
860     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
861     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_TILT_X);
862     EXPECT_EQ(inputEventArray.events[0].event.value, value);
863     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
864 }
865 
866 /**
867  * @tc.name:Test_SetAbsTiltY
868  * @tc.desc:Verify device base function SetAbsTiltY
869  * @tc.type: FUNC
870  * @tc.require:
871  */
872 HWTEST_F(DeviceBaseTest, Test_SetAbsTiltY, TestSize.Level1)
873 {
874     InputEventArray inputEventArray = {};
875     int64_t blockTime = 10;
876     int32_t value = 20;
877     DeviceBaseDemo deviceBaseDemo;
878     deviceBaseDemo.SetAbsTiltY(inputEventArray, blockTime, value);
879     EXPECT_GT(inputEventArray.events.size(), 0);
880     if (inputEventArray.events.size() <= 0) {
881         return;
882     }
883     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
884     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_TILT_Y);
885     EXPECT_EQ(inputEventArray.events[0].event.value, value);
886     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
887 }
888 
889 /**
890  * @tc.name:Test_SetAbsPressure
891  * @tc.desc:Verify device base function SetAbsPressure
892  * @tc.type: FUNC
893  * @tc.require:
894  */
895 HWTEST_F(DeviceBaseTest, Test_SetAbsPressure, TestSize.Level1)
896 {
897     InputEventArray inputEventArray = {};
898     int64_t blockTime = 10;
899     int32_t value = 20;
900     DeviceBaseDemo deviceBaseDemo;
901     deviceBaseDemo.SetAbsPressure(inputEventArray, blockTime, value);
902     EXPECT_GT(inputEventArray.events.size(), 0);
903     if (inputEventArray.events.size() <= 0) {
904         return;
905     }
906     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
907     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_PRESSURE);
908     EXPECT_EQ(inputEventArray.events[0].event.value, value);
909     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
910 }
911 
912 /**
913  * @tc.name:Test_SetAbsDistance
914  * @tc.desc:Verify device base function SetAbsDistance
915  * @tc.type: FUNC
916  * @tc.require:
917  */
918 HWTEST_F(DeviceBaseTest, Test_SetAbsDistance, TestSize.Level1)
919 {
920     InputEventArray inputEventArray = {};
921     int64_t blockTime = 10;
922     int32_t value = 20;
923     DeviceBaseDemo deviceBaseDemo;
924     deviceBaseDemo.SetAbsDistance(inputEventArray, blockTime, value);
925     EXPECT_GT(inputEventArray.events.size(), 0);
926     if (inputEventArray.events.size() <= 0) {
927         return;
928     }
929     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
930     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_DISTANCE);
931     EXPECT_EQ(inputEventArray.events[0].event.value, value);
932     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
933 }
934 
935 /**
936  * @tc.name:Test_SetBtnPen
937  * @tc.desc:Verify device base function SetBtnPen
938  * @tc.type: FUNC
939  * @tc.require:
940  */
941 HWTEST_F(DeviceBaseTest, Test_SetBtnPen, TestSize.Level1)
942 {
943     InputEventArray inputEventArray = {};
944     int64_t blockTime = 10;
945     int32_t value = 20;
946     DeviceBaseDemo deviceBaseDemo;
947     deviceBaseDemo.SetBtnPen(inputEventArray, blockTime, value);
948     EXPECT_GT(inputEventArray.events.size(), 0);
949     if (inputEventArray.events.size() <= 0) {
950         return;
951     }
952     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
953     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_PEN);
954     EXPECT_EQ(inputEventArray.events[0].event.value, value);
955     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
956 }
957 
958 /**
959  * @tc.name:Test_SetBtnStylus
960  * @tc.desc:Verify device base function SetBtnStylus
961  * @tc.type: FUNC
962  * @tc.require:
963  */
964 HWTEST_F(DeviceBaseTest, Test_SetBtnStylus, TestSize.Level1)
965 {
966     InputEventArray inputEventArray = {};
967     int64_t blockTime = 10;
968     int32_t value = 20;
969     uint16_t code = BTN_STYLUS;
970     DeviceBaseDemo deviceBaseDemo;
971     deviceBaseDemo.SetBtnStylus(inputEventArray, blockTime, code, value);
972     EXPECT_GT(inputEventArray.events.size(), 0);
973     if (inputEventArray.events.size() <= 0) {
974         return;
975     }
976     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
977     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_STYLUS);
978     EXPECT_EQ(inputEventArray.events[0].event.value, value);
979     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
980 }
981 
982 /**
983  * @tc.name:Test_SetBtnRubber
984  * @tc.desc:Verify device base function SetBtnRubber
985  * @tc.type: FUNC
986  * @tc.require:
987  */
988 HWTEST_F(DeviceBaseTest, Test_SetBtnRubber, TestSize.Level1)
989 {
990     InputEventArray inputEventArray = {};
991     int64_t blockTime = 10;
992     int32_t value = 20;
993     DeviceBaseDemo deviceBaseDemo;
994     deviceBaseDemo.SetBtnRubber(inputEventArray, blockTime, value);
995     EXPECT_GT(inputEventArray.events.size(), 0);
996     if (inputEventArray.events.size() <= 0) {
997         return;
998     }
999     EXPECT_EQ(inputEventArray.events[0].event.type, EV_KEY);
1000     EXPECT_EQ(inputEventArray.events[0].event.code, BTN_TOOL_RUBBER);
1001     EXPECT_EQ(inputEventArray.events[0].event.value, value);
1002     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
1003 }
1004 
1005 /**
1006  * @tc.name:Test_SetMscSerial
1007  * @tc.desc:Verify device base function SetMscSerial
1008  * @tc.type: FUNC
1009  * @tc.require:
1010  */
1011 HWTEST_F(DeviceBaseTest, Test_SetMscSerial, TestSize.Level1)
1012 {
1013     InputEventArray inputEventArray = {};
1014     int64_t blockTime = 10;
1015     int32_t value = 20;
1016     DeviceBaseDemo deviceBaseDemo;
1017     deviceBaseDemo.SetMscSerial(inputEventArray, blockTime, value);
1018     EXPECT_GT(inputEventArray.events.size(), 0);
1019     if (inputEventArray.events.size() <= 0) {
1020         return;
1021     }
1022     EXPECT_EQ(inputEventArray.events[0].event.type, EV_MSC);
1023     EXPECT_EQ(inputEventArray.events[0].event.code, MSC_SERIAL);
1024     EXPECT_EQ(inputEventArray.events[0].event.value, value);
1025     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
1026 }
1027 
1028 /**
1029  * @tc.name:Test_SetSynMtReport
1030  * @tc.desc:Verify device base function SetSynMtReport
1031  * @tc.type: FUNC
1032  * @tc.require:
1033  */
1034 HWTEST_F(DeviceBaseTest, Test_SetSynMtReport, TestSize.Level1)
1035 {
1036     InputEventArray inputEventArray = {};
1037     int64_t blockTime = 10;
1038     int32_t value = 0;
1039     DeviceBaseDemo deviceBaseDemo;
1040     deviceBaseDemo.SetSynMtReport(inputEventArray, blockTime, value);
1041     EXPECT_GT(inputEventArray.events.size(), 0);
1042     if (inputEventArray.events.size() <= 0) {
1043         return;
1044     }
1045     EXPECT_EQ(inputEventArray.events[0].event.type, EV_SYN);
1046     EXPECT_EQ(inputEventArray.events[0].event.code, SYN_MT_REPORT);
1047     EXPECT_EQ(inputEventArray.events[0].event.value, value);
1048     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
1049 }
1050 
1051 /**
1052  * @tc.name:Test_SetThrottle
1053  * @tc.desc:Verify device base function SetThrottle
1054  * @tc.type: FUNC
1055  * @tc.require:
1056  */
1057 HWTEST_F(DeviceBaseTest, Test_SetThrottle, TestSize.Level1)
1058 {
1059     InputEventArray inputEventArray = {};
1060     int64_t blockTime = 10;
1061     int32_t value = 0;
1062     DeviceBaseDemo deviceBaseDemo;
1063     deviceBaseDemo.SetThrottle(inputEventArray, blockTime, value);
1064     EXPECT_GT(inputEventArray.events.size(), 0);
1065     if (inputEventArray.events.size() <= 0) {
1066         return;
1067     }
1068     EXPECT_EQ(inputEventArray.events[0].event.type, EV_ABS);
1069     EXPECT_EQ(inputEventArray.events[0].event.code, ABS_THROTTLE);
1070     EXPECT_EQ(inputEventArray.events[0].event.value, value);
1071     EXPECT_EQ(inputEventArray.events[0].blockTime, blockTime);
1072 }
1073 } // namespace MMI
1074 } // namespace OHOS