1 /* 2 * Copyright (C) 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 #include <memory> 18 #include "accessibility_window_info.h" 19 20 using namespace testing; 21 using namespace testing::ext; 22 23 namespace OHOS { 24 namespace Accessibility { 25 constexpr int32_t INNER_WINDOW_ID = 2; 26 constexpr int64_t UI_NODE_ID = 2; 27 28 class AccessibilityWindowInfoUnitTest : public ::testing::Test { 29 public: AccessibilityWindowInfoUnitTest()30 AccessibilityWindowInfoUnitTest() 31 {} ~AccessibilityWindowInfoUnitTest()32 ~AccessibilityWindowInfoUnitTest() 33 {} SetUpTestCase()34 static void SetUpTestCase() 35 { 36 GTEST_LOG_(INFO) << "AccessibilityWindowInfoUnitTest Start"; 37 } TearDownTestCase()38 static void TearDownTestCase() 39 { 40 GTEST_LOG_(INFO) << "AccessibilityWindowInfoUnitTest End"; 41 } SetUp()42 void SetUp() 43 { 44 GTEST_LOG_(INFO) << "AccessibilityWindowInfoUnitTest SetUp() Start"; 45 windowInfo_ = std::make_shared<AccessibilityWindowInfo>(); 46 GTEST_LOG_(INFO) << "AccessibilityWindowInfoUnitTest SetUp() End"; 47 }; TearDown()48 void TearDown() 49 { 50 GTEST_LOG_(INFO) << "AccessibilityWindowInfoUnitTest TearDown()"; 51 windowInfo_ = nullptr; 52 } 53 54 std::shared_ptr<AccessibilityWindowInfo> windowInfo_ = nullptr; 55 }; 56 57 /** 58 * @tc.number: SetAccessibilityWindowType_001 59 * @tc.name: SetAccessibilityWindowType 60 * @tc.desc: Test function SetAccessibilityWindowType 61 */ 62 HWTEST_F(AccessibilityWindowInfoUnitTest, SetAccessibilityWindowType_001, TestSize.Level1) 63 { 64 GTEST_LOG_(INFO) << "SetAccessibilityWindowType_001 start"; 65 if (!windowInfo_) { 66 GTEST_LOG_(INFO) << "windowInfo_ is null"; 67 } else { 68 windowInfo_->SetAccessibilityWindowType(AccessibilityWindowType::TYPE_APPLICATION); 69 EXPECT_EQ(windowInfo_->GetAccessibilityWindowType(), AccessibilityWindowType::TYPE_APPLICATION); 70 } 71 GTEST_LOG_(INFO) << "SetAccessibilityWindowType_001 end"; 72 } 73 74 /** 75 * @tc.number: SetWindowLayer_001 76 * @tc.name: SetWindowLayer 77 * @tc.desc: Test function SetWindowLayer 78 */ 79 HWTEST_F(AccessibilityWindowInfoUnitTest, SetWindowLayer_001, TestSize.Level1) 80 { 81 GTEST_LOG_(INFO) << "SetWindowLayer_001 start"; 82 if (!windowInfo_) { 83 GTEST_LOG_(INFO) << "windowInfo_ is null"; 84 } else { 85 windowInfo_->SetWindowLayer(1); 86 EXPECT_EQ(windowInfo_->GetWindowLayer(), 1); 87 } 88 GTEST_LOG_(INFO) << "SetWindowLayer_001 end"; 89 } 90 91 /** 92 * @tc.number: SetWindowId_001 93 * @tc.name: SetWindowId 94 * @tc.desc: Test function SetWindowId 95 */ 96 HWTEST_F(AccessibilityWindowInfoUnitTest, SetWindowId_001, TestSize.Level1) 97 { 98 GTEST_LOG_(INFO) << "SetWindowId_001 start"; 99 if (!windowInfo_) { 100 GTEST_LOG_(INFO) << "windowInfo_ is null"; 101 } else { 102 windowInfo_->SetWindowId(1); 103 EXPECT_EQ(windowInfo_->GetWindowId(), 1); 104 } 105 GTEST_LOG_(INFO) << "SetWindowId_001 end"; 106 } 107 108 /** 109 * @tc.number: SetRectInScreen_001 110 * @tc.name: SetRectInScreen 111 * @tc.desc: Test function SetRectInScreen 112 */ 113 HWTEST_F(AccessibilityWindowInfoUnitTest, SetRectInScreen_001, TestSize.Level1) 114 { 115 GTEST_LOG_(INFO) << "SetRectInScreen_001 start"; 116 if (!windowInfo_) { 117 GTEST_LOG_(INFO) << "windowInfo_ is null"; 118 } else { 119 Rect boundParam(1, 1, 2, 2); 120 windowInfo_->SetRectInScreen(boundParam); 121 Rect boundRet = windowInfo_->GetRectInScreen(); 122 EXPECT_EQ(boundRet.GetLeftTopXScreenPostion(), 1); 123 EXPECT_EQ(boundRet.GetLeftTopYScreenPostion(), 1); 124 EXPECT_EQ(boundRet.GetRightBottomXScreenPostion(), 2); 125 EXPECT_EQ(boundRet.GetRightBottomYScreenPostion(), 2); 126 } 127 GTEST_LOG_(INFO) << "SetRectInScreen_001 end"; 128 } 129 130 /** 131 * @tc.number: SetActive_001 132 * @tc.name: SetActive 133 * @tc.desc: Test function SetActive 134 */ 135 HWTEST_F(AccessibilityWindowInfoUnitTest, SetActive_001, TestSize.Level1) 136 { 137 GTEST_LOG_(INFO) << "SetActive_001 start"; 138 if (!windowInfo_) { 139 GTEST_LOG_(INFO) << "windowInfo_ is null"; 140 } else { 141 windowInfo_->SetActive(true); 142 EXPECT_TRUE(windowInfo_->IsActive()); 143 } 144 GTEST_LOG_(INFO) << "SetActive_001 end"; 145 } 146 147 /** 148 * @tc.number: SetFocused_001 149 * @tc.name: SetFocused 150 * @tc.desc: Test function SetFocused 151 */ 152 HWTEST_F(AccessibilityWindowInfoUnitTest, SetFocused_001, TestSize.Level1) 153 { 154 GTEST_LOG_(INFO) << "SetFocused_001 start"; 155 if (!windowInfo_) { 156 GTEST_LOG_(INFO) << "windowInfo_ is null"; 157 } else { 158 windowInfo_->SetFocused(true); 159 EXPECT_TRUE(windowInfo_->IsFocused()); 160 } 161 GTEST_LOG_(INFO) << "SetFocused_001 end"; 162 } 163 164 /** 165 * @tc.number: SetAccessibilityFocused_001 166 * @tc.name: SetAccessibilityFocused 167 * @tc.desc: Test function SetAccessibilityFocused 168 */ 169 HWTEST_F(AccessibilityWindowInfoUnitTest, SetAccessibilityFocused_001, TestSize.Level1) 170 { 171 GTEST_LOG_(INFO) << "SetAccessibilityFocused_001 start"; 172 if (!windowInfo_) { 173 GTEST_LOG_(INFO) << "windowInfo_ is null"; 174 } else { 175 windowInfo_->SetAccessibilityFocused(true); 176 EXPECT_TRUE(windowInfo_->IsAccessibilityFocused()); 177 } 178 GTEST_LOG_(INFO) << "SetAccessibilityFocused_001 end"; 179 } 180 181 /** 182 * @tc.number: SetDisplayId_001 183 * @tc.name: SetDisplayId 184 * @tc.desc: Test function SetDisplayId 185 */ 186 HWTEST_F(AccessibilityWindowInfoUnitTest, SetDisplayId_001, TestSize.Level1) 187 { 188 GTEST_LOG_(INFO) << "SetDisplayId_001 start"; 189 if (!windowInfo_) { 190 GTEST_LOG_(INFO) << "windowInfo_ is null"; 191 } else { 192 windowInfo_->SetDisplayId(100); 193 EXPECT_EQ(windowInfo_->GetDisplayId(), 100); 194 } 195 GTEST_LOG_(INFO) << "SetDisplayId_001 end"; 196 } 197 198 /** 199 * @tc.number: SetWindowType_001 200 * @tc.name: SetWindowType 201 * @tc.desc: Test function SetWindowType 202 */ 203 HWTEST_F(AccessibilityWindowInfoUnitTest, SetWindowType_001, TestSize.Level1) 204 { 205 GTEST_LOG_(INFO) << "SetWindowType_001 start"; 206 if (!windowInfo_) { 207 GTEST_LOG_(INFO) << "windowInfo_ is null"; 208 } else { 209 windowInfo_->SetWindowType(1); 210 EXPECT_EQ(windowInfo_->GetWindowType(), 1); 211 } 212 GTEST_LOG_(INFO) << "SetWindowType_001 end"; 213 } 214 215 /** 216 * @tc.number: SetWindowMode_001 217 * @tc.name: SetWindowMode 218 * @tc.desc: Test function SetWindowMode 219 */ 220 HWTEST_F(AccessibilityWindowInfoUnitTest, SetWindowMode_001, TestSize.Level1) 221 { 222 GTEST_LOG_(INFO) << "SetWindowMode_001 start"; 223 if (!windowInfo_) { 224 GTEST_LOG_(INFO) << "windowInfo_ is null"; 225 } else { 226 windowInfo_->SetWindowMode(1); 227 EXPECT_EQ(windowInfo_->GetWindowMode(), 1); 228 } 229 GTEST_LOG_(INFO) << "SetWindowMode_001 end"; 230 } 231 232 /** 233 * @tc.number: SetDecorEnable_001 234 * @tc.name: SetDecorEnable 235 * @tc.desc: Test function SetDecorEnable 236 */ 237 HWTEST_F(AccessibilityWindowInfoUnitTest, SetDecorEnable_001, TestSize.Level1) 238 { 239 GTEST_LOG_(INFO) << "SetDecorEnable_001 start"; 240 if (!windowInfo_) { 241 GTEST_LOG_(INFO) << "windowInfo_ is null"; 242 } else { 243 windowInfo_->SetDecorEnable(true); 244 EXPECT_TRUE(windowInfo_->IsDecorEnable()); 245 } 246 GTEST_LOG_(INFO) << "SetDecorEnable_001 end"; 247 } 248 249 /** 250 * @tc.number: GetInnerWid_001 251 * @tc.name: GetInnerWid 252 * @tc.desc: Test function GetInnerWid 253 */ 254 HWTEST_F(AccessibilityWindowInfoUnitTest, GetInnerWid_001, TestSize.Level1) 255 { 256 GTEST_LOG_(INFO) << "GetInnerWid_001 start"; 257 if (!windowInfo_) { 258 GTEST_LOG_(INFO) << "windowInfo_ is null"; 259 } else { 260 windowInfo_->SetInnerWid(INNER_WINDOW_ID); 261 EXPECT_EQ(windowInfo_->GetInnerWid(), INNER_WINDOW_ID); 262 } 263 GTEST_LOG_(INFO) << "GetInnerWid_001 end"; 264 } 265 266 /** 267 * @tc.number: GetUiNodeId_001 268 * @tc.name: GetUiNodeId 269 * @tc.desc: Test function GetUiNodeId 270 */ 271 HWTEST_F(AccessibilityWindowInfoUnitTest, GetUiNodeId_001, TestSize.Level1) 272 { 273 GTEST_LOG_(INFO) << "GetUiNodeId_001 start"; 274 if (!windowInfo_) { 275 GTEST_LOG_(INFO) << "windowInfo_ is null"; 276 } else { 277 windowInfo_->SetUiNodeId(UI_NODE_ID); 278 EXPECT_EQ(windowInfo_->GetUiNodeId(), UI_NODE_ID); 279 } 280 GTEST_LOG_(INFO) << "GetUiNodeId_001 end"; 281 } 282 283 /** 284 * @tc.number: GetScaleVal_001 285 * @tc.name: GetScaleVal 286 * @tc.desc: Test function GetScaleVal 287 */ 288 HWTEST_F(AccessibilityWindowInfoUnitTest, GetScaleVal_001, TestSize.Level1) 289 { 290 GTEST_LOG_(INFO) << "GetScaleVal_001 start"; 291 if (!windowInfo_) { 292 GTEST_LOG_(INFO) << "windowInfo_ is null"; 293 } else { 294 windowInfo_->SetScaleVal(1.1); 295 EXPECT_FLOAT_EQ(windowInfo_->GetScaleVal(), 1.1f); 296 } 297 GTEST_LOG_(INFO) << "GetScaleVal_001 end"; 298 } 299 300 /** 301 * @tc.number: GetScaleX_001 302 * @tc.name: GetScaleX 303 * @tc.desc: Test function GetScaleX 304 */ 305 HWTEST_F(AccessibilityWindowInfoUnitTest, GetScaleX_001, TestSize.Level1) 306 { 307 GTEST_LOG_(INFO) << "GetScaleX_001 start"; 308 if (!windowInfo_) { 309 GTEST_LOG_(INFO) << "windowInfo_ is null"; 310 } else { 311 windowInfo_->SetScaleX(1.1); 312 EXPECT_FLOAT_EQ(windowInfo_->GetScaleX(), 1.1f); 313 } 314 GTEST_LOG_(INFO) << "GetScaleX_001 end"; 315 } 316 317 /** 318 * @tc.number: GetScaleY_001 319 * @tc.name: GetScaleY 320 * @tc.desc: Test function GetScaleY 321 */ 322 HWTEST_F(AccessibilityWindowInfoUnitTest, GetScaleY_001, TestSize.Level1) 323 { 324 GTEST_LOG_(INFO) << "GetScaleY_001 start"; 325 if (!windowInfo_) { 326 GTEST_LOG_(INFO) << "windowInfo_ is null"; 327 } else { 328 windowInfo_->SetScaleY(1.1); 329 EXPECT_FLOAT_EQ(windowInfo_->GetScaleY(), 1.1f); 330 } 331 GTEST_LOG_(INFO) << "GetScaleY_001 end"; 332 } 333 334 /** 335 * @tc.number: SetMainWindowId_001 336 * @tc.name: SetMainWindowId 337 * @tc.desc: Test function SetMainWindowId 338 */ 339 HWTEST_F(AccessibilityWindowInfoUnitTest, SetMainWindowId_001, TestSize.Level1) 340 { 341 GTEST_LOG_(INFO) << "SetMainWindowId_001 start"; 342 if (!windowInfo_) { 343 GTEST_LOG_(INFO) << "windowInfo_ is null"; 344 } else { 345 windowInfo_->SetMainWindowId(1); 346 EXPECT_EQ(windowInfo_->GetMainWindowId(), 1); 347 } 348 GTEST_LOG_(INFO) << "SetMainWindowId_001 end"; 349 } 350 } // namespace Accessibility 351 } // namespace OHOS