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 <string> 17 #include <vector> 18 #include "gtest/gtest.h" 19 #define private public 20 #define protected public 21 #include "MouseInputImpl.h" 22 #include "MockGlobalResult.h" 23 24 namespace { TEST(MouseInputImplTest,SetMouseStatusTest)25 TEST(MouseInputImplTest, SetMouseStatusTest) 26 { 27 int status = 1; 28 MouseInputImpl::GetInstance().SetMouseStatus(status); 29 EXPECT_EQ(MouseInputImpl::GetInstance().touchAction, status); 30 } 31 TEST(MouseInputImplTest,SetMousePositionTest)32 TEST(MouseInputImplTest, SetMousePositionTest) 33 { 34 double x = 100; 35 double y = 200; 36 MouseInputImpl::GetInstance().SetMousePosition(x, y); 37 EXPECT_EQ(MouseInputImpl::GetInstance().mouseXPosition, x); 38 EXPECT_EQ(MouseInputImpl::GetInstance().mouseYPosition, y); 39 EXPECT_EQ(MouseInputImpl::GetInstance().GetMouseXPosition(), x); 40 EXPECT_EQ(MouseInputImpl::GetInstance().GetMouseYPosition(), y); 41 } 42 TEST(MouseInputImplTest,SetMouseButtonTest)43 TEST(MouseInputImplTest, SetMouseButtonTest) 44 { 45 int btn = 1; 46 MouseInputImpl::GetInstance().SetMouseButton(btn); 47 EXPECT_EQ(MouseInputImpl::GetInstance().pointButton, btn); 48 } 49 TEST(MouseInputImplTest,SetMouseActionTest)50 TEST(MouseInputImplTest, SetMouseActionTest) 51 { 52 int action = 1; 53 MouseInputImpl::GetInstance().SetMouseAction(action); 54 EXPECT_EQ(MouseInputImpl::GetInstance().pointAction, action); 55 } 56 TEST(MouseInputImplTest,SetSourceTypeTest)57 TEST(MouseInputImplTest, SetSourceTypeTest) 58 { 59 int type = 1; 60 MouseInputImpl::GetInstance().SetSourceType(type); 61 EXPECT_EQ(MouseInputImpl::GetInstance().sourceType, type); 62 } 63 TEST(MouseInputImplTest,SetSourceToolTest)64 TEST(MouseInputImplTest, SetSourceToolTest) 65 { 66 int tool = 1; 67 MouseInputImpl::GetInstance().SetSourceTool(tool); 68 EXPECT_EQ(MouseInputImpl::GetInstance().sourceTool, tool); 69 } 70 TEST(MouseInputImplTest,SetPressedBtnsTest)71 TEST(MouseInputImplTest, SetPressedBtnsTest) 72 { 73 std::set<int> pressedBtns; 74 MouseInputImpl::GetInstance().SetPressedBtns(pressedBtns); 75 EXPECT_EQ(MouseInputImpl::GetInstance().pressedBtnsVec, pressedBtns); 76 } 77 TEST(MouseInputImplTest,SetAxisValuesTest)78 TEST(MouseInputImplTest, SetAxisValuesTest) 79 { 80 std::vector<double> axisValues; 81 MouseInputImpl::GetInstance().SetAxisValues(axisValues); 82 EXPECT_EQ(MouseInputImpl::GetInstance().axisValuesArr, axisValues); 83 } 84 TEST(MouseInputImplTest,DispatchOsTouchEventTest)85 TEST(MouseInputImplTest, DispatchOsTouchEventTest) 86 { 87 g_dispatchPointerEvent = false; 88 MouseInputImpl::GetInstance().DispatchOsTouchEvent(); 89 EXPECT_TRUE(g_dispatchPointerEvent); 90 } 91 TEST(MouseInputImplTest,DispatchOsBackEventTest)92 TEST(MouseInputImplTest, DispatchOsBackEventTest) 93 { 94 g_dispatchBackPressedEvent = false; 95 MouseInputImpl::GetInstance().DispatchOsBackEvent(); 96 EXPECT_TRUE(g_dispatchBackPressedEvent); 97 } 98 TEST(MouseInputImplTest,ConvertToOsTypeTest)99 TEST(MouseInputImplTest, ConvertToOsTypeTest) 100 { 101 int typeNum = -1; 102 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::UNKNOWN); 103 104 typeNum = 10; 105 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::UNKNOWN); 106 107 typeNum = 0; 108 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::DOWN); 109 110 typeNum = 1; 111 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::UP); 112 113 typeNum = 2; 114 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::MOVE); 115 116 typeNum = 3; 117 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::CANCEL); 118 119 typeNum = 4; 120 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::PULL_DOWN); 121 122 typeNum = 5; 123 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::PULL_UP); 124 125 typeNum = 6; 126 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::PULL_MOVE); 127 128 typeNum = 7; 129 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::PULL_IN_WINDOW); 130 131 typeNum = 8; 132 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::PULL_OUT_WINDOW); 133 134 typeNum = 9; 135 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsType(typeNum), OHOS::MMI::TouchType::UNKNOWN); 136 } 137 TEST(MouseInputImplTest,ConvertToOsToolTest)138 TEST(MouseInputImplTest, ConvertToOsToolTest) 139 { 140 int typeNum = -1; 141 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::UNKNOWN); 142 143 typeNum = 10; 144 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::UNKNOWN); 145 146 typeNum = 0; 147 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::UNKNOWN); 148 149 typeNum = 1; 150 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::FINGER); 151 152 typeNum = 2; 153 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::PEN); 154 155 typeNum = 3; 156 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::RUBBER); 157 158 typeNum = 4; 159 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::BRUSH); 160 161 typeNum = 5; 162 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::PENCIL); 163 164 typeNum = 6; 165 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::AIRBRUSH); 166 167 typeNum = 7; 168 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::MOUSE); 169 170 typeNum = 8; 171 EXPECT_EQ(MouseInputImpl::GetInstance().ConvertToOsTool(typeNum), OHOS::MMI::SourceTool::LENS); 172 } 173 }