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