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