1 /* 2 * Copyright (c) 2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #include "gtest/gtest.h" 17 #include "event_listener.h" 18 #include <linux/input.h> 19 #include "dock/input_device.h" 20 21 using namespace testing::ext; 22 using namespace Updater; 23 24 namespace { 25 class UpdaterUiControlUnittest : public testing::Test { 26 public: 27 KeyListener *keyListener; 28 OHOS::UIView *view; 29 SetUpTestCase(void)30 static void SetUpTestCase(void) {} TearDownTestCase(void)31 static void TearDownTestCase(void) {} SetUp()32 void SetUp() override 33 { 34 keyListener = new KeyListener(); 35 view = new OHOS::UIView(); 36 } TearDown()37 void TearDown() override 38 { 39 delete keyListener; 40 keyListener = nullptr; 41 delete view; 42 view = nullptr; 43 } 44 }; 45 46 HWTEST_F(UpdaterUiControlUnittest, OnKeyAct01, TestSize.Level0) 47 { 48 OHOS::KeyEvent *event = new OHOS::KeyEvent(KEY_POWER, OHOS::InputDevice::STATE_PRESS); 49 bool ret = keyListener->OnKeyAct(*view, *event); 50 EXPECT_EQ(ret, true); 51 if (event != nullptr) { 52 delete event; 53 event = nullptr; 54 } 55 } 56 57 HWTEST_F(UpdaterUiControlUnittest, OnKeyAct02, TestSize.Level0) 58 { 59 OHOS::KeyEvent *event = new OHOS::KeyEvent(KEY_VOLUMEUP, OHOS::InputDevice::STATE_PRESS); 60 bool ret = keyListener->OnKeyAct(*view, *event); 61 EXPECT_EQ(ret, true); 62 if (event != nullptr) { 63 delete event; 64 event = nullptr; 65 } 66 } 67 68 HWTEST_F(UpdaterUiControlUnittest, OnKeyAct03, TestSize.Level0) 69 { 70 OHOS::KeyEvent *event = new OHOS::KeyEvent(KEY_VOLUMEDOWN, OHOS::InputDevice::STATE_PRESS); 71 bool ret = keyListener->OnKeyAct(*view, *event); 72 EXPECT_EQ(ret, true); 73 if (event != nullptr) { 74 delete event; 75 event = nullptr; 76 } 77 } 78 79 HWTEST_F(UpdaterUiControlUnittest, OnKeyAct04, TestSize.Level0) 80 { 81 OHOS::KeyEvent *event = new OHOS::KeyEvent(100, OHOS::InputDevice::STATE_PRESS); 82 bool ret = keyListener->OnKeyAct(*view, *event); 83 EXPECT_EQ(ret, false); 84 if (event != nullptr) { 85 delete event; 86 event = nullptr; 87 } 88 } 89 }