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 19 #include "accessibility_element_operator_stub.h" 20 21 using namespace testing; 22 using namespace testing::ext; 23 using namespace std; 24 25 namespace OHOS { 26 namespace Accessibility { 27 class AccessibilityInteractionStubUnitTest : public ::testing::Test { 28 public: 29 sptr<AccessibilityElementOperatorStub> mockStub_ = nullptr; 30 AccessibilityElementOperatorStub::CallbackImpl callback_ {}; AccessibilityInteractionStubUnitTest()31 AccessibilityInteractionStubUnitTest() {} ~AccessibilityInteractionStubUnitTest()32 ~AccessibilityInteractionStubUnitTest() {} 33 SetUpTestCase()34 static void SetUpTestCase() 35 { 36 GTEST_LOG_(INFO) << "AccessibilityInteractionStubUnitTest Start"; 37 } TearDownTestCase()38 static void TearDownTestCase() 39 { 40 GTEST_LOG_(INFO) << "AccessibilityInteractionStubUnitTest End"; 41 } SetUp()42 void SetUp() 43 { 44 GTEST_LOG_(INFO) << "AccessibilityInteractionStubUnitTest SetUp() Start"; 45 mockStub_ = new AccessibilityElementOperatorStub(); 46 GTEST_LOG_(INFO) << "AccessibilityInteractionStubUnitTest SetUp() End"; 47 }; TearDown()48 void TearDown() 49 { 50 GTEST_LOG_(INFO) << "AccessibilityInteractionStubUnitTest TearDown()"; 51 mockStub_ = nullptr; 52 } 53 }; 54 55 /** 56 * @tc.number: OnRemoteRequest_001 57 * @tc.name: OnRemoteRequest 58 * @tc.desc: Test function OnRemoteRequest 59 */ 60 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_001, TestSize.Level1) 61 { 62 GTEST_LOG_(INFO) << "OnRemoteRequest_001 start"; 63 // Not set descriptor 64 MessageParcel data; 65 MessageParcel reply; 66 MessageOption option; 67 68 int res = mockStub_->OnRemoteRequest( 69 static_cast<uint32_t>(IAccessibilityElementOperator::Message::SEARCH_BY_ACCESSIBILITY_ID), 70 data, reply, option); 71 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 72 GTEST_LOG_(INFO) << "OnRemoteRequest_001 end"; 73 } 74 75 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_002, TestSize.Level1) 76 { 77 GTEST_LOG_(INFO) << "OnRemoteRequest_002 start"; 78 // Not set descriptor 79 MessageParcel data; 80 MessageParcel reply; 81 MessageOption option; 82 83 int res = mockStub_->OnRemoteRequest(static_cast<uint32_t>( 84 IAccessibilityElementOperator::Message::SEARCH_BY_TEXT), data, reply, option); 85 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 86 GTEST_LOG_(INFO) << "OnRemoteRequest_002 end"; 87 } 88 89 /** 90 * @tc.number: OnRemoteRequest_003 91 * @tc.name: OnRemoteRequest 92 * @tc.desc: Test function OnRemoteRequest 93 */ 94 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_003, TestSize.Level1) 95 { 96 GTEST_LOG_(INFO) << "OnRemoteRequest_003 start"; 97 // Not set descriptor 98 MessageParcel data; 99 MessageParcel reply; 100 MessageOption option; 101 102 int res = mockStub_->OnRemoteRequest( 103 static_cast<uint32_t>(IAccessibilityElementOperator::Message::FIND_FOCUSED_INFO), data, reply, option); 104 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 105 GTEST_LOG_(INFO) << "OnRemoteRequest_003 end"; 106 } 107 108 /** 109 * @tc.number: OnRemoteRequest_004 110 * @tc.name: OnRemoteRequest 111 * @tc.desc: Test function OnRemoteRequest 112 */ 113 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_004, TestSize.Level1) 114 { 115 GTEST_LOG_(INFO) << "OnRemoteRequest_004 start"; 116 // Not set descriptor 117 MessageParcel data; 118 MessageParcel reply; 119 MessageOption option; 120 121 int res = mockStub_->OnRemoteRequest( 122 static_cast<uint32_t>(IAccessibilityElementOperator::Message::FOCUS_FIND), data, reply, option); 123 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 124 GTEST_LOG_(INFO) << "OnRemoteRequest_004 end"; 125 } 126 127 /** 128 * @tc.number: OnRemoteRequest_005 129 * @tc.name: OnRemoteRequest 130 * @tc.desc: Test function OnRemoteRequest 131 */ 132 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_005, TestSize.Level1) 133 { 134 GTEST_LOG_(INFO) << "OnRemoteRequest_005 start"; 135 // Not set descriptor 136 MessageParcel data; 137 MessageParcel reply; 138 MessageOption option; 139 140 int res = mockStub_->OnRemoteRequest( 141 static_cast<uint32_t>(IAccessibilityElementOperator::Message::PERFORM_ACTION), data, reply, option); 142 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 143 GTEST_LOG_(INFO) << "OnRemoteRequest_005 end"; 144 } 145 146 /** 147 * @tc.number: OnRemoteRequest_006 148 * @tc.name: OnRemoteRequest 149 * @tc.desc: Test function OnRemoteRequest 150 */ 151 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_006, TestSize.Level1) 152 { 153 GTEST_LOG_(INFO) << "OnRemoteRequest_006 start"; 154 // Not set descriptor 155 MessageParcel data; 156 MessageParcel reply; 157 MessageOption option; 158 159 int res = mockStub_->OnRemoteRequest( 160 static_cast<uint32_t>(IAccessibilityElementOperator::Message::CLEAR_FOCUS), data, reply, option); 161 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 162 GTEST_LOG_(INFO) << "OnRemoteRequest_006 end"; 163 } 164 165 /** 166 * @tc.number: OnRemoteRequest_007 167 * @tc.name: OnRemoteRequest 168 * @tc.desc: Test function OnRemoteRequest 169 */ 170 HWTEST_F(AccessibilityInteractionStubUnitTest, OnRemoteRequest_007, TestSize.Level1) 171 { 172 GTEST_LOG_(INFO) << "OnRemoteRequest_007 start"; 173 // Not set descriptor 174 MessageParcel data; 175 MessageParcel reply; 176 MessageOption option; 177 178 int res = mockStub_->OnRemoteRequest( 179 static_cast<uint32_t>(IAccessibilityElementOperator::Message::OUTSIDE_TOUCH), data, reply, option); 180 EXPECT_EQ(res, OHOS::Accessibility::ERR_INVALID_STATE); 181 GTEST_LOG_(INFO) << "OnRemoteRequest_007 end"; 182 } 183 184 /** 185 * @tc.number: SearchElementInfoByAccessibilityId_001 186 * @tc.name: SearchElementInfoByAccessibilityId 187 * @tc.desc: Test function SearchElementInfoByAccessibilityId 188 */ 189 HWTEST_F(AccessibilityInteractionStubUnitTest, SearchElementInfoByAccessibilityId_001, TestSize.Level1) 190 { 191 GTEST_LOG_(INFO) << "SearchElementInfoByAccessibilityId_001 start"; 192 193 mockStub_->SearchElementInfoByAccessibilityId(1, 1, nullptr, 0); 194 GTEST_LOG_(INFO) << "SearchElementInfoByAccessibilityId_001 end"; 195 } 196 197 /** 198 * @tc.number: SearchElementInfosByText_001 199 * @tc.name: SearchElementInfosByText 200 * @tc.desc: Test function SearchElementInfosByText 201 */ 202 HWTEST_F(AccessibilityInteractionStubUnitTest, SearchElementInfosByText_001, TestSize.Level1) 203 { 204 GTEST_LOG_(INFO) << "SearchElementInfosByText_001 start"; 205 206 std::string str = "test"; 207 mockStub_->SearchElementInfosByText(1, str, 1, nullptr); 208 GTEST_LOG_(INFO) << "SearchElementInfosByText_001 end"; 209 } 210 211 /** 212 * @tc.number: FindFocusedElementInfo_001 213 * @tc.name: FindFocusedElementInfo 214 * @tc.desc: Test function FindFocusedElementInfo 215 */ 216 HWTEST_F(AccessibilityInteractionStubUnitTest, FindFocusedElementInfo_001, TestSize.Level1) 217 { 218 GTEST_LOG_(INFO) << "FindFocusedElementInfo_001 start"; 219 220 mockStub_->FindFocusedElementInfo(1, 1, 1, nullptr); 221 GTEST_LOG_(INFO) << "FindFocusedElementInfo_001 end"; 222 } 223 224 /** 225 * @tc.number: FocusMoveSearch_001 226 * @tc.name: FocusMoveSearch 227 * @tc.desc: Test function FocusMoveSearch 228 */ 229 HWTEST_F(AccessibilityInteractionStubUnitTest, FocusMoveSearch_001, TestSize.Level1) 230 { 231 GTEST_LOG_(INFO) << "FocusMoveSearch_001 start"; 232 233 mockStub_->FocusMoveSearch(1, 1, 1, nullptr); 234 GTEST_LOG_(INFO) << "FocusMoveSearch_001 end"; 235 } 236 237 /** 238 * @tc.number: ExecuteAction_001 239 * @tc.name: ExecuteAction 240 * @tc.desc: Test function ExecuteAction 241 */ 242 HWTEST_F(AccessibilityInteractionStubUnitTest, ExecuteAction_001, TestSize.Level1) 243 { 244 GTEST_LOG_(INFO) << "ExecuteAction_001 start"; 245 246 std::map<std::string, std::string> actionArguments; 247 mockStub_->ExecuteAction(1, 1, actionArguments, 1, nullptr); 248 GTEST_LOG_(INFO) << "ExecuteAction_001 end"; 249 } 250 251 /** 252 * @tc.number: ClearFocus_001 253 * @tc.name: ClearFocus 254 * @tc.desc: Test function ClearFocus 255 */ 256 HWTEST_F(AccessibilityInteractionStubUnitTest, ClearFocus_001, TestSize.Level1) 257 { 258 GTEST_LOG_(INFO) << "ClearFocus_001 start"; 259 260 mockStub_->ClearFocus(); 261 GTEST_LOG_(INFO) << "ClearFocus_001 end"; 262 } 263 264 /** 265 * @tc.number: OutsideTouch_001 266 * @tc.name: OutsideTouch 267 * @tc.desc: Test function OutsideTouch 268 */ 269 HWTEST_F(AccessibilityInteractionStubUnitTest, OutsideTouch_001, TestSize.Level1) 270 { 271 GTEST_LOG_(INFO) << "OutsideTouch_001 start"; 272 273 mockStub_->OutsideTouch(); 274 GTEST_LOG_(INFO) << "OutsideTouch_001 end"; 275 } 276 277 /** 278 * @tc.number: OutsideTouch_001 279 * @tc.name: SetSearchElementInfoByAccessibilityIdResult 280 * @tc.desc: Test function SetSearchElementInfoByAccessibilityIdResult 281 */ 282 HWTEST_F(AccessibilityInteractionStubUnitTest, SetSearchElementInfoByAccessibilityIdResult_001, TestSize.Level1) 283 { 284 GTEST_LOG_(INFO) << "SetSearchElementInfoByAccessibilityIdResult_001 start"; 285 286 std::list<AccessibilityElementInfo> infos; 287 AccessibilityElementInfo info {}; 288 infos.push_back(info); 289 callback_.SetSearchElementInfoByAccessibilityIdResult(infos, 1); 290 GTEST_LOG_(INFO) << "SetSearchElementInfoByAccessibilityIdResult_001 end"; 291 } 292 293 /** 294 * @tc.number: SetSearchElementInfoByTextResult_001 295 * @tc.name: SetSearchElementInfoByTextResult 296 * @tc.desc: Test function SetSearchElementInfoByTextResult 297 */ 298 HWTEST_F(AccessibilityInteractionStubUnitTest, SetSearchElementInfoByTextResult_001, TestSize.Level1) 299 { 300 GTEST_LOG_(INFO) << "SetSearchElementInfoByTextResult_001 start"; 301 302 std::list<AccessibilityElementInfo> infos; 303 AccessibilityElementInfo info {}; 304 infos.push_back(info); 305 callback_.SetSearchElementInfoByTextResult(infos, 1); 306 GTEST_LOG_(INFO) << "SetSearchElementInfoByTextResult_001 end"; 307 } 308 309 /** 310 * @tc.number: SetFindFocusedElementInfoResult_001 311 * @tc.name: SetFindFocusedElementInfoResult 312 * @tc.desc: Test function SetFindFocusedElementInfoResult 313 */ 314 HWTEST_F(AccessibilityInteractionStubUnitTest, SetFindFocusedElementInfoResult_001, TestSize.Level1) 315 { 316 GTEST_LOG_(INFO) << "SetFindFocusedElementInfoResult_001 start"; 317 AccessibilityElementInfo info {}; 318 callback_.SetFindFocusedElementInfoResult(info, 1); 319 GTEST_LOG_(INFO) << "SetFindFocusedElementInfoResult_001 end"; 320 } 321 322 /** 323 * @tc.number: SetFocusMoveSearchResult_001 324 * @tc.name: SetFocusMoveSearchResult 325 * @tc.desc: Test function SetFocusMoveSearchResult 326 */ 327 HWTEST_F(AccessibilityInteractionStubUnitTest, SetFocusMoveSearchResult_001, TestSize.Level1) 328 { 329 GTEST_LOG_(INFO) << "SetFocusMoveSearchResult_001 start"; 330 331 AccessibilityElementInfo info {}; 332 callback_.SetFocusMoveSearchResult(info, 1); 333 GTEST_LOG_(INFO) << "SetFocusMoveSearchResult_001 end"; 334 } 335 336 /** 337 * @tc.number: SetExecuteActionResult_001 338 * @tc.name: SetExecuteActionResult 339 * @tc.desc: Test function SetExecuteActionResult 340 */ 341 HWTEST_F(AccessibilityInteractionStubUnitTest, SetExecuteActionResult_001, TestSize.Level1) 342 { 343 GTEST_LOG_(INFO) << "SetExecuteActionResult_001 start"; 344 345 callback_.SetExecuteActionResult(true, 1); 346 GTEST_LOG_(INFO) << "SetExecuteActionResult_001 end"; 347 } 348 } // namespace Accessibility 349 } // namespace OHOS