1 /*
2 * Copyright (c) 2022-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 "UTTest_dm_auth_manager_second.h"
17
18 #include "auth_message_processor.h"
19 #include "device_manager_service_listener.h"
20 #include "dm_auth_manager.h"
21 #include "dm_anonymous.h"
22 #include "dm_constants.h"
23 #include "dm_crypto.h"
24 #include "dm_dialog_manager.h"
25 #include "dm_log.h"
26 #include "json_object.h"
27 #include "softbus_error_code.h"
28
29 using namespace testing;
30 using namespace testing::ext;
31 namespace OHOS {
32 namespace DistributedHardware {
SetUp()33 void DmAuthManagerTest::SetUp()
34 {
35 std::shared_ptr<SoftbusConnector> softbusConnector = std::make_shared<SoftbusConnector>();
36 std::shared_ptr<DeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
37 std::shared_ptr<HiChainConnector> hiChainConnector = std::make_shared<HiChainConnector>();
38 std::shared_ptr<HiChainAuthConnector> hiChainAuthConnector = std::make_shared<HiChainAuthConnector>();
39 authManager_ = std::make_shared<DmAuthManager>(softbusConnector, hiChainConnector, listener, hiChainAuthConnector);
40 authManager_->authMessageProcessor_ = std::make_shared<AuthMessageProcessor>(authManager_);
41 authManager_->authMessageProcessor_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
42 authManager_->authMessageProcessor_->authRequestContext_ = std::make_shared<DmAuthRequestContext>();
43 authManager_->authRequestContext_ = std::make_shared<DmAuthRequestContext>();
44 authManager_->authRequestState_ = std::make_shared<AuthRequestFinishState>();
45 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
46 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
47 authManager_->hiChainAuthConnector_ = std::make_shared<HiChainAuthConnector>();
48 authManager_->softbusConnector_ = std::make_shared<SoftbusConnector>();
49 authManager_->softbusConnector_->GetSoftbusSession()->RegisterSessionCallback(
50 std::shared_ptr<ISoftbusSessionCallback>(authManager_));
51 authManager_->timer_ = std::make_shared<DmTimer>();
52 }
TearDown()53 void DmAuthManagerTest::TearDown()
54 {
55 authManager_ = nullptr;
56 }
SetUpTestCase()57 void DmAuthManagerTest::SetUpTestCase()
58 {
59 hiChainConnectorMock_ = std::make_shared<HiChainConnectorMock>();
60 DmHiChainConnector::dmHiChainConnector = hiChainConnectorMock_;
61 multipleUserConnectorMock_ = std::make_shared<MultipleUserConnectorMock>();
62 DmMultipleUserConnector::dmMultipleUserConnector = multipleUserConnectorMock_;
63 softbusConnectorMock_ = std::make_shared<SoftbusConnectorMock>();
64 DmSoftbusConnector::dmSoftbusConnector = softbusConnectorMock_;
65 hiChainAuthConnectorMock_ = std::make_shared<HiChainAuthConnectorMock>();
66 DmHiChainAuthConnector::dmHiChainAuthConnector = hiChainAuthConnectorMock_;
67 deviceProfileConnectorMock_ = std::make_shared<DeviceProfileConnectorMock>();
68 DmDeviceProfileConnector::dmDeviceProfileConnector = deviceProfileConnectorMock_;
69 cryptoMock_ = std::make_shared<CryptoMock>();
70 DmCrypto::dmCrypto = cryptoMock_;
71 }
TearDownTestCase()72 void DmAuthManagerTest::TearDownTestCase()
73 {
74 DmHiChainConnector::dmHiChainConnector = nullptr;
75 hiChainConnectorMock_ = nullptr;
76 DmMultipleUserConnector::dmMultipleUserConnector = nullptr;
77 multipleUserConnectorMock_ = nullptr;
78 DmSoftbusConnector::dmSoftbusConnector = nullptr;
79 softbusConnectorMock_ = nullptr;
80 DmHiChainAuthConnector::dmHiChainAuthConnector = nullptr;
81 hiChainAuthConnectorMock_ = nullptr;
82 DmDeviceProfileConnector::dmDeviceProfileConnector = nullptr;
83 deviceProfileConnectorMock_ = nullptr;
84 DmCrypto::dmCrypto = nullptr;
85 cryptoMock_ = nullptr;
86 }
87
88 namespace {
89 HWTEST_F(DmAuthManagerTest, OnDataReceived_001, testing::ext::TestSize.Level0)
90 {
91 int32_t sessionId = 0;
92 std::string message;
93 authManager_->authResponseContext_ = nullptr;
94 authManager_->OnDataReceived(sessionId, message);
95 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
96 }
97
98 HWTEST_F(DmAuthManagerTest, OnDataReceived_002, testing::ext::TestSize.Level0)
99 {
100 int32_t sessionId = 0;
101 std::string message;
102 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
103 authManager_->authMessageProcessor_ = nullptr;
104 authManager_->OnDataReceived(sessionId, message);
105 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
106 }
107
108 HWTEST_F(DmAuthManagerTest, OnDataReceived_003, testing::ext::TestSize.Level0)
109 {
110 int32_t sessionId = 0;
111 std::string message;
112 authManager_->OnDataReceived(sessionId, message);
113 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
114 }
115
116 HWTEST_F(DmAuthManagerTest, OnDataReceived_007, testing::ext::TestSize.Level0)
117 {
118 int32_t sessionId = 0;
119 JsonObject jsonObject;
120 jsonObject[TAG_MSG_TYPE] = 200;
121 std::string message = SafetyDump(jsonObject);
122 authManager_->OnDataReceived(sessionId, message);
123 authManager_->authRequestState_ = nullptr;
124 authManager_->authResponseState_ = nullptr;
125 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
126 }
127
128 HWTEST_F(DmAuthManagerTest, OnGroupCreated_001, testing::ext::TestSize.Level0)
129 {
130 int64_t requestId = 0;
131 std::string groupId;
132 authManager_->authResponseContext_ = nullptr;
133 authManager_->OnGroupCreated(requestId, groupId);
134 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
135 }
136
137 HWTEST_F(DmAuthManagerTest, OnGroupCreated_002, testing::ext::TestSize.Level0)
138 {
139 int64_t requestId = 0;
140 std::string groupId;
141 authManager_->authResponseState_ = nullptr;
142 authManager_->OnGroupCreated(requestId, groupId);
143 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
144 }
145
146 HWTEST_F(DmAuthManagerTest, OnGroupCreated_003, testing::ext::TestSize.Level0)
147 {
148 int64_t requestId = 0;
149 std::string groupId = "{}";
150 authManager_->OnGroupCreated(requestId, groupId);
151 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
152 }
153
154 HWTEST_F(DmAuthManagerTest, OnGroupCreated_004, testing::ext::TestSize.Level0)
155 {
156 int64_t requestId = 0;
157 std::string groupId = "groupId";
158 authManager_->authResponseContext_->isShowDialog = true;
159 authManager_->OnGroupCreated(requestId, groupId);
160 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
161 }
162
163 HWTEST_F(DmAuthManagerTest, OnGroupCreated_005, testing::ext::TestSize.Level0)
164 {
165 int64_t requestId = 0;
166 std::string groupId = "groupId";
167 authManager_->authResponseContext_->isShowDialog = false;
168 authManager_->OnGroupCreated(requestId, groupId);
169 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
170 }
171
172 HWTEST_F(DmAuthManagerTest, OnMemberJoin_001, testing::ext::TestSize.Level0)
173 {
174 int64_t requestId = 0;
175 int32_t status = 11;
176 authManager_->authResponseContext_ = nullptr;
177 authManager_->OnMemberJoin(requestId, status);
178 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
179 }
180
181 HWTEST_F(DmAuthManagerTest, OnMemberJoin_002, testing::ext::TestSize.Level0)
182 {
183 int64_t requestId = 0;
184 int32_t status = 11;
185 authManager_->authUiStateMgr_ = nullptr;
186 authManager_->OnMemberJoin(requestId, status);
187 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
188 }
189
190 HWTEST_F(DmAuthManagerTest, OnMemberJoin_003, testing::ext::TestSize.Level0)
191 {
192 int64_t requestId = 0;
193 int32_t status = 11;
194 authManager_->authRequestState_ = std::make_shared<AuthRequestJoinState>();
195 authManager_->authResponseState_ = nullptr;
196 authManager_->authResponseContext_->authType = 5;
197 authManager_->OnMemberJoin(requestId, status);
198 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
199 }
200
201 HWTEST_F(DmAuthManagerTest, OnMemberJoin_004, testing::ext::TestSize.Level0)
202 {
203 int64_t requestId = 0;
204 int32_t status = 11;
205 authManager_->authRequestState_ = std::make_shared<AuthRequestJoinState>();
206 authManager_->authResponseState_ = nullptr;
207 authManager_->authResponseContext_->authType = 6;
208 authManager_->authResponseContext_->requestId = 1;
209 authManager_->OnMemberJoin(requestId, status);
210 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
211 }
212
213 HWTEST_F(DmAuthManagerTest, OnMemberJoin_006, testing::ext::TestSize.Level0)
214 {
215 int64_t requestId = 0;
216 int32_t status = 0;
217 authManager_->authRequestState_ = std::make_shared<AuthRequestJoinState>();
218 authManager_->authResponseState_ = nullptr;
219 authManager_->authResponseContext_->authType = 6;
220 authManager_->authResponseContext_->requestId = 0;
221 authManager_->OnMemberJoin(requestId, status);
222 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
223 }
224
225 HWTEST_F(DmAuthManagerTest, OnMemberJoin_007, testing::ext::TestSize.Level0)
226 {
227 int64_t requestId = 0;
228 int32_t status = 0;
229 authManager_->authRequestState_ = nullptr;
230 authManager_->authResponseState_ = std::make_shared<AuthResponseShowState>();
231 authManager_->authResponseContext_->authType = 6;
232 authManager_->authResponseContext_->requestId = 0;
233 authManager_->OnMemberJoin(requestId, status);
234 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
235 }
236
237 HWTEST_F(DmAuthManagerTest, OnMemberJoin_008, testing::ext::TestSize.Level0)
238 {
239 int64_t requestId = 0;
240 int32_t status = 0;
241 authManager_->authRequestState_ = nullptr;
242 authManager_->authResponseState_ = nullptr;
243 authManager_->OnMemberJoin(requestId, status);
244 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
245 }
246
247 HWTEST_F(DmAuthManagerTest, OnMemberJoin_009, testing::ext::TestSize.Level0)
248 {
249 int64_t requestId = 0;
250 int32_t status = DM_OK;
251 authManager_->authRequestState_ = nullptr;
252 authManager_->authTimes_ = 1;
253 std::shared_ptr<AuthResponseInitStateMock> authResponseInitStateMock =
254 std::make_shared<AuthResponseInitStateMock>();
255 EXPECT_CALL(*authResponseInitStateMock, GetStateType())
256 .WillRepeatedly(testing::Return(AuthState::AUTH_RESPONSE_CREDENTIAL));
257 authManager_->authResponseState_ = authResponseInitStateMock;
258 authManager_->authResponseContext_->isFinish = true;
259 authManager_->authResponseContext_->requestId = 0;
260 authManager_->OnMemberJoin(requestId, status);
261 ASSERT_TRUE(authManager_->authResponseContext_->isFinish);
262
263 authManager_->authResponseContext_->isFinish = true;
264 authManager_->authResponseContext_->requestId = 1;
265 authManager_->OnMemberJoin(requestId, status);
266 ASSERT_FALSE(authManager_->authResponseContext_->isFinish);
267
268 authManager_->authResponseContext_->isFinish = true;
269 status = ERR_DM_FAILED;
270 authManager_->OnMemberJoin(requestId, status);
271 ASSERT_FALSE(authManager_->authResponseContext_->isFinish);
272 }
273
274 HWTEST_F(DmAuthManagerTest, HandleMemberJoinImportAuthCode_001, testing::ext::TestSize.Level0)
275 {
276 int64_t requestId = 1;
277 int32_t status = 0;
278 authManager_->authResponseContext_->requestId = 1;
279 authManager_->HandleMemberJoinImportAuthCode(requestId, status);
280 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
281 }
282
283 HWTEST_F(DmAuthManagerTest, HandleMemberJoinImportAuthCode_002, testing::ext::TestSize.Level0)
284 {
285 int64_t requestId = 1;
286 int32_t status = 1;
287 authManager_->authResponseContext_->requestId = 1;
288 authManager_->HandleMemberJoinImportAuthCode(requestId, status);
289 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
290 }
291
292 HWTEST_F(DmAuthManagerTest, HandleMemberJoinImportAuthCode_003, testing::ext::TestSize.Level0)
293 {
294 int64_t requestId = 1;
295 int32_t status = 1;
296 authManager_->authResponseContext_->requestId = 0;
297 authManager_->HandleMemberJoinImportAuthCode(requestId, status);
298 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
299 }
300
301 HWTEST_F(DmAuthManagerTest, HandleMemberJoinImportAuthCode_004, testing::ext::TestSize.Level0)
302 {
303 int64_t requestId = 1;
304 int32_t status = 0;
305 authManager_->authResponseContext_->requestId = 0;
306 authManager_->HandleMemberJoinImportAuthCode(requestId, status);
307 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
308 }
309
310 HWTEST_F(DmAuthManagerTest, RespNegotiate_001, testing::ext::TestSize.Level0)
311 {
312 int64_t requestId = 1;
313 authManager_->authResponseContext_ = nullptr;
314 authManager_->RespNegotiate(requestId);
315 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
316 }
317
318 HWTEST_F(DmAuthManagerTest, RespNegotiate_002, testing::ext::TestSize.Level0)
319 {
320 int64_t requestId = 1;
321 authManager_->RespNegotiate(requestId);
322 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
323 }
324
325 HWTEST_F(DmAuthManagerTest, RespNegotiate_003, testing::ext::TestSize.Level0)
326 {
327 int64_t requestId = 1;
328 authManager_->authRequestState_ = nullptr;
329 authManager_->authResponseContext_->dmVersion = "dmVersion";
330 authManager_->authResponseContext_->bindLevel = 1;
331 authManager_->RespNegotiate(requestId);
332 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
333 }
334
335 HWTEST_F(DmAuthManagerTest, RespNegotiate_004, testing::ext::TestSize.Level0)
336 {
337 int64_t requestId = 1;
338 authManager_->authRequestState_ = nullptr;
339 authManager_->authResponseContext_->dmVersion = "";
340 authManager_->authResponseContext_->bindLevel = 0;
341 authManager_->RespNegotiate(requestId);
342 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
343 }
344
345 HWTEST_F(DmAuthManagerTest, RespNegotiate_005, testing::ext::TestSize.Level0)
346 {
347 int64_t requestId = 1;
348 authManager_->authRequestState_ = std::make_shared<AuthRequestJoinState>();
349 authManager_->authResponseContext_->dmVersion = "4.1.5.1";
350 authManager_->authResponseContext_->bindLevel = 0;
351 authManager_->RespNegotiate(requestId);
352 authManager_->authResponseContext_->dmVersion = "5.0.1";
353 authManager_->authResponseContext_->bindLevel = 1;
354 authManager_->RespNegotiate(requestId);
355 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
356 }
357
358 HWTEST_F(DmAuthManagerTest, SendAuthRequest_001, testing::ext::TestSize.Level0)
359 {
360 int64_t sessionId = 1;
361 authManager_->authResponseContext_ = nullptr;
362 authManager_->SendAuthRequest(sessionId);
363 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
364 }
365
366 HWTEST_F(DmAuthManagerTest, SendAuthRequest_002, testing::ext::TestSize.Level0)
367 {
368 int64_t sessionId = 1;
369 authManager_->authResponseContext_->cryptoSupport = true;
370 authManager_->authResponseContext_->dmVersion = "dmVersion";
371 authManager_->authResponseContext_->bindLevel = 1;
372 authManager_->authResponseContext_->hostPkgName = "hostPkgName";
373 authManager_->authResponseContext_->localDeviceId = "123456789";
374 authManager_->authResponseContext_->deviceId = "deviceId";
375 authManager_->authResponseContext_->reply = -20018;
376 authManager_->SendAuthRequest(sessionId);
377 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
378 }
379
380 HWTEST_F(DmAuthManagerTest, SendAuthRequest_003, testing::ext::TestSize.Level0)
381 {
382 int64_t sessionId = 1;
383 authManager_->authResponseContext_->cryptoSupport = true;
384 authManager_->authResponseContext_->bindLevel = 0;
385 authManager_->authResponseContext_->dmVersion = "dmVersion";
386 authManager_->authResponseContext_->bindLevel = 1;
387 authManager_->authResponseContext_->hostPkgName = "hostPkgName";
388 authManager_->authResponseContext_->localDeviceId = "123456789";
389 authManager_->authResponseContext_->deviceId = "deviceId";
390 authManager_->authResponseContext_->reply = -20018;
391 authManager_->SendAuthRequest(sessionId);
392 authManager_->authResponseContext_->dmVersion = "5.0.1";
393 authManager_->authResponseContext_->bindLevel = 0;
394 authManager_->SendAuthRequest(sessionId);
395 authManager_->authResponseContext_->dmVersion = "";
396 authManager_->authResponseContext_->bindLevel = 1;
397 authManager_->SendAuthRequest(sessionId);
398 authManager_->authResponseContext_->dmVersion = "5.0.1";
399 authManager_->authResponseContext_->bindLevel = 1;
400 authManager_->SendAuthRequest(sessionId);
401 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
402 }
403
404 HWTEST_F(DmAuthManagerTest, GetAuthRequestContext_001, testing::ext::TestSize.Level0)
405 {
406 authManager_->authResponseContext_->localDeviceId = "123456789";
407 authManager_->authResponseContext_->localDeviceId = "123456789";
408 authManager_->authResponseContext_->localAccountId = "123456789";
409 authManager_->authRequestContext_->remoteAccountId = "123456789";
410 authManager_->authRequestContext_->localAccountId = "123456789";
411 authManager_->authResponseContext_->localUserId = 123456789;
412 authManager_->GetAuthRequestContext();
413 authManager_->authResponseContext_->isOnline = false;
414 authManager_->GetAuthRequestContext();
415 authManager_->authResponseContext_->isOnline = true;
416 authManager_->authResponseContext_->haveCredential = true;
417 authManager_->GetAuthRequestContext();
418 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
419 }
420
421 HWTEST_F(DmAuthManagerTest, ProcessAuthRequestExt_001, testing::ext::TestSize.Level0)
422 {
423 int32_t sessionId = 1;
424 authManager_->authResponseContext_->reply = -20018;
425 authManager_->ProcessAuthRequestExt(sessionId);
426 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
427 }
428
429 HWTEST_F(DmAuthManagerTest, ProcessAuthRequestExt_002, testing::ext::TestSize.Level0)
430 {
431 int32_t sessionId = 1;
432 authManager_->authResponseContext_->reply = -200;
433 authManager_->authResponseContext_->isOnline = false;
434 authManager_->authResponseContext_->authed = false;
435 authManager_->authResponseContext_->isIdenticalAccount = true;
436 authManager_->ProcessAuthRequestExt(sessionId);
437 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
438 }
439
440 HWTEST_F(DmAuthManagerTest, ProcessAuthRequestExt_004, testing::ext::TestSize.Level0)
441 {
442 int32_t sessionId = 1;
443 authManager_->authResponseContext_->reply = -200;
444 authManager_->authResponseContext_->authType = 5;
445 authManager_->authResponseContext_->isIdenticalAccount = false;
446 authManager_->authResponseContext_->isAuthCodeReady = false;
447 authManager_->ProcessAuthRequestExt(sessionId);
448 authManager_->authResponseContext_->isOnline = true;
449 authManager_->authResponseContext_->authed = true;
450 authManager_->ProcessAuthRequestExt(sessionId);
451 authManager_->authResponseContext_->authed = false;
452 authManager_->authResponseContext_->isOnline = false;
453 authManager_->ProcessAuthRequestExt(sessionId);
454 authManager_->authResponseContext_->isIdenticalAccount = true;
455 authManager_->ProcessAuthRequestExt(sessionId);
456 authManager_->authResponseContext_->isIdenticalAccount = false;
457 authManager_->authResponseContext_->authed = true;
458 authManager_->ProcessAuthRequestExt(sessionId);
459 authManager_->authResponseContext_->isOnline = true;
460 authManager_->ProcessAuthRequestExt(sessionId);
461 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
462 }
463
464 HWTEST_F(DmAuthManagerTest, ConfirmProcess_001, testing::ext::TestSize.Level0)
465 {
466 int32_t action = 1;
467 authManager_->action_ = 0;
468 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
469 int32_t ret = authManager_->ConfirmProcess(action);
470 ASSERT_EQ(ret, DM_OK);
471 }
472
473 HWTEST_F(DmAuthManagerTest, ConfirmProcess_002, testing::ext::TestSize.Level0)
474 {
475 int32_t action = 1;
476 authManager_->action_ = 6;
477 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
478 int32_t ret = authManager_->ConfirmProcess(action);
479 ASSERT_EQ(ret, DM_OK);
480 }
481
482 HWTEST_F(DmAuthManagerTest, ConfirmProcess_003, testing::ext::TestSize.Level0)
483 {
484 int32_t action = 3;
485 authManager_->action_ = 4;
486 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
487 int32_t ret = authManager_->ConfirmProcess(action);
488 ASSERT_EQ(ret, DM_OK);
489 }
490
491 HWTEST_F(DmAuthManagerTest, ConfirmProcessExt_001, testing::ext::TestSize.Level0)
492 {
493 int32_t action = 1;
494 authManager_->action_ = 0;
495 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
496 authManager_->authResponseContext_->isShowDialog = false;
497 int32_t ret = authManager_->ConfirmProcessExt(action);
498 ASSERT_EQ(ret, DM_OK);
499 }
500
501 HWTEST_F(DmAuthManagerTest, ConfirmProcessExt_002, testing::ext::TestSize.Level0)
502 {
503 int32_t action = 1;
504 authManager_->action_ = 6;
505 authManager_->authResponseState_ = std::make_shared<AuthResponseConfirmState>();
506 authManager_->authResponseContext_->isShowDialog = true;
507 int32_t ret = authManager_->ConfirmProcessExt(action);
508 ASSERT_EQ(ret, DM_OK);
509 }
510
511 HWTEST_F(DmAuthManagerTest, ConfirmProcessExt_003, testing::ext::TestSize.Level0)
512 {
513 int32_t action = 1;
514 authManager_->action_ = 4;
515 int32_t ret = authManager_->ConfirmProcessExt(action);
516 ASSERT_EQ(ret, DM_OK);
517 }
518
519 HWTEST_F(DmAuthManagerTest, StartRespAuthProcess_001, testing::ext::TestSize.Level0)
520 {
521 authManager_->authResponseContext_ = nullptr;
522 authManager_->StartRespAuthProcess();
523 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
524 }
525
526 HWTEST_F(DmAuthManagerTest, StartRespAuthProcess_002, testing::ext::TestSize.Level0)
527 {
528 authManager_->authResponseContext_->groupName = "111111";
529 authManager_->StartRespAuthProcess();
530 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
531 }
532
533 HWTEST_F(DmAuthManagerTest, StartRespAuthProcess_003, testing::ext::TestSize.Level0)
534 {
535 authManager_->authResponseContext_->groupName = "00000";
536 authManager_->StartRespAuthProcess();
537 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
538 }
539
540 HWTEST_F(DmAuthManagerTest, StartRespAuthProcess_004, testing::ext::TestSize.Level0)
541 {
542 authManager_->authResponseContext_->groupName = "00000";
543 authManager_->authResponseContext_->reply = 0;
544 authManager_->StartRespAuthProcess();
545 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
546 }
547
548 HWTEST_F(DmAuthManagerTest, StartRespAuthProcess_005, testing::ext::TestSize.Level0)
549 {
550 authManager_->authResponseContext_->groupName = "11111";
551 authManager_->authResponseContext_->reply = 1;
552 authManager_->StartRespAuthProcess();
553 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
554 }
555
556 HWTEST_F(DmAuthManagerTest, GetConnectAddr_001, testing::ext::TestSize.Level0)
557 {
558 std::string deviceId = "deviceId";
559 auto ret = authManager_->GetConnectAddr(deviceId);
560 ASSERT_EQ(ret.empty(), true);
561 }
562
563 HWTEST_F(DmAuthManagerTest, GetConnectAddr_002, testing::ext::TestSize.Level0)
564 {
565 std::string deviceId = "deviceId";
566 std::shared_ptr<DeviceInfo> infoPtr = std::make_shared<DeviceInfo>();
567 infoPtr->addrNum = 1;
568 authManager_->softbusConnector_->discoveryDeviceInfoMap_.insert(
569 std::pair<std::string, std::shared_ptr<DeviceInfo>>(deviceId, infoPtr));
570 auto ret = authManager_->GetConnectAddr(deviceId);
571 ASSERT_EQ(ret.empty(), false);
572 }
573
574 HWTEST_F(DmAuthManagerTest, SinkAuthenticateFinish_001, testing::ext::TestSize.Level0)
575 {
576 authManager_->authResponseState_ = std::make_shared<AuthResponseFinishState>();
577 authManager_->authPtr_ = authManager_->authenticationMap_[1];
578 authManager_->isFinishOfLocal_ = true;
579 authManager_->SinkAuthenticateFinish();
580 ASSERT_EQ(authManager_->authResponseState_, nullptr);
581 }
582
583 HWTEST_F(DmAuthManagerTest, SrcAuthenticateFinish_001, testing::ext::TestSize.Level0)
584 {
585 authManager_->isFinishOfLocal_ = true;
586 authManager_->authResponseContext_->state = 5;
587 authManager_->authPtr_ = authManager_->authenticationMap_[1];
588 authManager_->SrcAuthenticateFinish();
589 usleep(600);
590 ASSERT_EQ(authManager_->authRequestState_, nullptr);
591 }
592
593 HWTEST_F(DmAuthManagerTest, SrcAuthenticateFinish_002, testing::ext::TestSize.Level0)
594 {
595 authManager_->isFinishOfLocal_ = false;
596 authManager_->authResponseContext_->state = 7;
597 authManager_->authPtr_ = authManager_->authenticationMap_[1];
598 authManager_->SrcAuthenticateFinish();
599 usleep(600);
600 ASSERT_EQ(authManager_->authRequestState_, nullptr);
601 }
602
603 HWTEST_F(DmAuthManagerTest, AuthenticateFinish_001, testing::ext::TestSize.Level0)
604 {
605 authManager_->authResponseContext_ = nullptr;
606 authManager_->AuthenticateFinish();
607 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
608 }
609
610 HWTEST_F(DmAuthManagerTest, AuthenticateFinish_002, testing::ext::TestSize.Level0)
611 {
612 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
613 authManager_->authUiStateMgr_ = nullptr;
614 authManager_->AuthenticateFinish();
615 ASSERT_EQ(authManager_->authUiStateMgr_, nullptr);
616 }
617
618 HWTEST_F(DmAuthManagerTest, AuthenticateFinish_003, testing::ext::TestSize.Level0)
619 {
620 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
621 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
622 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
623 authManager_->authResponseState_ = std::make_shared<AuthResponseFinishState>();
624 authManager_->authRequestState_ = nullptr;
625 authManager_->AuthenticateFinish();
626 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
627 }
628
629 HWTEST_F(DmAuthManagerTest, AuthenticateFinish_004, testing::ext::TestSize.Level0)
630 {
631 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
632 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
633 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
634 authManager_->authResponseState_ = nullptr;
635 authManager_->authRequestState_ = std::make_shared<AuthRequestJoinState>();
636 authManager_->AuthenticateFinish();
637 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
638 }
639
640 HWTEST_F(DmAuthManagerTest, RegisterUiStateCallback_001, testing::ext::TestSize.Level0)
641 {
642 std::string pkgName = "ohos_test";
643 authManager_->authUiStateMgr_ = nullptr;
644 int32_t ret = authManager_->RegisterUiStateCallback(pkgName);
645 ASSERT_EQ(ret, ERR_DM_FAILED);
646 }
647
648 HWTEST_F(DmAuthManagerTest, RegisterUiStateCallback_002, testing::ext::TestSize.Level0)
649 {
650 std::string pkgName = "ohos_test";
651 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
652 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
653 int32_t ret = authManager_->RegisterUiStateCallback(pkgName);
654 ASSERT_EQ(ret, DM_OK);
655 }
656
657 HWTEST_F(DmAuthManagerTest, UnRegisterUiStateCallback_001, testing::ext::TestSize.Level0)
658 {
659 std::string pkgName = "ohos_test";
660 authManager_->authUiStateMgr_ = nullptr;
661 int32_t ret = authManager_->UnRegisterUiStateCallback(pkgName);
662 ASSERT_EQ(ret, ERR_DM_FAILED);
663 }
664
665 HWTEST_F(DmAuthManagerTest, UnRegisterUiStateCallback_002, testing::ext::TestSize.Level0)
666 {
667 std::string pkgName = "ohos_test";
668 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
669 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
670 int32_t ret = authManager_->UnRegisterUiStateCallback(pkgName);
671 ASSERT_EQ(ret, DM_OK);
672 }
673
674 HWTEST_F(DmAuthManagerTest, SetAuthRequestState_001, testing::ext::TestSize.Level0)
675 {
676 std::shared_ptr<AuthRequestState> authRequestState = nullptr;
677 int32_t ret = authManager_->SetAuthRequestState(authRequestState);
678 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
679 }
680
681 HWTEST_F(DmAuthManagerTest, SetAuthRequestState_002, testing::ext::TestSize.Level0)
682 {
683 std::shared_ptr<AuthRequestState> authRequestState = std::make_shared<AuthRequestFinishState>();
684 int32_t ret = authManager_->SetAuthRequestState(authRequestState);
685 ASSERT_EQ(ret, DM_OK);
686 }
687
688 HWTEST_F(DmAuthManagerTest, ShowConfigDialog_001, testing::ext::TestSize.Level0)
689 {
690 authManager_->authResponseContext_ = nullptr;
691 authManager_->ShowConfigDialog();
692 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
693 }
694
695 HWTEST_F(DmAuthManagerTest, ShowConfigDialog_002, testing::ext::TestSize.Level0)
696 {
697 authManager_->authResponseContext_->isShowDialog = false;
698 authManager_->ShowConfigDialog();
699 ASSERT_EQ(authManager_->authResponseContext_->isShowDialog, false);
700 }
701
702 HWTEST_F(DmAuthManagerTest, ShowConfigDialog_003, testing::ext::TestSize.Level0)
703 {
704 authManager_->authResponseContext_->isShowDialog = true;
705 authManager_->ShowConfigDialog();
706 ASSERT_EQ(authManager_->authResponseContext_->isShowDialog, true);
707 }
708
709 HWTEST_F(DmAuthManagerTest, ShowAuthInfoDialog_001, testing::ext::TestSize.Level0)
710 {
711 authManager_->authResponseContext_ = nullptr;
712 authManager_->ShowAuthInfoDialog();
713 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
714 }
715
716 HWTEST_F(DmAuthManagerTest, ShowAuthInfoDialog_002, testing::ext::TestSize.Level0)
717 {
718 authManager_->authResponseContext_->isShowDialog = false;
719 authManager_->ShowAuthInfoDialog();
720 ASSERT_EQ(authManager_->authResponseContext_->isShowDialog, false);
721 }
722
723 HWTEST_F(DmAuthManagerTest, ShowAuthInfoDialog_003, testing::ext::TestSize.Level0)
724 {
725 authManager_->authResponseContext_->isShowDialog = true;
726 authManager_->ShowAuthInfoDialog();
727 ASSERT_EQ(authManager_->authResponseContext_->isShowDialog, true);
728 }
729
730 HWTEST_F(DmAuthManagerTest, ShowStartAuthDialog_001, testing::ext::TestSize.Level0)
731 {
732 authManager_->authResponseContext_ = nullptr;
733 authManager_->ShowStartAuthDialog();
734 ASSERT_EQ(authManager_->authResponseContext_, nullptr);
735 }
736
737 HWTEST_F(DmAuthManagerTest, ShowStartAuthDialog_002, testing::ext::TestSize.Level0)
738 {
739 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
740 authManager_->importAuthCode_ = "";
741 authManager_->importPkgName_ = "";
742 authManager_->ShowStartAuthDialog();
743 ASSERT_EQ(authManager_->authResponseContext_->isShowDialog, false);
744 }
745
746 HWTEST_F(DmAuthManagerTest, ShowStartAuthDialog_003, testing::ext::TestSize.Level0)
747 {
748 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
749 authManager_->importAuthCode_ = "123456";
750 authManager_->importPkgName_ = "hostPkgName";
751 authManager_->authResponseContext_->hostPkgName = "hostPkgName";
752 authManager_->authResponseContext_->dmVersion = "dmVersion";
753 authManager_->authResponseContext_->bindLevel = 1;
754 authManager_->ShowStartAuthDialog();
755 ASSERT_EQ(authManager_->authResponseContext_->bindLevel, 1);
756 }
757
758 HWTEST_F(DmAuthManagerTest, ShowStartAuthDialog_004, testing::ext::TestSize.Level0)
759 {
760 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
761 authManager_->importAuthCode_ = "123456";
762 authManager_->importPkgName_ = "hostPkgName";
763 authManager_->authResponseContext_->hostPkgName = "hostPkgName";
764 authManager_->remoteVersion_ = "4.1.5.2";
765 authManager_->authResponseContext_->bindLevel = DEVICE;
766 authManager_->authResponseContext_->targetDeviceName = "ShowStartAuthDialog_004";
767 authManager_->ShowStartAuthDialog();
768 EXPECT_NE(authManager_->authResponseContext_->targetDeviceName, DmDialogManager::GetInstance().targetDeviceName_);
769
770 authManager_->remoteVersion_ = "4.1.5.2";
771 authManager_->authResponseContext_->bindLevel = APP + 1;
772 authManager_->ShowStartAuthDialog();
773 EXPECT_NE(authManager_->authResponseContext_->targetDeviceName, DmDialogManager::GetInstance().targetDeviceName_);
774
775 authManager_->remoteVersion_ = "4.1.5.2";
776 authManager_->authResponseContext_->bindLevel = INVALIED_TYPE;
777 authManager_->ShowStartAuthDialog();
778 EXPECT_NE(authManager_->authResponseContext_->targetDeviceName, DmDialogManager::GetInstance().targetDeviceName_);
779
780 authManager_->remoteVersion_ = "4.1.5.0";
781 authManager_->ShowStartAuthDialog();
782 EXPECT_NE(authManager_->authResponseContext_->targetDeviceName, DmDialogManager::GetInstance().targetDeviceName_);
783 }
784
785 HWTEST_F(DmAuthManagerTest, ProcessPincode_001, testing::ext::TestSize.Level0)
786 {
787 int32_t pinCode = 123456;
788 authManager_->authResponseContext_ = nullptr;
789 int32_t ret = authManager_->ProcessPincode(pinCode);
790 ASSERT_EQ(ret, ERR_DM_FAILED);
791 }
792
793 HWTEST_F(DmAuthManagerTest, ProcessPincode_002, testing::ext::TestSize.Level0)
794 {
795 int32_t pinCode = 123456;
796 authManager_->authResponseContext_->dmVersion = "dmVersion";
797 authManager_->authResponseContext_->bindLevel = 1;
798 authManager_->isAuthDevice_ = true;
799 int32_t ret = authManager_->ProcessPincode(pinCode);
800 ASSERT_EQ(ret, ERR_DM_ADD_GROUP_FAILED);
801 }
802
803 HWTEST_F(DmAuthManagerTest, ProcessPincode_003, testing::ext::TestSize.Level0)
804 {
805 int32_t pinCode = -1;
806 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
807 authManager_->authUiStateMgr_ = nullptr;
808 authManager_->importAuthCode_ = "123456";
809 authManager_->importPkgName_ = "hostPkgName";
810 authManager_->authResponseContext_->hostPkgName = "hostPkgName";
811 authManager_->remoteVersion_ = "4.1.5.2";
812 authManager_->authResponseContext_->bindLevel = DEVICE;
813 authManager_->authResponseContext_->targetDeviceName = "ShowStartAuthDialog_004";
814 EXPECT_CALL(*hiChainAuthConnectorMock_, AuthDevice(_, _, _, _)).WillOnce(Return(DM_OK));
815 int32_t ret = authManager_->ProcessPincode(pinCode);
816 EXPECT_EQ(ret, DM_OK);
817
818 authManager_->remoteVersion_ = "4.1.5.2";
819 authManager_->authResponseContext_->bindLevel = APP + 1;
820 ret = authManager_->ProcessPincode(pinCode);
821 EXPECT_NE(ret, DM_OK);
822
823 authManager_->remoteVersion_ = "4.1.5.2";
824 authManager_->authResponseContext_->bindLevel = INVALIED_TYPE;
825 ret = authManager_->ProcessPincode(pinCode);
826 EXPECT_NE(ret, DM_OK);
827
828 authManager_->remoteVersion_ = "4.1.5.0";
829 ret = authManager_->ProcessPincode(pinCode);
830 EXPECT_NE(ret, DM_OK);
831 }
832
833 HWTEST_F(DmAuthManagerTest, AuthDevice_001, testing::ext::TestSize.Level0)
834 {
835 int32_t pinCode = 123456;
836 authManager_->isAuthDevice_ = true;
837 int32_t ret = authManager_->AuthDevice(pinCode);
838 ASSERT_EQ(ret, ERR_DM_FAILED);
839 }
840
841 HWTEST_F(DmAuthManagerTest, AuthDevice_002, testing::ext::TestSize.Level0)
842 {
843 int32_t pinCode = 123456;
844 authManager_->isAuthDevice_ = false;
845 authManager_->authResponseContext_->authType = 5;
846 EXPECT_CALL(*hiChainAuthConnectorMock_, AuthDevice(_, _, _, _)).WillOnce(Return(ERR_DM_FAILED));
847 int32_t ret = authManager_->AuthDevice(pinCode);
848 ASSERT_EQ(ret, ERR_DM_FAILED);
849 }
850
851 HWTEST_F(DmAuthManagerTest, ImportAuthCode_001, testing::ext::TestSize.Level0)
852 {
853 std::string authCode = "";
854 std::string pkgName = "pkgName";
855 int32_t ret = authManager_->ImportAuthCode(authCode, pkgName);
856 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
857 }
858
859 HWTEST_F(DmAuthManagerTest, ImportAuthCode_002, testing::ext::TestSize.Level0)
860 {
861 std::string authCode = "123456";
862 std::string pkgName = "";
863 int32_t ret = authManager_->ImportAuthCode(authCode, pkgName);
864 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
865 }
866
867 HWTEST_F(DmAuthManagerTest, ImportAuthCode_003, testing::ext::TestSize.Level0)
868 {
869 std::string authCode = "123456";
870 std::string pkgName = "pkgName";
871 int32_t ret = authManager_->ImportAuthCode(authCode, pkgName);
872 ASSERT_EQ(ret, DM_OK);
873 }
874
875 HWTEST_F(DmAuthManagerTest, BindTarget_001, testing::ext::TestSize.Level0)
876 {
877 std::string pkgName;
878 PeerTargetId targetId;
879 std::map<std::string, std::string> bindParam;
880 int32_t ret = authManager_->BindTarget(pkgName, targetId, bindParam);
881 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
882 }
883
884 HWTEST_F(DmAuthManagerTest, BindTarget_002, testing::ext::TestSize.Level0)
885 {
886 std::string pkgName = "pkgName";
887 PeerTargetId targetId;
888 std::map<std::string, std::string> bindParam;
889 int32_t ret = authManager_->BindTarget(pkgName, targetId, bindParam);
890 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
891 }
892
893 HWTEST_F(DmAuthManagerTest, BindTarget_004, testing::ext::TestSize.Level0)
894 {
895 std::string pkgName = "pkgName";
896 PeerTargetId targetId;
897 targetId.deviceId = "123456";
898 std::map<std::string, std::string> bindParam;
899 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "1"));
900 bindParam.insert(std::pair<std::string, std::string>("CONN_ADDR_TYPE", "3"));
901 int32_t ret = authManager_->BindTarget(pkgName, targetId, bindParam);
902 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
903 }
904
905 HWTEST_F(DmAuthManagerTest, BindTarget_005, testing::ext::TestSize.Level0)
906 {
907 std::string pkgName = "pkgName";
908 PeerTargetId targetId;
909 targetId.deviceId = "";
910 std::map<std::string, std::string> bindParam;
911 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "2"));
912 bindParam.insert(std::pair<std::string, std::string>("CONN_ADDR_TYPE", "3"));
913 int32_t ret = authManager_->BindTarget(pkgName, targetId, bindParam);
914 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
915 }
916
917 HWTEST_F(DmAuthManagerTest, ParseConnectAddr_001, testing::ext::TestSize.Level0)
918 {
919 PeerTargetId targetId;
920 targetId.wifiIp = "12131415";
921 targetId.brMac = "D4G4E5G2B4G";
922 targetId.bleMac = "1463158131321";
923 std::string deviceId;
924 std::string addrType = "123456";
925 int32_t ret = authManager_->ParseConnectAddr(targetId, deviceId, addrType);
926 ASSERT_EQ(ret, DM_OK);
927 }
928
929 HWTEST_F(DmAuthManagerTest, ParseConnectAddr_002, testing::ext::TestSize.Level0)
930 {
931 PeerTargetId targetId;
932 std::string deviceId;
933 std::string addrType;
934 int32_t ret = authManager_->ParseConnectAddr(targetId, deviceId, addrType);
935 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
936 }
937
938 HWTEST_F(DmAuthManagerTest, ParseAuthType_001, testing::ext::TestSize.Level0)
939 {
940 int32_t authType = 0;
941 std::map<std::string, std::string> bindParam;
942 int32_t ret = authManager_->ParseAuthType(bindParam, authType);
943 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
944 }
945
946 HWTEST_F(DmAuthManagerTest, ParseAuthType_002, testing::ext::TestSize.Level0)
947 {
948 int32_t authType = 0;
949 std::map<std::string, std::string> bindParam;
950 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", ""));
951 int32_t ret = authManager_->ParseAuthType(bindParam, authType);
952 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
953 }
954
955 HWTEST_F(DmAuthManagerTest, ParseAuthType_003, testing::ext::TestSize.Level0)
956 {
957 int32_t authType = 0;
958 std::map<std::string, std::string> bindParam;
959 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "12"));
960 int32_t ret = authManager_->ParseAuthType(bindParam, authType);
961 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
962 }
963
964 HWTEST_F(DmAuthManagerTest, ParseAuthType_004, testing::ext::TestSize.Level0)
965 {
966 int32_t authType = 0;
967 std::map<std::string, std::string> bindParam;
968 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "S"));
969 int32_t ret = authManager_->ParseAuthType(bindParam, authType);
970 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
971 }
972
973 HWTEST_F(DmAuthManagerTest, ParseAuthType_005, testing::ext::TestSize.Level0)
974 {
975 int32_t authType = 0;
976 std::map<std::string, std::string> bindParam;
977 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "1"));
978 int32_t ret = authManager_->ParseAuthType(bindParam, authType);
979 ASSERT_EQ(ret, DM_OK);
980 }
981
982 HWTEST_F(DmAuthManagerTest, ParseExtraFromMap_001, testing::ext::TestSize.Level0)
983 {
984 std::map<std::string, std::string> bindParam;
985 bindParam.insert(std::pair<std::string, std::string>("BIND_EXTRA_DATA", "12"));
986 std::string ret = authManager_->ParseExtraFromMap(bindParam);
987 ASSERT_EQ(ret, "12");
988 }
989
990 HWTEST_F(DmAuthManagerTest, ParseExtraFromMap_002, testing::ext::TestSize.Level0)
991 {
992 std::map<std::string, std::string> bindParam;
993 std::string ret = authManager_->ParseExtraFromMap(bindParam);
994 ASSERT_EQ(ret, "");
995 }
996
997 HWTEST_F(DmAuthManagerTest, IsAuthCodeReady_001, testing::ext::TestSize.Level0)
998 {
999 std::string pkgName;
1000 authManager_->importAuthCode_ = "";
1001 authManager_->importPkgName_ = "importPkgName_";
1002 bool ret = authManager_->IsAuthCodeReady(pkgName);
1003 ASSERT_EQ(ret, false);
1004 }
1005
1006 HWTEST_F(DmAuthManagerTest, IsAuthCodeReady_002, testing::ext::TestSize.Level0)
1007 {
1008 std::string pkgName;
1009 authManager_->importAuthCode_ = "importAuthCode_";
1010 authManager_->importPkgName_ = "";
1011 bool ret = authManager_->IsAuthCodeReady(pkgName);
1012 ASSERT_EQ(ret, false);
1013 }
1014
1015 HWTEST_F(DmAuthManagerTest, IsAuthCodeReady_003, testing::ext::TestSize.Level0)
1016 {
1017 std::string pkgName = "pkgName";
1018 authManager_->importAuthCode_ = "importAuthCode_";
1019 authManager_->importPkgName_ = "importPkgName_";
1020 bool ret = authManager_->IsAuthCodeReady(pkgName);
1021 ASSERT_EQ(ret, false);
1022 }
1023
1024 HWTEST_F(DmAuthManagerTest, IsAuthCodeReady_004, testing::ext::TestSize.Level0)
1025 {
1026 std::string pkgName = "ohos_test";
1027 authManager_->importAuthCode_ = "importAuthCode_";
1028 authManager_->importPkgName_ = "ohos_test";
1029 bool ret = authManager_->IsAuthCodeReady(pkgName);
1030 ASSERT_EQ(ret, true);
1031 }
1032
1033 HWTEST_F(DmAuthManagerTest, DeleteAuthCode_001, testing::ext::TestSize.Level0)
1034 {
1035 authManager_->authResponseContext_->authType = 5;
1036 int32_t ret = authManager_->DeleteAuthCode();
1037 ASSERT_EQ(ret, DM_OK);
1038 }
1039
1040 HWTEST_F(DmAuthManagerTest, GetAuthCode_001, testing::ext::TestSize.Level0)
1041 {
1042 std::string pkgName;
1043 int32_t pinCode = 1;
1044 authManager_->importAuthCode_ = "";
1045 authManager_->importPkgName_ = "importPkgName_";
1046 int32_t ret = authManager_->GetAuthCode(pkgName, pinCode);
1047 ASSERT_EQ(ret, ERR_DM_FAILED);
1048 }
1049
1050 HWTEST_F(DmAuthManagerTest, GetAuthCode_002, testing::ext::TestSize.Level0)
1051 {
1052 std::string pkgName;
1053 int32_t pinCode = 1;
1054 authManager_->importAuthCode_ = "importAuthCode_";
1055 authManager_->importPkgName_ = "";
1056 int32_t ret = authManager_->GetAuthCode(pkgName, pinCode);
1057 ASSERT_EQ(ret, ERR_DM_FAILED);
1058 }
1059
1060 HWTEST_F(DmAuthManagerTest, GetAuthCode_003, testing::ext::TestSize.Level0)
1061 {
1062 std::string pkgName = "pkgName";
1063 int32_t pinCode = 1;
1064 authManager_->importAuthCode_ = "importAuthCode_";
1065 authManager_->importPkgName_ = "importPkgName_";
1066 int32_t ret = authManager_->GetAuthCode(pkgName, pinCode);
1067 ASSERT_EQ(ret, ERR_DM_FAILED);
1068 }
1069
1070 HWTEST_F(DmAuthManagerTest, GetAuthCode_004, testing::ext::TestSize.Level0)
1071 {
1072 std::string pkgName = "ohos_test";
1073 int32_t pinCode = 1;
1074 authManager_->importAuthCode_ = "123456";
1075 authManager_->importPkgName_ = "ohos_test";
1076 int32_t ret = authManager_->GetAuthCode(pkgName, pinCode);
1077 ASSERT_EQ(ret, DM_OK);
1078 }
1079
1080 HWTEST_F(DmAuthManagerTest, IsAuthTypeSupported_001, testing::ext::TestSize.Level0)
1081 {
1082 int32_t authType = 7;
1083 bool ret = authManager_->IsAuthTypeSupported(authType);
1084 ASSERT_EQ(ret, false);
1085 }
1086
1087 HWTEST_F(DmAuthManagerTest, IsAuthTypeSupported_002, testing::ext::TestSize.Level0)
1088 {
1089 int32_t authType = 7;
1090 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1091 bool ret = authManager_->IsAuthTypeSupported(authType);
1092 ASSERT_EQ(ret, true);
1093 }
1094
1095 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_001, testing::ext::TestSize.Level0)
1096 {
1097 int32_t authType = -1;
1098 std::string extra;
1099 std::string pkgName = "ohos_test";
1100 std::string deviceId = "512156";
1101 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1102 ASSERT_EQ(ret, ERR_DM_AUTH_FAILED);
1103 }
1104
1105 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_002, testing::ext::TestSize.Level0)
1106 {
1107 int32_t authType = 6;
1108 std::string extra;
1109 std::string pkgName = "ohos_test";
1110 std::string deviceId = "512156";
1111 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1112 ASSERT_EQ(ret, ERR_DM_AUTH_FAILED);
1113 }
1114
1115 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_003, testing::ext::TestSize.Level0)
1116 {
1117 int32_t authType = 4;
1118 std::string extra;
1119 std::string pkgName;
1120 std::string deviceId = "512156";
1121 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1122 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
1123 }
1124
1125 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_004, testing::ext::TestSize.Level0)
1126 {
1127 int32_t authType = 4;
1128 std::string extra;
1129 std::string pkgName = "ohos_test";
1130 std::string deviceId;
1131 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1132 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
1133 }
1134
1135 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_005, testing::ext::TestSize.Level0)
1136 {
1137 int32_t authType = 4;
1138 std::string extra;
1139 std::string pkgName = "ohos_test";
1140 std::string deviceId = "512156";
1141 authManager_->listener_ = nullptr;
1142 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1143 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
1144 }
1145
1146 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_006, testing::ext::TestSize.Level0)
1147 {
1148 int32_t authType = 4;
1149 std::string extra;
1150 std::string pkgName = "ohos_test";
1151 std::string deviceId = "512156";
1152 authManager_->authUiStateMgr_ = nullptr;
1153 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1154 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
1155 }
1156
1157 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_007, testing::ext::TestSize.Level0)
1158 {
1159 int32_t authType = 4;
1160 std::string extra;
1161 std::string pkgName = "ohos_test";
1162 std::string deviceId = "512156";
1163 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1164 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1165 authManager_->authenticationMap_.clear();
1166 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1167 ASSERT_EQ(ret, ERR_DM_UNSUPPORTED_AUTH_TYPE);
1168 }
1169
1170 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_008, testing::ext::TestSize.Level0)
1171 {
1172 int32_t authType = 4;
1173 std::string extra;
1174 std::string pkgName = "ohos_test";
1175 std::string deviceId = "512156";
1176 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1177 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1178 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1179 authManager_->authRequestState_ = nullptr;
1180 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1181 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
1182 }
1183
1184 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_009, testing::ext::TestSize.Level0)
1185 {
1186 int32_t authType = 4;
1187 std::string extra;
1188 std::string pkgName = "ohos_test";
1189 std::string deviceId = "512156";
1190 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1191 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1192 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1193 authManager_->authRequestState_ = std::make_shared<AuthRequestInitState>();
1194 authManager_->authResponseState_ = nullptr;
1195 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1196 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
1197 }
1198
1199 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_010, testing::ext::TestSize.Level0)
1200 {
1201 int32_t authType = 4;
1202 std::string extra;
1203 std::string pkgName = "ohos_test";
1204 std::string deviceId = "512156";
1205 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1206 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1207 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1208 authManager_->authRequestState_ = std::make_shared<AuthRequestInitState>();
1209 authManager_->authResponseState_ = std::make_shared<AuthResponseInitState>();
1210 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1211 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
1212 }
1213
1214 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_0011, testing::ext::TestSize.Level0)
1215 {
1216 int32_t authType = 4;
1217 std::string extra;
1218 std::string pkgName = "ohos_test";
1219 std::string deviceId = "512156";
1220 authManager_->importPkgName_ = "ohos_test";
1221 authManager_->importAuthCode_ = "156161";
1222 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1223 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1224 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1225 authManager_->authRequestState_ = std::make_shared<AuthRequestInitState>();
1226 authManager_->authResponseState_ = std::make_shared<AuthResponseInitState>();
1227 authManager_->softbusConnector_->discoveryDeviceInfoMap_.clear();
1228 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1229 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
1230 }
1231
1232 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_0012, testing::ext::TestSize.Level0)
1233 {
1234 int32_t authType = 5;
1235 std::string extra;
1236 std::string pkgName = "ohos_test";
1237 std::string deviceId = "512156";
1238 authManager_->importPkgName_ = "";
1239 authManager_->importAuthCode_ = "";
1240 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1241 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1242 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1243 std::shared_ptr<DeviceInfo> infoPtr = std::make_shared<DeviceInfo>();
1244 authManager_->softbusConnector_->discoveryDeviceInfoMap_.emplace(deviceId, infoPtr);
1245 authManager_->authRequestState_ = std::make_shared<AuthRequestInitState>();
1246 authManager_->authResponseState_ = std::make_shared<AuthResponseInitState>();
1247 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1248 ASSERT_EQ(ret, ERR_DM_AUTH_BUSINESS_BUSY);
1249 }
1250
1251 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_0013, testing::ext::TestSize.Level0)
1252 {
1253 int32_t authType = 5;
1254 std::string extra;
1255 std::string pkgName = "ohos_test";
1256 std::string deviceId = "512156";
1257 authManager_->importPkgName_ = "ohos_test";
1258 authManager_->importAuthCode_ = "156161";
1259 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1260 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1261 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1262 authManager_->authRequestState_ = nullptr;
1263 authManager_->authResponseState_ = nullptr;
1264 authManager_->softbusConnector_->discoveryDeviceInfoMap_.clear();
1265 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1266 ASSERT_EQ(ret, DM_OK);
1267 }
1268
1269 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_0014, testing::ext::TestSize.Level0)
1270 {
1271 int32_t authType = 4;
1272 std::string extra;
1273 std::string pkgName = "ohos_test";
1274 std::string deviceId = "512156";
1275 authManager_->importAuthCode_ = "";
1276 authManager_->importAuthCode_ = "";
1277 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1278 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1279 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1280 std::shared_ptr<DeviceInfo> infoPtr = std::make_shared<DeviceInfo>();
1281 authManager_->softbusConnector_->discoveryDeviceInfoMap_.emplace(deviceId, infoPtr);
1282 authManager_->authRequestState_ = nullptr;
1283 authManager_->authResponseState_ = nullptr;
1284 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1285 ASSERT_EQ(ret, DM_OK);
1286 }
1287
1288 HWTEST_F(DmAuthManagerTest, CheckAuthParamVaild_0015, testing::ext::TestSize.Level0)
1289 {
1290 int32_t authType = 5;
1291 std::string extra;
1292 std::string pkgName = "ohos_test";
1293 std::string deviceId = "512156";
1294 authManager_->importAuthCode_ = "";
1295 authManager_->importAuthCode_ = "";
1296 std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<DeviceManagerServiceListener>();
1297 authManager_->authUiStateMgr_ = std::make_shared<AuthUiStateManager>(listener);
1298 authManager_->authenticationMap_.insert(std::pair<int32_t, std::shared_ptr<IAuthentication>>(authType, nullptr));
1299 std::shared_ptr<DeviceInfo> infoPtr = std::make_shared<DeviceInfo>();
1300 authManager_->softbusConnector_->discoveryDeviceInfoMap_.emplace(deviceId, infoPtr);
1301 authManager_->authRequestState_ = nullptr;
1302 authManager_->authResponseState_ = nullptr;
1303 int32_t ret = authManager_->CheckAuthParamVaild(pkgName, authType, deviceId, extra);
1304 ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
1305 }
1306
1307 HWTEST_F(DmAuthManagerTest, StartNegotiate_001, testing::ext::TestSize.Level0)
1308 {
1309 int32_t sessionId = 123;
1310 authManager_->authMessageProcessor_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
1311 authManager_->StartNegotiate(sessionId);
1312 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1313 }
1314
1315 HWTEST_F(DmAuthManagerTest, StartNegotiate_002, testing::ext::TestSize.Level0)
1316 {
1317 int32_t sessionId = 123;
1318 authManager_->authResponseContext_ = nullptr;
1319 authManager_->StartNegotiate(sessionId);
1320 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1321 }
1322
1323 HWTEST_F(DmAuthManagerTest, GetAuthParam_001, testing::ext::TestSize.Level0)
1324 {
1325 int32_t authType = 5;
1326 std::string extra;
1327 std::string pkgName = "ohos_test";
1328 std::string deviceId = "512156";
1329 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1330 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1331 }
1332
1333 HWTEST_F(DmAuthManagerTest, GetAuthParam_002, testing::ext::TestSize.Level0)
1334 {
1335 JsonObject jsonObject;
1336 jsonObject["targetPkgName"] = 1234;
1337 std::string extra = SafetyDump(jsonObject);
1338 int32_t authType = 5;
1339 std::string pkgName = "ohos_test";
1340 std::string deviceId = "512156";
1341 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1342 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1343 }
1344
1345 HWTEST_F(DmAuthManagerTest, GetAuthParam_003, testing::ext::TestSize.Level0)
1346 {
1347 JsonObject jsonObject;
1348 jsonObject["targetPkgName"] = "1234";
1349 jsonObject["appOperation"] = 1234;
1350 std::string extra = SafetyDump(jsonObject);
1351 int32_t authType = 5;
1352 std::string pkgName = "ohos_test";
1353 std::string deviceId = "512156";
1354 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1355 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1356 }
1357
1358 HWTEST_F(DmAuthManagerTest, GetAuthParam_004, testing::ext::TestSize.Level0)
1359 {
1360 JsonObject jsonObject;
1361 jsonObject["targetPkgName"] = "1234";
1362 jsonObject["appOperation"] = "1234";
1363 jsonObject["customDescription"] = 1234;
1364 std::string extra = SafetyDump(jsonObject);
1365 int32_t authType = 5;
1366 std::string pkgName = "ohos_test";
1367 std::string deviceId = "512156";
1368 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1369 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1370 }
1371
1372 HWTEST_F(DmAuthManagerTest, GetAuthParam_005, testing::ext::TestSize.Level0)
1373 {
1374 JsonObject jsonObject;
1375 jsonObject["targetPkgName"] = "1234";
1376 jsonObject["appOperation"] = "1234";
1377 jsonObject["customDescription"] = "1234";
1378 jsonObject["appThumbnail"] = 1234;
1379 std::string extra = SafetyDump(jsonObject);
1380 int32_t authType = 5;
1381 std::string pkgName = "ohos_test";
1382 std::string deviceId = "512156";
1383 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1384 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1385 }
1386
1387 HWTEST_F(DmAuthManagerTest, GetAuthParam_006, testing::ext::TestSize.Level0)
1388 {
1389 JsonObject jsonObject;
1390 jsonObject["targetPkgName"] = "1234";
1391 jsonObject["appOperation"] = "1234";
1392 jsonObject["customDescription"] = "1234";
1393 jsonObject["appThumbnail"] = "1234";
1394 jsonObject["tokenId"] = "1234";
1395 std::string extra = SafetyDump(jsonObject);
1396 int32_t authType = 5;
1397 std::string pkgName = "ohos_test";
1398 std::string deviceId = "512156";
1399 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1400 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1401 }
1402
1403 HWTEST_F(DmAuthManagerTest, GetAuthParam_007, testing::ext::TestSize.Level0)
1404 {
1405 JsonObject jsonObject;
1406 jsonObject["targetPkgName"] = "1234";
1407 jsonObject["appOperation"] = "1234";
1408 jsonObject["customDescription"] = "1234";
1409 jsonObject["appThumbnail"] = "1234";
1410 jsonObject["tokenId"] = 1234;
1411 jsonObject["bindLevel"] = "1234";
1412 std::string extra = SafetyDump(jsonObject);
1413 int32_t authType = 5;
1414 std::string pkgName = "ohos_test";
1415 std::string deviceId = "512156";
1416 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1417 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1418 }
1419
1420 HWTEST_F(DmAuthManagerTest, GetAuthParam_008, testing::ext::TestSize.Level0)
1421 {
1422 JsonObject jsonObject;
1423 jsonObject["targetPkgName"] = "1234";
1424 jsonObject["appOperation"] = "1234";
1425 jsonObject["customDescription"] = "1234";
1426 jsonObject["appThumbnail"] = "1234";
1427 jsonObject["tokenId"] = 1234;
1428 jsonObject["bindLevel"] = 1234;
1429 std::string extra = SafetyDump(jsonObject);
1430 int32_t authType = 5;
1431 std::string pkgName = "ohos_test";
1432 std::string deviceId = "512156";
1433 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1434 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1435 }
1436
1437 HWTEST_F(DmAuthManagerTest, GetAuthParam_009, testing::ext::TestSize.Level0)
1438 {
1439 JsonObject jsonObject;
1440 jsonObject["DM_CLOSE_SESSION_DELAY_SECONDS"] = 1234;
1441 std::string extra = SafetyDump(jsonObject);
1442 int32_t authType = 5;
1443 std::string pkgName = "ohos_test";
1444 std::string deviceId = "512156";
1445 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1446 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1447 }
1448
1449 HWTEST_F(DmAuthManagerTest, GetAuthParam_010, testing::ext::TestSize.Level0)
1450 {
1451 JsonObject jsonObject;
1452 jsonObject["DM_CLOSE_SESSION_DELAY_SECONDS"] = "1234";
1453 std::string extra = SafetyDump(jsonObject);
1454 int32_t authType = 5;
1455 std::string pkgName = "ohos_test";
1456 std::string deviceId = "512156";
1457 authManager_->GetAuthParam(pkgName, authType, deviceId, extra);
1458 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1459 }
1460
1461 HWTEST_F(DmAuthManagerTest, InitAuthState_001, testing::ext::TestSize.Level0)
1462 {
1463 std::string extra;
1464 int32_t authType = 5;
1465 std::string pkgName = "ohos_test";
1466 std::string deviceId = "512156";
1467 authManager_->timer_ = nullptr;
1468 authManager_->InitAuthState(pkgName, authType, deviceId, extra);
1469 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1470 authManager_->timer_ = std::make_shared<DmTimer>();
1471 authManager_->InitAuthState(pkgName, authType, deviceId, extra);
1472 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1473 }
1474
1475 HWTEST_F(DmAuthManagerTest, HandleSessionHeartbeat_001, testing::ext::TestSize.Level0)
1476 {
1477 std::string name;
1478 authManager_->authRequestState_ = std::make_shared<AuthRequestInitState>();
1479 authManager_->HandleSessionHeartbeat(name);
1480 ASSERT_EQ(authManager_->isFinishOfLocal_, true);
1481 }
1482
1483 HWTEST_F(DmAuthManagerTest, CheckTrustState_001, testing::ext::TestSize.Level0)
1484 {
1485 authManager_->authResponseContext_->isOnline = true;
1486 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
1487 authManager_->importAuthCode_ = "test";
1488 authManager_->authResponseContext_->importAuthCode = Crypto::Sha256(authManager_->importAuthCode_);
1489 int32_t ret = authManager_->CheckTrustState();
1490 ASSERT_NE(ret, DM_OK);
1491 }
1492
1493 HWTEST_F(DmAuthManagerTest, CheckTrustState_002, testing::ext::TestSize.Level0)
1494 {
1495 authManager_->authResponseContext_->isOnline = true;
1496 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
1497 authManager_->importAuthCode_ = "test";
1498 authManager_->authResponseContext_->importAuthCode = "test";
1499 int32_t ret = authManager_->CheckTrustState();
1500 ASSERT_NE(ret, DM_OK);
1501 }
1502
1503 HWTEST_F(DmAuthManagerTest, IsIdenticalAccount_201, testing::ext::TestSize.Level0)
1504 {
1505 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(-1));
1506 bool ret = authManager_->IsIdenticalAccount();
1507 ASSERT_FALSE(ret);
1508
1509 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1510 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(false));
1511 ret = authManager_->IsIdenticalAccount();
1512 ASSERT_FALSE(ret);
1513
1514 authManager_->authResponseContext_ = nullptr;
1515 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1516 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1517 ret = authManager_->IsIdenticalAccount();
1518 ASSERT_FALSE(ret);
1519
1520 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
1521 authManager_->authResponseContext_->accountGroupIdHash = OLD_VERSION_ACCOUNT;
1522 EXPECT_CALL(*multipleUserConnectorMock_,
1523 GetCurrentAccountUserID()).Times(::testing::AtLeast(4)).WillRepeatedly(Return(0));
1524 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1525 ret = authManager_->IsIdenticalAccount();
1526 ASSERT_TRUE(ret);
1527
1528 EXPECT_CALL(*hiChainConnectorMock_, IsDevicesInP2PGroup(_, _)).WillOnce(Return(true));
1529 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
1530 authManager_->importAuthCode_= "importAuthCode";
1531 authManager_->importPkgName_ = "importPkgName";
1532 authManager_->authResponseContext_->hostPkgName = "importPkgName";
1533 authManager_->AbilityNegotiate();
1534
1535 EXPECT_CALL(*hiChainConnectorMock_, IsDevicesInP2PGroup(_, _)).WillOnce(Return(true));
1536 authManager_->importAuthCode_= "";
1537 authManager_->authResponseContext_->authType = AUTH_TYPE_NFC;
1538 authManager_->AbilityNegotiate();
1539
1540 authManager_->authResponseContext_->isOnline = true;
1541 EXPECT_CALL(*softbusConnectorMock_, CheckIsOnline(_)).WillOnce(Return(true));
1542 EXPECT_CALL(*hiChainAuthConnectorMock_, QueryCredential(_, _)).WillOnce(Return(true));
1543 authManager_->GetAuthRequestContext();
1544
1545 JsonObject jsonPeerGroupIdObj;
1546 jsonPeerGroupIdObj["groupId"] = "123456";
1547 authManager_->authResponseContext_->accountGroupIdHash = SafetyDump(jsonPeerGroupIdObj);
1548 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1549 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1550 EXPECT_CALL(*cryptoMock_, GetGroupIdHash(_)).WillOnce(Return("123"));
1551 ret = authManager_->IsIdenticalAccount();
1552 ASSERT_FALSE(ret);
1553 }
1554
1555 HWTEST_F(DmAuthManagerTest, GetAccountGroupIdHash_201, testing::ext::TestSize.Level0)
1556 {
1557 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(-1));
1558 auto ret = authManager_->GetAccountGroupIdHash();
1559 ASSERT_TRUE(ret.empty());
1560
1561 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1562 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1563 ret = authManager_->GetAccountGroupIdHash();
1564 ASSERT_FALSE(ret.empty());
1565
1566 std::vector<GroupInfo> groupList;
1567 GroupInfo groupInfo;
1568 groupInfo.groupId = "123456";
1569 groupInfo.groupName = "group101";
1570 groupInfo.groupType = 1;
1571 groupList.push_back(groupInfo);
1572 JsonObject jsonPeerGroupIdObj;
1573 jsonPeerGroupIdObj["groupId"] = "123456";
1574 authManager_->authResponseContext_ = std::make_shared<DmAuthResponseContext>();
1575 authManager_->authResponseContext_->accountGroupIdHash = jsonPeerGroupIdObj.Dump();
1576 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1577 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _))
1578 .WillOnce(DoAll(SetArgReferee<2>(groupList), Return(true)));
1579 EXPECT_CALL(*cryptoMock_, GetGroupIdHash(_)).WillOnce(Return("123456"));
1580 bool rets = authManager_->IsIdenticalAccount();
1581 ASSERT_FALSE(rets);
1582
1583 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1584 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _))
1585 .WillOnce(DoAll(SetArgReferee<2>(groupList), Return(true)));
1586 ret = authManager_->GetAccountGroupIdHash();
1587 ASSERT_FALSE(ret.empty());
1588 }
1589
1590 HWTEST_F(DmAuthManagerTest, CheckTrustState_003, testing::ext::TestSize.Level0)
1591 {
1592 authManager_->authResponseContext_->reply = ERR_DM_AUTH_BUSINESS_BUSY;
1593 authManager_->authResponseContext_->isIdenticalAccount = true;
1594 authManager_->authResponseContext_->accountGroupIdHash = OLD_VERSION_ACCOUNT;
1595 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1596 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1597 int32_t ret = authManager_->CheckTrustState();
1598 ASSERT_EQ(ret, 1);
1599
1600 int32_t sessionId = 1;
1601 authManager_->authResponseContext_->authType = AUTH_TYPE_PIN;
1602 authManager_->authResponseContext_->isOnline = true;
1603 EXPECT_CALL(*softbusConnectorMock_, CheckIsOnline(_)).Times(::testing::AtLeast(2)).WillOnce(Return(true));
1604 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1605 EXPECT_CALL(*hiChainConnectorMock_, GetGroupInfo(_, _, _)).WillOnce(Return(true));
1606 authManager_->ProcessAuthRequest(sessionId);
1607
1608 authManager_->authResponseContext_->haveCredential = true;
1609 EXPECT_CALL(*hiChainAuthConnectorMock_, QueryCredential(_, _)).Times(::testing::AtLeast(2)).WillOnce(Return(true));
1610 authManager_->GetAuthRequestContext();
1611
1612 authManager_->authResponseContext_->isOnline = true;
1613 authManager_->authResponseContext_->authType = AUTH_TYPE_IMPORT_AUTH_CODE;
1614 authManager_->authResponseContext_->importAuthCode = "";
1615 authManager_->importAuthCode_ = "";
1616 std::vector<int32_t> bindType;
1617 bindType.push_back(101);
1618 bindType.push_back(102);
1619 EXPECT_CALL(*softbusConnectorMock_, CheckIsOnline(_)).Times(::testing::AtLeast(1)).WillOnce(Return(true));
1620 EXPECT_CALL(*deviceProfileConnectorMock_, SyncAclByBindType(_, _, _, _)).WillOnce(Return(bindType));
1621 authManager_->ProcessAuthRequestExt(sessionId);
1622 }
1623
1624 HWTEST_F(DmAuthManagerTest, DeleteGroup_201, testing::ext::TestSize.Level0)
1625 {
1626 std::string pkgName = "pkgName";
1627 std::string deviceId;
1628 std::vector<GroupInfo> groupList;
1629 GroupInfo groupInfo;
1630 groupInfo.groupId = "123456";
1631 groupList.push_back(groupInfo);
1632 EXPECT_CALL(*hiChainConnectorMock_, GetRelatedGroups(_, _))
1633 .WillOnce(DoAll(SetArgReferee<1>(groupList), Return(DM_OK)));
1634 EXPECT_CALL(*multipleUserConnectorMock_, GetCurrentAccountUserID()).WillOnce(Return(0));
1635 int32_t ret = authManager_->DeleteGroup(pkgName, deviceId);
1636 ASSERT_EQ(ret, DM_OK);
1637 }
1638
1639 HWTEST_F(DmAuthManagerTest, DeleteGroup_202, testing::ext::TestSize.Level0)
1640 {
1641 std::string pkgName;
1642 int32_t userId = 0;
1643 std::string deviceId;
1644 int32_t ret = authManager_->DeleteGroup(pkgName, userId, deviceId);
1645 ASSERT_EQ(ret, ERR_DM_FAILED);
1646
1647 pkgName = "pkgName";
1648 std::vector<GroupInfo> groupList;
1649 GroupInfo groupInfo;
1650 groupInfo.groupId = "123456";
1651 groupList.push_back(groupInfo);
1652 GroupInfo groupInfo1;
1653 groupInfo1.groupId = "12345";
1654 groupList.push_back(groupInfo1);
1655 EXPECT_CALL(*hiChainConnectorMock_, GetRelatedGroups(_, _, _))
1656 .WillOnce(DoAll(SetArgReferee<2>(groupList), Return(DM_OK)));
1657 ret = authManager_->DeleteGroup(pkgName, userId, deviceId);
1658 ASSERT_EQ(ret, DM_OK);
1659 }
1660
1661 HWTEST_F(DmAuthManagerTest, ParseConnectAddr_201, testing::ext::TestSize.Level0)
1662 {
1663 PeerTargetId targetId;
1664 targetId.wifiIp = "12131415";
1665 targetId.brMac = "D4G4E5G2B4G";
1666 targetId.bleMac = "1463158131321";
1667 std::string deviceId;
1668 std::string addrType;
1669 int32_t ret = authManager_->ParseConnectAddr(targetId, deviceId, addrType);
1670 ASSERT_EQ(ret, DM_OK);
1671 }
1672
1673 HWTEST_F(DmAuthManagerTest, ParseConnectAddr_202, testing::ext::TestSize.Level0)
1674 {
1675 PeerTargetId targetId;
1676 targetId.wifiIp;
1677 targetId.brMac = "D4G4E5G2B4G";
1678 targetId.bleMac = "1463158131321";
1679 std::string deviceId;
1680 std::string addrType;
1681 targetId.deviceId = "dsklalsk556";
1682 int32_t ret = authManager_->ParseConnectAddr(targetId, deviceId, addrType);
1683 ASSERT_EQ(ret, DM_OK);
1684
1685 targetId.brMac = "";
1686 ret = authManager_->ParseConnectAddr(targetId, deviceId, addrType);
1687 ASSERT_EQ(ret, DM_OK);
1688 }
1689
1690 HWTEST_F(DmAuthManagerTest, BindTarget_006, testing::ext::TestSize.Level0)
1691 {
1692 std::string pkgName = "pkgName";
1693 PeerTargetId targetId;
1694 targetId.brMac = "D4G4E5G24D5S";
1695 targetId.bleMac = "1463158131321";
1696 targetId.deviceId = "";
1697 std::map<std::string, std::string> bindParam;
1698 bindParam.insert(std::pair<std::string, std::string>("AUTH_TYPE", "2"));
1699 bindParam.insert(std::pair<std::string, std::string>("CONN_ADDR_TYPE", "3"));
1700 int32_t ret = authManager_->BindTarget(pkgName, targetId, bindParam);
1701 ASSERT_EQ(ret, ERR_DM_UNSUPPORTED_AUTH_TYPE);
1702 }
1703 } // namespace
1704 } // namespace DistributedHardware
1705 } // namespace OHOS
1706