1 /* 2 * Copyright (c) 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 18 #include <fstream> 19 20 #include "event_monitor_handler.h" 21 #include "mmi_log.h" 22 23 namespace OHOS { 24 namespace MMI { 25 namespace { 26 using namespace testing::ext; 27 } // namespace 28 29 class EventMonitorHandlerTest : public testing::Test { 30 public: SetUpTestCase(void)31 static void SetUpTestCase(void) {} TearDownTestCase(void)32 static void TearDownTestCase(void) {} 33 }; 34 35 /** 36 * @tc.name: EventMonitorHandlerTest_OnHandleEvent_001 37 * @tc.desc: Test OnHandleEvent 38 * @tc.type: FUNC 39 * @tc.require: 40 */ 41 HWTEST_F(EventMonitorHandlerTest, EventMonitorHandlerTest_OnHandleEvent_001, TestSize.Level1) 42 { 43 EventMonitorHandler eventMonitorHandler; 44 auto keyEvent = KeyEvent::Create(); 45 eventMonitorHandler.HandleKeyEvent(keyEvent); 46 ASSERT_EQ(eventMonitorHandler.OnHandleEvent(keyEvent), false); 47 auto pointerEvent = PointerEvent::Create(); 48 eventMonitorHandler.HandlePointerEvent(pointerEvent); 49 ASSERT_EQ(eventMonitorHandler.OnHandleEvent(pointerEvent), false); 50 51 eventMonitorHandler.HandleTouchEvent(pointerEvent); 52 PointerEvent::PointerItem item; 53 item.SetDeviceId(1); 54 item.SetPointerId(0); 55 item.SetDisplayX(523); 56 item.SetDisplayY(723); 57 item.SetPressure(5); 58 pointerEvent->AddPointerItem(item); 59 item.SetDisplayY(610); 60 item.SetPointerId(1); 61 item.SetDeviceId(1); 62 item.SetPressure(7); 63 item.SetDisplayX(600); 64 pointerEvent->AddPointerItem(item); 65 pointerEvent->SetPointerAction(PointerEvent::POINTER_ACTION_MOVE); 66 pointerEvent->SetPointerId(1); 67 pointerEvent->SetSourceType(PointerEvent::SOURCE_TYPE_TOUCHSCREEN); 68 69 keyEvent->SetKeyCode(KeyEvent::KEYCODE_BACK); 70 keyEvent->SetActionTime(100); 71 keyEvent->SetKeyAction(KeyEvent::KEY_ACTION_DOWN); 72 keyEvent->ActionToString(KeyEvent::KEY_ACTION_DOWN); 73 keyEvent->KeyCodeToString(KeyEvent::KEYCODE_BACK); 74 KeyEvent::KeyItem part; 75 part.SetKeyCode(KeyEvent::KEYCODE_BACK); 76 part.SetDownTime(100); 77 part.SetPressed(true); 78 part.SetUnicode(0); 79 keyEvent->AddKeyItem(part); 80 81 eventMonitorHandler.HandlePointerEvent(pointerEvent); 82 eventMonitorHandler.HandleTouchEvent(pointerEvent); 83 ASSERT_EQ(eventMonitorHandler.OnHandleEvent(keyEvent), false); 84 ASSERT_EQ(eventMonitorHandler.OnHandleEvent(pointerEvent), false); 85 } 86 87 } // namespace MMI 88 } // namespace OHOS 89