• 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_pin_holder.h"
17 #include "dm_device_info.h"
18 
19 #include <unistd.h>
20 #include "accesstoken_kit.h"
21 #include "device_manager_notify.h"
22 #include "dm_constants.h"
23 #include "dm_log.h"
24 #include "ipc_authenticate_device_req.h"
25 #include "ipc_get_info_by_network_req.h"
26 #include "ipc_get_info_by_network_rsp.h"
27 #include "ipc_get_local_device_info_rsp.h"
28 #include "ipc_get_trustdevice_req.h"
29 #include "ipc_get_trustdevice_rsp.h"
30 #include "ipc_req.h"
31 #include "ipc_rsp.h"
32 #include "ipc_set_useroperation_req.h"
33 #include "ipc_skeleton.h"
34 #include "ipc_start_discovery_req.h"
35 #include "ipc_stop_discovery_req.h"
36 #include "ipc_publish_req.h"
37 #include "ipc_unpublish_req.h"
38 #include "ipc_unauthenticate_device_req.h"
39 #include "nativetoken_kit.h"
40 #include "nlohmann/json.hpp"
41 #include "securec.h"
42 #include "token_setproc.h"
43 #include "pin_holder.h"
44 #include "pinholder_session_callback.h"
45 
46 namespace OHOS {
47 namespace DistributedHardware {
SetUp()48 void DmPinHolderTest::SetUp()
49 {
50     const int32_t permsNum = 2;
51     const int32_t indexZero = 0;
52     const int32_t indexOne = 1;
53     uint64_t tokenId;
54     const char *perms[permsNum];
55     perms[indexZero] = "ohos.permission.ACCESS_SERVICE_DM";
56     perms[indexOne] = "ohos.permission.DISTRIBUTED_DATASYNC";
57     NativeTokenInfoParams infoInstance = {
58         .dcapsNum = 0,
59         .permsNum = permsNum,
60         .aclsNum = 0,
61         .dcaps = NULL,
62         .perms = perms,
63         .acls = NULL,
64         .processName = "CollaborationFwk",
65         .aplStr = "system_core",
66     };
67     tokenId = GetAccessTokenId(&infoInstance);
68     SetSelfTokenID(tokenId);
69     OHOS::Security::AccessToken::AccessTokenKit::ReloadNativeTokenInfo();
70 }
71 
TearDown()72 void DmPinHolderTest::TearDown()
73 {
74 }
75 
SetUpTestCase()76 void DmPinHolderTest::SetUpTestCase()
77 {
78 }
79 
TearDownTestCase()80 void DmPinHolderTest::TearDownTestCase()
81 {
82 }
83 
OnCreateResult(int32_t result)84 void DmPinHolderCallbackTest::OnCreateResult(int32_t result)
85 {
86     std::cout << "OnCreateResult " << result << std::endl;
87 }
88 
OnDestroyResult(int32_t result)89 void DmPinHolderCallbackTest::OnDestroyResult(int32_t result)
90 {
91     std::cout << "OnDestroyResult " << result << std::endl;
92 }
93 
OnPinHolderDestroy(DmPinType pinType,const std::string & payload)94 void DmPinHolderCallbackTest::OnPinHolderDestroy(DmPinType pinType, const std::string &payload)
95 {
96     std::cout << "OnPinHolderDestroy" << std::endl;
97     std::cout << "pinType: " << pinType << std::endl;
98 }
99 
OnPinHolderCreate(const std::string & deviceId,DmPinType pinType,const std::string & payload)100 void DmPinHolderCallbackTest::OnPinHolderCreate(const std::string &deviceId, DmPinType pinType,
101     const std::string &payload)
102 {
103     std::cout << "OnPinHolderCreate" << std::endl;
104     std::cout << "pinType: " << pinType << std::endl;
105     std::cout << "payload: " << payload << std::endl;
106 }
107 
OnDeviceFound(uint16_t subscribeId,const DmDeviceInfo & deviceInfo)108 void DeviceDiscoveryCallbackTest::OnDeviceFound(uint16_t subscribeId, const DmDeviceInfo &deviceInfo)
109 {
110     std::cout << "pin holder test ondeviceFound start." << std::endl;
111 }
112 
113 constexpr int32_t MSG_TYPE_CREATE_PIN_HOLDER = 600;
114 constexpr int32_t MSG_TYPE_CREATE_PIN_HOLDER_RESP = 601;
115 constexpr int32_t MSG_TYPE_DESTROY_PIN_HOLDER = 650;
116 constexpr int32_t MSG_TYPE_DESTROY_PIN_HOLDER_RESP = 651;
117 
118 constexpr const char* TAG_PIN_TYPE = "PIN_TYPE";
119 constexpr const char* TAG_PAYLOAD = "PAYLOAD";
120 constexpr const char* TAG_REPLY = "REPLY";
121 namespace {
122 /**
123  * @tc.name: InitDeviceManager_001
124  * @tc.desc: 1. set packName not null
125  *              set dmInitCallback not null
126  *           2. call DeviceManagerImpl::InitDeviceManager with parameter
127  *           4. check ret is DM_OK
128  * deviceTypeId
129  * @tc.type: FUNC
130  * @tc.require: AR000GHSJK
131  */
132 HWTEST_F(DmPinHolderTest, RegisterPinHolderCallback_101, testing::ext::TestSize.Level0)
133 {
134     // 1. set packName not null
135     std::string packName = "com.ohos.dmtest";
136     // 2. set dmInitCallback not null
137     std::shared_ptr<DmInitCallbackTest> callback = std::make_shared<DmInitCallbackTest>();
138     int32_t ret = DeviceManager::GetInstance().InitDeviceManager(packName, callback);
139 
140     std::shared_ptr<DmPinHolderCallbackTest> pinHolderCallback = std::make_shared<DmPinHolderCallbackTest>();
141     ret = DeviceManager::GetInstance().RegisterPinHolderCallback(packName, pinHolderCallback);
142     // 3. check ret is DM_OK
143     ASSERT_EQ(ret, DM_OK);
144     DeviceManager::GetInstance().UnInitDeviceManager(packName);
145 }
146 
147 HWTEST_F(DmPinHolderTest, RegisterPinHolderCallback_102, testing::ext::TestSize.Level0)
148 {
149     std::string packName = "com.ohos.dmtest";
150     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
151     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
152     pinHolder->session_ = nullptr;
153     int32_t ret = pinHolder->RegisterPinHolderCallback(packName);
154     ASSERT_EQ(ret, ERR_DM_FAILED);
155 }
156 
157 HWTEST_F(DmPinHolderTest, RegisterPinHolderCallback_103, testing::ext::TestSize.Level0)
158 {
159     std::string packName = "com.ohos.dmtest";
160     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
161     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
162     pinHolder->session_ = std::make_shared<PinHolderSession>();
163     int32_t ret = pinHolder->RegisterPinHolderCallback(packName);
164     ASSERT_EQ(ret, DM_OK);
165 }
166 
167 HWTEST_F(DmPinHolderTest, CreatePinholder_101, testing::ext::TestSize.Level0)
168 {
169     std::string packName = "com.ohos.dmtest";
170     std::shared_ptr<DmInitCallbackTest> callback = std::make_shared<DmInitCallbackTest>();
171     int32_t ret = DeviceManager::GetInstance().InitDeviceManager(packName, callback);
172 
173     std::shared_ptr<DmPinHolderCallbackTest> pinHolderCallback = std::make_shared<DmPinHolderCallbackTest>();
174     ret = DeviceManager::GetInstance().RegisterPinHolderCallback(packName, pinHolderCallback);
175     PeerTargetId targetId;
176     DmPinType pinType = NUMBER_PIN_CODE;
177     std::string payload = "";
178     ret = DeviceManager::GetInstance().CreatePinHolder(packName, targetId, pinType, payload);
179     ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
180     DeviceManager::GetInstance().UnInitDeviceManager(packName);
181 }
182 
183 HWTEST_F(DmPinHolderTest, CreatePinholder_102, testing::ext::TestSize.Level0)
184 {
185     std::string packName = "com.ohos.dmtest";
186     PeerTargetId targetId;
187     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
188     std::string payload;
189     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
190     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
191     pinHolder->registerPkgName_ = "";
192     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
193     ASSERT_EQ(ret, ERR_DM_FAILED);
194 }
195 
196 HWTEST_F(DmPinHolderTest, CreatePinholder_103, testing::ext::TestSize.Level0)
197 {
198     std::string packName = "com.ohos.dmtest";
199     PeerTargetId targetId;
200     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
201     std::string payload;
202     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
203     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
204     pinHolder->registerPkgName_ = "dmtest";
205     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
206     ASSERT_EQ(ret, ERR_DM_FAILED);
207 }
208 
209 HWTEST_F(DmPinHolderTest, CreatePinholder_105, testing::ext::TestSize.Level0)
210 {
211     std::string packName = "com.ohos.dmtest";
212     PeerTargetId targetId = {
213         .deviceId = "",
214         .brMac = "",
215         .bleMac = "",
216         .wifiIp = "",
217     };
218 
219     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
220     std::string payload;
221     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
222     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
223     pinHolder->registerPkgName_ = packName;
224     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
225     ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
226 }
227 
228 HWTEST_F(DmPinHolderTest, CreatePinholder_106, testing::ext::TestSize.Level0)
229 {
230     std::string packName = "com.ohos.dmtest";
231     PeerTargetId targetId = {
232         .deviceId = "deviceId",
233         .brMac = "brMac",
234         .bleMac = "bleMac",
235         .wifiIp = "wifiIp",
236     };
237 
238     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
239     std::string payload;
240     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
241     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
242     pinHolder->registerPkgName_ = packName;
243     pinHolder->listener_ = nullptr;
244     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
245     ASSERT_EQ(ret, ERR_DM_FAILED);
246 }
247 
248 HWTEST_F(DmPinHolderTest, CreatePinholder_107, testing::ext::TestSize.Level0)
249 {
250     std::string packName = "com.ohos.dmtest";
251     PeerTargetId targetId = {
252         .deviceId = "deviceId",
253         .brMac = "brMac",
254         .bleMac = "bleMac",
255         .wifiIp = "wifiIp",
256     };
257 
258     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
259     std::string payload;
260     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
261     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
262     pinHolder->registerPkgName_ = packName;
263     pinHolder->session_ = nullptr;
264     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
265     ASSERT_EQ(ret, ERR_DM_FAILED);
266 }
267 
268 HWTEST_F(DmPinHolderTest, CreatePinholder_108, testing::ext::TestSize.Level0)
269 {
270     std::string packName = "com.ohos.dmtest";
271     PeerTargetId targetId = {
272         .deviceId = "deviceId",
273         .brMac = "brMac",
274         .bleMac = "bleMac",
275         .wifiIp = "wifiIp",
276     };
277 
278     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
279     std::string payload;
280     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
281     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
282     pinHolder->registerPkgName_ = packName;
283     pinHolder->sourceState_ = SOURCE_CREATE;
284     int32_t ret = pinHolder->CreatePinHolder(packName, targetId, pinType, payload);
285     ASSERT_EQ(ret, ERR_DM_FAILED);
286 }
287 
288 HWTEST_F(DmPinHolderTest, DestroyPinHolder_101, testing::ext::TestSize.Level0)
289 {
290     std::string packName = "com.ohos.dmtest";
291     PeerTargetId targetId = {
292         .deviceId = "deviceId",
293         .brMac = "brMac",
294         .bleMac = "bleMac",
295         .wifiIp = "wifiIp",
296     };
297     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
298     std::string payload;
299     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
300     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
301     pinHolder->listener_ = nullptr;
302     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
303     ASSERT_EQ(ret, ERR_DM_FAILED);
304 }
305 
306 HWTEST_F(DmPinHolderTest, DestroyPinHolder_102, testing::ext::TestSize.Level0)
307 {
308     std::string packName = "com.ohos.dmtest";
309     PeerTargetId targetId = {
310         .deviceId = "deviceId",
311         .brMac = "brMac",
312         .bleMac = "bleMac",
313         .wifiIp = "wifiIp",
314     };
315     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
316     std::string payload;
317     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
318     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
319     pinHolder->session_ = nullptr;
320     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
321     ASSERT_EQ(ret, ERR_DM_FAILED);
322 }
323 
324 HWTEST_F(DmPinHolderTest, DestroyPinHolder_103, testing::ext::TestSize.Level0)
325 {
326     std::string packName = "com.ohos.dmtest";
327     PeerTargetId targetId = {
328         .deviceId = "deviceId",
329         .brMac = "brMac",
330         .bleMac = "bleMac",
331         .wifiIp = "wifiIp",
332     };
333     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
334     std::string payload;
335     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
336     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
337     pinHolder->registerPkgName_ = "";
338     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
339     ASSERT_EQ(ret, ERR_DM_FAILED);
340 }
341 
342 HWTEST_F(DmPinHolderTest, DestroyPinHolder_104, testing::ext::TestSize.Level0)
343 {
344     std::string packName = "com.ohos.dmtest";
345     PeerTargetId targetId = {
346         .deviceId = "deviceId",
347         .brMac = "brMac",
348         .bleMac = "bleMac",
349         .wifiIp = "wifiIp",
350     };
351     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
352     std::string payload;
353     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
354     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
355     pinHolder->registerPkgName_ = "dmtest";
356     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
357     ASSERT_EQ(ret, ERR_DM_FAILED);
358 }
359 
360 HWTEST_F(DmPinHolderTest, DestroyPinHolder_105, testing::ext::TestSize.Level0)
361 {
362     std::string packName = "com.ohos.dmtest";
363     PeerTargetId targetId = {
364         .deviceId = "",
365         .brMac = "",
366         .bleMac = "",
367         .wifiIp = "",
368     };
369     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
370     std::string payload;
371     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
372     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
373     pinHolder->registerPkgName_ = packName;
374     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
375     ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
376 }
377 
378 HWTEST_F(DmPinHolderTest, DestroyPinHolder_106, testing::ext::TestSize.Level0)
379 {
380     std::string packName = "com.ohos.dmtest";
381     PeerTargetId targetId = {
382         .deviceId = "deviceId",
383         .brMac = "brMac",
384         .bleMac = "bleMac",
385         .wifiIp = "wifiIp",
386     };
387     DmPinType pinType = DmPinType::NUMBER_PIN_CODE;
388     std::string payload;
389     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
390     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
391     pinHolder->registerPkgName_ = packName;
392     pinHolder->sessionId_ = 0;
393     pinHolder->sourceState_ = SOURCE_DESTROY;
394     pinHolder->listener_ = std::make_shared<IDeviceManagerServiceListenerTest>();
395     int32_t ret = pinHolder->DestroyPinHolder(packName, targetId, pinType, payload);
396     ASSERT_EQ(ret, ERR_DM_FAILED);
397 }
398 
399 HWTEST_F(DmPinHolderTest, CreateGeneratePinHolderMsg_101, testing::ext::TestSize.Level0)
400 {
401     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
402     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
403     pinHolder->listener_ = nullptr;
404     int32_t ret = pinHolder->CreateGeneratePinHolderMsg();
405     ASSERT_EQ(ret, ERR_DM_FAILED);
406 }
407 
408 HWTEST_F(DmPinHolderTest, CreateGeneratePinHolderMsg_102, testing::ext::TestSize.Level0)
409 {
410     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
411     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
412     pinHolder->session_ = nullptr;
413     int32_t ret = pinHolder->CreateGeneratePinHolderMsg();
414     ASSERT_EQ(ret, ERR_DM_FAILED);
415 }
416 
417 HWTEST_F(DmPinHolderTest, ParseMsgType_101, testing::ext::TestSize.Level0)
418 {
419     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
420     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
421     std::string message;
422     int32_t ret = pinHolder->ParseMsgType(message);
423     ASSERT_EQ(ret, ERR_DM_FAILED);
424 }
425 
426 HWTEST_F(DmPinHolderTest, ProcessCreateMsg_101, testing::ext::TestSize.Level0)
427 {
428     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
429     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
430     std::string message;
431     pinHolder->listener_ = nullptr;
432     pinHolder->ProcessCreateMsg(message);
433     ASSERT_NE(pinHolder->timer_, nullptr);
434 }
435 
436 HWTEST_F(DmPinHolderTest, ProcessCreateMsg_102, testing::ext::TestSize.Level0)
437 {
438     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
439     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
440     std::string message;
441     pinHolder->session_ = nullptr;
442     pinHolder->ProcessCreateMsg(message);
443     ASSERT_NE(pinHolder->timer_, nullptr);
444 }
445 
446 HWTEST_F(DmPinHolderTest, ProcessCreateMsg_103, testing::ext::TestSize.Level0)
447 {
448     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
449     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
450     nlohmann::json jsonObject;
451     std::string message = jsonObject.dump();
452     pinHolder->ProcessCreateMsg(message);
453     ASSERT_NE(pinHolder->timer_, nullptr);
454 }
455 
456 HWTEST_F(DmPinHolderTest, ProcessCreateMsg_104, testing::ext::TestSize.Level0)
457 {
458     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
459     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
460     nlohmann::json jsonObject;
461     jsonObject[TAG_PIN_TYPE] = "TAG_PIN_TYPE";
462     std::string message = jsonObject.dump();
463     pinHolder->ProcessCreateMsg(message);
464     ASSERT_NE(pinHolder->timer_, nullptr);
465 }
466 
467 HWTEST_F(DmPinHolderTest, ProcessCreateMsg_105, testing::ext::TestSize.Level0)
468 {
469     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
470     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
471     nlohmann::json jsonObject;
472     jsonObject[TAG_PIN_TYPE] = DmPinType::SUPER_SONIC;
473     jsonObject[TAG_PAYLOAD] = DmPinType::SUPER_SONIC;
474     std::string message = jsonObject.dump();
475     pinHolder->ProcessCreateMsg(message);
476     ASSERT_NE(pinHolder->timer_, nullptr);
477 }
478 
479 HWTEST_F(DmPinHolderTest, ProcessCreateRespMsg_101, testing::ext::TestSize.Level0)
480 {
481     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
482     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
483     nlohmann::json jsonObject;
484     std::string message = jsonObject.dump();
485     pinHolder->ProcessCreateRespMsg(message);
486     ASSERT_NE(pinHolder->timer_, nullptr);
487 }
488 
489 HWTEST_F(DmPinHolderTest, ProcessCreateRespMsg_102, testing::ext::TestSize.Level0)
490 {
491     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
492     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
493     nlohmann::json jsonObject;
494     jsonObject[TAG_REPLY] = DmPinType::NUMBER_PIN_CODE;
495     std::string message = jsonObject.dump();
496     pinHolder->listener_ = nullptr;
497     pinHolder->ProcessCreateRespMsg(message);
498     ASSERT_NE(pinHolder->timer_, nullptr);
499 }
500 
501 HWTEST_F(DmPinHolderTest, ProcessCreateRespMsg_103, testing::ext::TestSize.Level0)
502 {
503     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
504     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
505     nlohmann::json jsonObject;
506     jsonObject[TAG_REPLY] = DmPinType::SUPER_SONIC;
507     std::string message = jsonObject.dump();
508     pinHolder->session_ = nullptr;
509     pinHolder->ProcessCreateRespMsg(message);
510     ASSERT_NE(pinHolder->timer_, nullptr);
511 }
512 
513 HWTEST_F(DmPinHolderTest, ProcessCreateRespMsg_104, testing::ext::TestSize.Level0)
514 {
515     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
516     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
517     nlohmann::json jsonObject;
518     jsonObject[TAG_REPLY] = DmPinType::NUMBER_PIN_CODE;
519     std::string message = jsonObject.dump();
520     pinHolder->session_ = nullptr;
521     pinHolder->ProcessCreateRespMsg(message);
522     ASSERT_NE(pinHolder->timer_, nullptr);
523 }
524 
525 HWTEST_F(DmPinHolderTest, ProcessDestroyMsg_101, testing::ext::TestSize.Level0)
526 {
527     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
528     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
529     std::string message;
530     pinHolder->listener_ = nullptr;
531     pinHolder->ProcessDestroyMsg(message);
532     ASSERT_NE(pinHolder->timer_, nullptr);
533 }
534 
535 HWTEST_F(DmPinHolderTest, ProcessDestroyMsg_102, testing::ext::TestSize.Level0)
536 {
537     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
538     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
539     std::string message;
540     pinHolder->session_ = nullptr;
541     pinHolder->ProcessDestroyMsg(message);
542     ASSERT_NE(pinHolder->timer_, nullptr);
543 }
544 
545 HWTEST_F(DmPinHolderTest, ProcessDestroyMsg_103, testing::ext::TestSize.Level0)
546 {
547     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
548     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
549     nlohmann::json jsonObject;
550     std::string message = jsonObject.dump();
551     pinHolder->ProcessDestroyMsg(message);
552     ASSERT_NE(pinHolder->timer_, nullptr);
553 }
554 
555 HWTEST_F(DmPinHolderTest, ProcessDestroyMsg_104, testing::ext::TestSize.Level0)
556 {
557     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
558     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
559     nlohmann::json jsonObject;
560     jsonObject[TAG_PIN_TYPE] = "TAG_PIN_TYPE";
561     std::string message = jsonObject.dump();
562     pinHolder->ProcessDestroyMsg(message);
563     ASSERT_NE(pinHolder->timer_, nullptr);
564 }
565 
566 HWTEST_F(DmPinHolderTest, ProcessDestroyMsg_105, testing::ext::TestSize.Level0)
567 {
568     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
569     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
570     nlohmann::json jsonObject;
571     jsonObject[TAG_PIN_TYPE] = DmPinType::SUPER_SONIC;
572     jsonObject[TAG_PAYLOAD] = DmPinType::SUPER_SONIC;
573     std::string message = jsonObject.dump();
574     pinHolder->ProcessDestroyMsg(message);
575     ASSERT_NE(pinHolder->timer_, nullptr);
576 }
577 
578 HWTEST_F(DmPinHolderTest, CloseSession_101, testing::ext::TestSize.Level0)
579 {
580     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
581     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
582     std::string name;
583     pinHolder->session_ = nullptr;
584     pinHolder->CloseSession(name);
585     ASSERT_NE(pinHolder->timer_, nullptr);
586 }
587 
588 HWTEST_F(DmPinHolderTest, OnDataReceived_101, testing::ext::TestSize.Level0)
589 {
590     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
591     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
592     int32_t sessionId = 1;
593     nlohmann::json jsonObject;
594     jsonObject[TAG_MSG_TYPE] = MSG_TYPE_CREATE_PIN_HOLDER;
595     std::string message = jsonObject.dump();
596     pinHolder->OnDataReceived(sessionId, message);
597     ASSERT_NE(pinHolder->timer_, nullptr);
598 }
599 
600 HWTEST_F(DmPinHolderTest, OnDataReceived_102, testing::ext::TestSize.Level0)
601 {
602     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
603     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
604     int32_t sessionId = 1;
605     nlohmann::json jsonObject;
606     jsonObject[TAG_MSG_TYPE] = MSG_TYPE_CREATE_PIN_HOLDER_RESP;
607     std::string message = jsonObject.dump();
608     pinHolder->OnDataReceived(sessionId, message);
609     ASSERT_NE(pinHolder->timer_, nullptr);
610 }
611 
612 HWTEST_F(DmPinHolderTest, OnDataReceived_103, testing::ext::TestSize.Level0)
613 {
614     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
615     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
616     int32_t sessionId = 1;
617     nlohmann::json jsonObject;
618     jsonObject[TAG_MSG_TYPE] = MSG_TYPE_DESTROY_PIN_HOLDER;
619     std::string message = jsonObject.dump();
620     pinHolder->OnDataReceived(sessionId, message);
621     ASSERT_NE(pinHolder->timer_, nullptr);
622 }
623 
624 HWTEST_F(DmPinHolderTest, OnDataReceived_104, testing::ext::TestSize.Level0)
625 {
626     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
627     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
628     int32_t sessionId = 1;
629     nlohmann::json jsonObject;
630     jsonObject[TAG_MSG_TYPE] = MSG_TYPE_DESTROY_PIN_HOLDER_RESP;
631     std::string message = jsonObject.dump();
632     pinHolder->OnDataReceived(sessionId, message);
633     ASSERT_NE(pinHolder->timer_, nullptr);
634 }
635 
636 HWTEST_F(DmPinHolderTest, OnDataReceived_105, testing::ext::TestSize.Level0)
637 {
638     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
639     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
640     int32_t sessionId = 1;
641     int32_t data = 300;
642     nlohmann::json jsonObject;
643     jsonObject[TAG_MSG_TYPE] = data;
644     std::string message = jsonObject.dump();
645     pinHolder->OnDataReceived(sessionId, message);
646     ASSERT_NE(pinHolder->timer_, nullptr);
647 }
648 
649 HWTEST_F(DmPinHolderTest, GetPeerDeviceId_101, testing::ext::TestSize.Level0)
650 {
651     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
652     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
653     int32_t sessionId = 1;
654     std::string udidHash;
655     pinHolder->GetPeerDeviceId(sessionId, udidHash);
656     ASSERT_NE(pinHolder->timer_, nullptr);
657 }
658 
659 HWTEST_F(DmPinHolderTest, OnSessionOpened_101, testing::ext::TestSize.Level0)
660 {
661     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
662     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
663     int32_t sessionId = 1;
664     int32_t sessionSide = 0;
665     int32_t result = 0;
666     pinHolder->OnSessionOpened(sessionId, sessionSide, result);
667     ASSERT_NE(pinHolder->timer_, nullptr);
668 }
669 
670 HWTEST_F(DmPinHolderTest, OnSessionOpened_102, testing::ext::TestSize.Level0)
671 {
672     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
673     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
674     int32_t sessionId = 1;
675     int32_t sessionSide = 1;
676     int32_t result = 1;
677     pinHolder ->listener_ = nullptr;
678     pinHolder->OnSessionOpened(sessionId, sessionSide, result);
679     ASSERT_NE(pinHolder->timer_, nullptr);
680 }
681 
682 
683 HWTEST_F(DmPinHolderTest, CheckTargetIdVaild_101, testing::ext::TestSize.Level0)
684 {
685     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
686     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
687     PeerTargetId targetId = {
688         .deviceId = "",
689         .brMac = "",
690         .bleMac = "",
691         .wifiIp = "",
692     };
693     int32_t ret = pinHolder->CheckTargetIdVaild(targetId);
694     ASSERT_EQ(ret, ERR_DM_INPUT_PARA_INVALID);
695 }
696 
697 HWTEST_F(DmPinHolderTest, CheckTargetIdVaild_102, testing::ext::TestSize.Level0)
698 {
699     std::shared_ptr<IDeviceManagerServiceListener> listener = std::make_shared<IDeviceManagerServiceListenerTest>();
700     std::shared_ptr<PinHolder> pinHolder = std::make_shared<PinHolder>(listener);
701     PeerTargetId targetId = {
702         .deviceId = "deviceId",
703         .brMac = "brMac",
704         .bleMac = "bleMac",
705         .wifiIp = "wifiIp",
706     };
707     int32_t ret = pinHolder->CheckTargetIdVaild(targetId);
708     ASSERT_EQ(ret, DM_OK);
709 }
710 } // namespace
711 } // namespace DistributedHardware
712 } // namespace OHOS