• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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