1 /*
2  * Copyright (c) 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_ipc_cmd_parser_client.h"
17 
18 #include <unistd.h>
19 
20 #include "device_manager_ipc_interface_code.h"
21 #include "ipc_acl_profile_req.h"
22 #include "ipc_client_manager.h"
23 #include "ipc_cmd_register.h"
24 #include "ipc_common_param_req.h"
25 #include "ipc_create_pin_holder_req.h"
26 #include "ipc_register_listener_req.h"
27 #include "ipc_get_info_by_network_req.h"
28 #include "ipc_get_trustdevice_req.h"
29 #include "ipc_start_discovery_req.h"
30 #include "ipc_stop_discovery_req.h"
31 #include "ipc_publish_req.h"
32 #include "ipc_unpublish_req.h"
33 #include "ipc_unauthenticate_device_req.h"
34 #include "ipc_unbind_device_req.h"
35 #include "ipc_authenticate_device_req.h"
36 #include "ipc_set_credential_req.h"
37 #include "ipc_notify_event_req.h"
38 #include "device_manager_notify.h"
39 #include "ipc_req.h"
40 #include "dm_device_info.h"
41 #include "dm_constants.h"
42 
43 namespace OHOS {
44 namespace DistributedHardware {
SetUp()45 void IpcCmdParserClientTest::SetUp()
46 {
47 }
48 
TearDown()49 void IpcCmdParserClientTest::TearDown()
50 {
51 }
52 
SetUpTestCase()53 void IpcCmdParserClientTest::SetUpTestCase()
54 {
55 }
56 
TearDownTestCase()57 void IpcCmdParserClientTest::TearDownTestCase()
58 {
59 }
60 
61 namespace {
GetIpcRequestFunc(int32_t cmdCode)62 SetIpcRequestFunc GetIpcRequestFunc(int32_t cmdCode)
63 {
64     SetIpcRequestFunc ptr = nullptr;
65     auto setRequestMapIter = IpcCmdRegister::GetInstance().setIpcRequestFuncMap_.find(cmdCode);
66     if (setRequestMapIter != IpcCmdRegister::GetInstance().setIpcRequestFuncMap_.end()) {
67         ptr = setRequestMapIter->second;
68     }
69     return ptr;
70 }
71 
GetResponseFunc(int32_t cmdCode)72 ReadResponseFunc GetResponseFunc(int32_t cmdCode)
73 {
74     auto readResponseMapIter = IpcCmdRegister::GetInstance().readResponseFuncMap_.find(cmdCode);
75     if (readResponseMapIter == IpcCmdRegister::GetInstance().readResponseFuncMap_.end()) {
76         return nullptr;
77     }
78     return readResponseMapIter->second;
79 }
80 
GetIpcCmdFunc(int32_t cmdCode)81 OnIpcCmdFunc GetIpcCmdFunc(int32_t cmdCode)
82 {
83     auto onIpcCmdMapIter = IpcCmdRegister::GetInstance().onIpcCmdFuncMap_.find(cmdCode);
84     if (onIpcCmdMapIter == IpcCmdRegister::GetInstance().onIpcCmdFuncMap_.end()) {
85         return nullptr;
86     }
87     return onIpcCmdMapIter->second;
88 }
89 
TestReadResponseRspNull(int32_t cmdCode)90 int32_t TestReadResponseRspNull(int32_t cmdCode)
91 {
92     MessageParcel reply;
93     std::shared_ptr<IpcRsp> rsp = nullptr;
94     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
95     ReadResponseFunc ptr = GetResponseFunc(cmdCode);
96     if (ptr) {
97         ret = ptr(reply, rsp);
98     }
99     return ret;
100 }
101 
TestReadResponseRspNotNull(int32_t cmdCode)102 int32_t TestReadResponseRspNotNull(int32_t cmdCode)
103 {
104     MessageParcel reply;
105     std::shared_ptr<IpcRsp> rsp = std::make_shared<IpcRsp>();
106     int32_t retCode = 0;
107     reply.WriteInt32(retCode);
108     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
109     ReadResponseFunc ptr = GetResponseFunc(cmdCode);
110     if (ptr) {
111         ret = ptr(reply, rsp);
112     }
113     return ret;
114 }
115 
EncodePeerTargetId(const PeerTargetId &targetId, MessageParcel &parcel)116 bool EncodePeerTargetId(const PeerTargetId &targetId, MessageParcel &parcel)
117 {
118     bool bRet = true;
119     bRet = (bRet && parcel.WriteString(targetId.deviceId));
120     bRet = (bRet && parcel.WriteString(targetId.brMac));
121     bRet = (bRet && parcel.WriteString(targetId.bleMac));
122     bRet = (bRet && parcel.WriteString(targetId.wifiIp));
123     bRet = (bRet && parcel.WriteUint16(targetId.wifiPort));
124     return bRet;
125 }
126 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_001, testing::ext::TestSize.Level0)127 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_001, testing::ext::TestSize.Level0)
128 {
129     int32_t cmdCode = REGISTER_DEVICE_MANAGER_LISTENER;
130     ASSERT_EQ(ERR_DM_FAILED, TestReadResponseRspNull(cmdCode));
131 }
132 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_003, testing::ext::TestSize.Level0)133 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_003, testing::ext::TestSize.Level0)
134 {
135     int32_t cmdCode = STOP_DEVICE_DISCOVER;
136     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
137 }
138 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_004, testing::ext::TestSize.Level0)139 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_004, testing::ext::TestSize.Level0)
140 {
141     int32_t cmdCode = UNPUBLISH_DEVICE_DISCOVER;
142     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
143 }
144 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_005, testing::ext::TestSize.Level0)145 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_005, testing::ext::TestSize.Level0)
146 {
147     int32_t cmdCode = AUTHENTICATE_DEVICE;
148     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
149 }
150 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_007, testing::ext::TestSize.Level0)151 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_007, testing::ext::TestSize.Level0)
152 {
153     int32_t cmdCode = BIND_DEVICE;
154     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
155 }
156 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_008, testing::ext::TestSize.Level0)157 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_008, testing::ext::TestSize.Level0)
158 {
159     int32_t cmdCode = UNBIND_DEVICE;
160     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
161 }
162 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_009, testing::ext::TestSize.Level0)163 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_009, testing::ext::TestSize.Level0)
164 {
165     int32_t cmdCode = REGISTER_UI_STATE_CALLBACK;
166     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
167 }
168 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_010, testing::ext::TestSize.Level0)169 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_010, testing::ext::TestSize.Level0)
170 {
171     int32_t cmdCode = UNREGISTER_UI_STATE_CALLBACK;
172     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
173 }
174 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_011, testing::ext::TestSize.Level0)175 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_011, testing::ext::TestSize.Level0)
176 {
177     int32_t cmdCode = REGISTER_DISCOVERY_CALLBACK;
178     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
179 }
180 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_012, testing::ext::TestSize.Level0)181 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_012, testing::ext::TestSize.Level0)
182 {
183     int32_t cmdCode = REGISTER_DISCOVERY_CALLBACK;
184     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
185 }
186 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_013, testing::ext::TestSize.Level0)187 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_013, testing::ext::TestSize.Level0)
188 {
189     int32_t cmdCode = UNREGISTER_DISCOVERY_CALLBACK;
190     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
191 }
192 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_014, testing::ext::TestSize.Level0)193 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_014, testing::ext::TestSize.Level0)
194 {
195     int32_t cmdCode = UNREGISTER_DISCOVERY_CALLBACK;
196     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
197 }
198 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_015, testing::ext::TestSize.Level0)199 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_015, testing::ext::TestSize.Level0)
200 {
201     int32_t cmdCode = START_DISCOVERING;
202     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
203 }
204 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_016, testing::ext::TestSize.Level0)205 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_016, testing::ext::TestSize.Level0)
206 {
207     int32_t cmdCode = STOP_DISCOVERING;
208     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
209 }
210 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_017, testing::ext::TestSize.Level0)211 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_017, testing::ext::TestSize.Level0)
212 {
213     int32_t cmdCode = START_ADVERTISING;
214     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
215 }
216 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_018, testing::ext::TestSize.Level0)217 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_018, testing::ext::TestSize.Level0)
218 {
219     int32_t cmdCode = START_ADVERTISING;
220     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
221 }
222 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_019, testing::ext::TestSize.Level0)223 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_019, testing::ext::TestSize.Level0)
224 {
225     int32_t cmdCode = START_ADVERTISING;
226     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
227 }
228 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_020, testing::ext::TestSize.Level0)229 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_020, testing::ext::TestSize.Level0)
230 {
231     int32_t cmdCode = STOP_ADVERTISING;
232     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
233 }
234 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_021, testing::ext::TestSize.Level0)235 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_021, testing::ext::TestSize.Level0)
236 {
237     int32_t cmdCode = STOP_ADVERTISING;
238     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
239 }
240 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_022, testing::ext::TestSize.Level0)241 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_022, testing::ext::TestSize.Level0)
242 {
243     int32_t cmdCode = BIND_TARGET;
244     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
245 }
246 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_023, testing::ext::TestSize.Level0)247 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_023, testing::ext::TestSize.Level0)
248 {
249     int32_t cmdCode = UNBIND_TARGET;
250     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
251 }
252 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_024, testing::ext::TestSize.Level0)253 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_024, testing::ext::TestSize.Level0)
254 {
255     int32_t cmdCode = CREATE_PIN_HOLDER;
256     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
257 }
258 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_025, testing::ext::TestSize.Level0)259 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_025, testing::ext::TestSize.Level0)
260 {
261     int32_t cmdCode = DESTROY_PIN_HOLDER;
262     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
263 }
264 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_026, testing::ext::TestSize.Level0)265 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_026, testing::ext::TestSize.Level0)
266 {
267     int32_t cmdCode = DP_ACL_ADD;
268     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
269 }
270 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_027, testing::ext::TestSize.Level0)271 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_027, testing::ext::TestSize.Level0)
272 {
273     int32_t cmdCode = DP_ACL_ADD;
274     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
275 }
276 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_028, testing::ext::TestSize.Level0)277 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_028, testing::ext::TestSize.Level0)
278 {
279     int32_t cmdCode = IS_SAME_ACCOUNT;
280     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
281 }
282 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_029, testing::ext::TestSize.Level0)283 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_029, testing::ext::TestSize.Level0)
284 {
285     int32_t cmdCode = SET_DN_POLICY;
286     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
287 }
288 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_030, testing::ext::TestSize.Level0)289 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_030, testing::ext::TestSize.Level0)
290 {
291     int32_t cmdCode = SET_DN_POLICY;
292     ASSERT_EQ(TestReadResponseRspNotNull(cmdCode), DM_OK);
293 }
294 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_031, testing::ext::TestSize.Level0)295 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_031, testing::ext::TestSize.Level0)
296 {
297     int32_t cmdCode = SHIFT_LNN_GEAR;
298     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
299 }
300 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_032, testing::ext::TestSize.Level0)301 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_032, testing::ext::TestSize.Level0)
302 {
303     int32_t cmdCode = CHECK_SAME_ACCOUNT;
304     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
305 }
306 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_033, testing::ext::TestSize.Level0)307 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_033, testing::ext::TestSize.Level0)
308 {
309     int32_t cmdCode = CHECK_ACCESS_CONTROL;
310     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
311 }
312 
HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_034, testing::ext::TestSize.Level0)313 HWTEST_F(IpcCmdParserClientTest, ReadResponseFunc_034, testing::ext::TestSize.Level0)
314 {
315     int32_t cmdCode = CHECK_API_PERMISSION;
316     ASSERT_EQ(TestReadResponseRspNull(cmdCode), ERR_DM_FAILED);
317 }
318 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_002, testing::ext::TestSize.Level0)319 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_002, testing::ext::TestSize.Level0)
320 {
321     int32_t cmdCode = GET_NETWORKTYPE_BY_NETWORK;
322     MessageParcel data;
323     std::shared_ptr<IpcGetInfoByNetWorkReq> req = std::make_shared<IpcGetInfoByNetWorkReq>();
324     std::string pkgName = "ohos.dm.test";
325     std::string netWorkId = "xxx";
326     req->SetPkgName(pkgName);
327     req->SetNetWorkId(netWorkId);
328     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
329     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
330     if (ptr) {
331         ret = ptr(req, data);
332     }
333     ASSERT_EQ(DM_OK, ret);
334 }
335 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_003, testing::ext::TestSize.Level0)336 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_003, testing::ext::TestSize.Level0)
337 {
338     int32_t cmdCode = UNBIND_DEVICE;
339     MessageParcel data;
340     std::shared_ptr<IpcUnBindDeviceReq> req = std::make_shared<IpcUnBindDeviceReq>();
341     std::string pkgName = "ohos.dm.test";
342     std::string deviceId = "xxx";
343     req->SetPkgName(pkgName);
344     req->SetDeviceId(deviceId);
345     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
346     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
347     if (ptr) {
348         ret = ptr(req, data);
349     }
350     ASSERT_EQ(DM_OK, ret);
351 }
352 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_004, testing::ext::TestSize.Level0)353 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_004, testing::ext::TestSize.Level0)
354 {
355     int32_t cmdCode = GET_NETWORKTYPE_BY_NETWORK;
356     MessageParcel data;
357     std::shared_ptr<IpcGetInfoByNetWorkReq> req = std::make_shared<IpcGetInfoByNetWorkReq>();
358     std::string pkgName = "ohos.dm.test";
359     std::string netWorkId = "xxx";
360     req->SetPkgName(pkgName);
361     req->SetNetWorkId(netWorkId);
362     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
363     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
364     if (ptr) {
365         ret = ptr(req, data);
366     }
367     ASSERT_EQ(DM_OK, ret);
368 }
369 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_005, testing::ext::TestSize.Level0)370 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_005, testing::ext::TestSize.Level0)
371 {
372     int32_t cmdCode = REGISTER_UI_STATE_CALLBACK;
373     MessageParcel data;
374     std::shared_ptr<IpcReq> req = std::make_shared<IpcReq>();
375     std::string pkgName = "ohos.dm.test";
376     req->SetPkgName(pkgName);
377     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
378     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
379     if (ptr) {
380         ret = ptr(req, data);
381     }
382     ASSERT_EQ(DM_OK, ret);
383 }
384 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_006, testing::ext::TestSize.Level0)385 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_006, testing::ext::TestSize.Level0)
386 {
387     int32_t cmdCode = UNREGISTER_UI_STATE_CALLBACK;
388     MessageParcel data;
389     std::shared_ptr<IpcReq> req = std::make_shared<IpcReq>();
390     std::string pkgName = "ohos.dm.test";
391     req->SetPkgName(pkgName);
392     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
393     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
394     if (ptr) {
395         ret = ptr(req, data);
396     }
397     ASSERT_EQ(DM_OK, ret);
398 }
399 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_007, testing::ext::TestSize.Level0)400 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_007, testing::ext::TestSize.Level0)
401 {
402     int32_t cmdCode = REGISTER_DISCOVERY_CALLBACK;
403     MessageParcel data;
404     std::shared_ptr<IpcCommonParamReq> req = std::make_shared<IpcCommonParamReq>();
405     std::string pkgName = "ohos.dm.test";
406     std::string discParaStr = "XXX";
407     std::string filterOpStr = "XXX";
408     req->SetPkgName(pkgName);
409     req->SetFirstParam(discParaStr);
410     req->SetSecondParam(filterOpStr);
411     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
412     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
413     if (ptr) {
414         ret = ptr(req, data);
415     }
416     ASSERT_EQ(DM_OK, ret);
417 }
418 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_008, testing::ext::TestSize.Level0)419 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_008, testing::ext::TestSize.Level0)
420 {
421     int32_t cmdCode = UNREGISTER_DISCOVERY_CALLBACK;
422     MessageParcel data;
423     std::shared_ptr<IpcCommonParamReq> req = std::make_shared<IpcCommonParamReq>();
424     std::string pkgName = "ohos.dm.test";
425     std::string discParaStr = "XXX";
426     req->SetPkgName(pkgName);
427     req->SetFirstParam(discParaStr);
428     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
429     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
430     if (ptr) {
431         ret = ptr(req, data);
432     }
433     ASSERT_EQ(DM_OK, ret);
434 }
435 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_009, testing::ext::TestSize.Level0)436 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_009, testing::ext::TestSize.Level0)
437 {
438     int32_t cmdCode = START_ADVERTISING;
439     MessageParcel data;
440     std::shared_ptr<IpcCommonParamReq> req = std::make_shared<IpcCommonParamReq>();
441     std::string pkgName = "ohos.dm.test";
442     std::string discParaStr = "XXX";
443     req->SetPkgName(pkgName);
444     req->SetFirstParam(discParaStr);
445     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
446     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
447     if (ptr) {
448         ret = ptr(req, data);
449     }
450     ASSERT_EQ(DM_OK, ret);
451 }
452 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_010, testing::ext::TestSize.Level0)453 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_010, testing::ext::TestSize.Level0)
454 {
455     int32_t cmdCode = STOP_ADVERTISING;
456     MessageParcel data;
457     std::shared_ptr<IpcCommonParamReq> req = std::make_shared<IpcCommonParamReq>();
458     std::string pkgName = "ohos.dm.test";
459     std::string discParaStr = "XXX";
460     req->SetPkgName(pkgName);
461     req->SetFirstParam(discParaStr);
462     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
463     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
464     if (ptr) {
465         ret = ptr(req, data);
466     }
467     ASSERT_EQ(DM_OK, ret);
468 }
469 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_011, testing::ext::TestSize.Level0)470 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_011, testing::ext::TestSize.Level0)
471 {
472     int32_t cmdCode = CREATE_PIN_HOLDER;
473     MessageParcel data;
474     std::shared_ptr<IpcCreatePinHolderReq> req = std::make_shared<IpcCreatePinHolderReq>();
475     std::string pkgName = "ohos.dm.test";
476     PeerTargetId targetId;
477     DmPinType pinType = NUMBER_PIN_CODE;
478     std::string payload = "XXX";
479     req->SetPkgName(pkgName);
480     req->SetPeerTargetId(targetId);
481     req->SetPinType(pinType);
482     req->SetPayload(payload);
483     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
484     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
485     if (ptr) {
486         ret = ptr(req, data);
487     }
488     ASSERT_EQ(DM_OK, ret);
489 }
490 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_012, testing::ext::TestSize.Level0)491 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_012, testing::ext::TestSize.Level0)
492 {
493     int32_t cmdCode = DESTROY_PIN_HOLDER;
494     MessageParcel data;
495     std::shared_ptr<IpcCreatePinHolderReq> req = std::make_shared<IpcCreatePinHolderReq>();
496     std::string pkgName = "ohos.dm.test";
497     PeerTargetId targetId;
498     DmPinType pinType = NUMBER_PIN_CODE;
499     std::string payload = "XXX";
500     req->SetPkgName(pkgName);
501     req->SetPeerTargetId(targetId);
502     req->SetPinType(pinType);
503     req->SetPayload(payload);
504     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
505     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
506     if (ptr) {
507         ret = ptr(req, data);
508     }
509     ASSERT_EQ(DM_OK, ret);
510 }
511 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_013, testing::ext::TestSize.Level0)512 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_013, testing::ext::TestSize.Level0)
513 {
514     int32_t cmdCode = DP_ACL_ADD;
515     MessageParcel data;
516     std::shared_ptr<IpcAclProfileReq> req = std::make_shared<IpcAclProfileReq>();
517     std::string udid = "XXX";
518     req->SetStr(udid);
519     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
520     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
521     if (ptr) {
522         ret = ptr(req, data);
523     }
524     ASSERT_EQ(DM_OK, ret);
525 }
526 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_014, testing::ext::TestSize.Level0)527 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_014, testing::ext::TestSize.Level0)
528 {
529     int32_t cmdCode = GET_SECURITY_LEVEL;
530     MessageParcel data;
531     std::shared_ptr<IpcGetInfoByNetWorkReq> req = std::make_shared<IpcGetInfoByNetWorkReq>();
532     std::string networkId = "XXX";
533     std::string pkgName = "ohos.dm.test";
534     req->SetPkgName(pkgName);
535     req->SetNetWorkId(networkId);
536     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
537     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
538     if (ptr) {
539         ret = ptr(req, data);
540     }
541     ASSERT_EQ(DM_OK, ret);
542 }
543 
HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_015, testing::ext::TestSize.Level0)544 HWTEST_F(IpcCmdParserClientTest, SetIpcRequestFunc_015, testing::ext::TestSize.Level0)
545 {
546     int32_t cmdCode = SET_DN_POLICY;
547     MessageParcel data;
548     std::shared_ptr<IpcCommonParamReq> req = std::make_shared<IpcCommonParamReq>();
549     std::string pkgName = "ohos.dm.test";
550     std::string policy = "DM_POLICY_STRATEGY_FOR_BLE:100";
551     req->SetPkgName(pkgName);
552     req->SetFirstParam(policy);
553     int ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
554     SetIpcRequestFunc ptr = GetIpcRequestFunc(cmdCode);
555     if (ptr) {
556         ret = ptr(req, data);
557     }
558     ASSERT_EQ(DM_OK, ret);
559 }
560 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_001, testing::ext::TestSize.Level0)561 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_001, testing::ext::TestSize.Level0)
562 {
563     int32_t cmdCode = SERVER_DEVICE_DISCOVERY;
564     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
565     MessageParcel data;
566     MessageParcel reply;
567     std::string pkgName = "ohos.dm.test";
568     int16_t subscribeId = 100;
569     std::string deviceId = "xxx";
570     data.WriteString(pkgName);
571     data.WriteInt16(subscribeId);
572     DmDeviceBasicInfo basicInfo;
573     data.WriteRawData(&basicInfo, sizeof(DmDeviceBasicInfo));
574     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
575     if (ptr) {
576         ret = ptr(data, reply);
577     }
578     ASSERT_EQ(ret, DM_OK);
579 }
580 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_002, testing::ext::TestSize.Level0)581 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_002, testing::ext::TestSize.Level0)
582 {
583     int32_t cmdCode = BIND_TARGET_RESULT;
584     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
585     MessageParcel data;
586     MessageParcel reply;
587     std::string pkgName = "ohos.dm.test";
588     PeerTargetId targetId;
589     int32_t result = 1;
590     int32_t status = 1;
591     std::string content = "XX";
592     data.WriteString(pkgName);
593     EncodePeerTargetId(targetId, data);
594     data.WriteInt32(result);
595     data.WriteInt32(status);
596     data.WriteString(content);
597     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
598     if (ptr) {
599         ret = ptr(data, reply);
600     }
601     ASSERT_EQ(ret, DM_OK);
602 }
603 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_003, testing::ext::TestSize.Level0)604 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_003, testing::ext::TestSize.Level0)
605 {
606     int32_t cmdCode = UNBIND_TARGET_RESULT;
607     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
608     MessageParcel data;
609     MessageParcel reply;
610     std::string pkgName = "ohos.dm.test";
611     PeerTargetId targetId;
612     int32_t result = 1;
613     std::string content = "XX";
614     data.WriteString(pkgName);
615     EncodePeerTargetId(targetId, data);
616     data.WriteInt32(result);
617     data.WriteString(content);
618     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
619     if (ptr) {
620         ret = ptr(data, reply);
621     }
622     ASSERT_EQ(ret, DM_OK);
623 }
624 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_004, testing::ext::TestSize.Level0)625 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_004, testing::ext::TestSize.Level0)
626 {
627     int32_t cmdCode = SERVER_CREATE_PIN_HOLDER;
628     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
629     MessageParcel data;
630     MessageParcel reply;
631     std::string pkgName = "ohos.dm.test";
632     std::string deviceId = "xxx";
633     int32_t pinType = 1;
634     std::string payload = "xx";
635     data.WriteString(pkgName);
636     data.WriteString(deviceId);
637     data.WriteInt32(pinType);
638     data.WriteString(payload);
639     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
640     if (ptr) {
641         ret = ptr(data, reply);
642     }
643     ASSERT_EQ(ret, DM_OK);
644 }
645 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_005, testing::ext::TestSize.Level0)646 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_005, testing::ext::TestSize.Level0)
647 {
648     int32_t cmdCode = SERVER_DESTROY_PIN_HOLDER;
649     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
650     MessageParcel data;
651     MessageParcel reply;
652     std::string pkgName = "ohos.dm.test";
653     int32_t pinType = 1;
654     std::string payload = "xx";
655     data.WriteString(pkgName);
656     data.WriteInt32(pinType);
657     data.WriteString(payload);
658     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
659     if (ptr) {
660         ret = ptr(data, reply);
661     }
662     ASSERT_EQ(ret, DM_OK);
663 }
664 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_006, testing::ext::TestSize.Level0)665 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_006, testing::ext::TestSize.Level0)
666 {
667     int32_t cmdCode = SERVER_CREATE_PIN_HOLDER_RESULT;
668     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
669     MessageParcel data;
670     MessageParcel reply;
671     std::string pkgName = "ohos.dm.test";
672     int32_t result = 1;
673     data.WriteString(pkgName);
674     data.WriteInt32(result);
675     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
676     if (ptr) {
677         ret = ptr(data, reply);
678     }
679     ASSERT_EQ(ret, DM_OK);
680 }
681 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_007, testing::ext::TestSize.Level0)682 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_007, testing::ext::TestSize.Level0)
683 {
684     int32_t cmdCode = SERVER_DESTROY_PIN_HOLDER_RESULT;
685     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
686     MessageParcel data;
687     MessageParcel reply;
688     std::string pkgName = "ohos.dm.test";
689     int32_t result = 1;
690     data.WriteString(pkgName);
691     data.WriteInt32(result);
692     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
693     if (ptr) {
694         ret = ptr(data, reply);
695     }
696     ASSERT_EQ(ret, DM_OK);
697 }
698 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_008, testing::ext::TestSize.Level0)699 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_008, testing::ext::TestSize.Level0)
700 {
701     int32_t cmdCode = SERVER_ON_PIN_HOLDER_EVENT;
702     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
703     MessageParcel data;
704     MessageParcel reply;
705     std::string pkgName = "ohos.dm.test";
706     int32_t result = 1;
707     std::string content = "xxx";
708     int32_t pinHolderEvent = 1;
709     data.WriteString(pkgName);
710     data.WriteInt32(result);
711     data.WriteInt32(pinHolderEvent);
712     data.WriteString(content);
713     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
714     if (ptr) {
715         ret = ptr(data, reply);
716     }
717     ASSERT_EQ(ret, DM_OK);
718 }
719 
HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_009, testing::ext::TestSize.Level0)720 HWTEST_F(IpcCmdParserClientTest, OnIpcCmdFunc_009, testing::ext::TestSize.Level0)
721 {
722     int32_t cmdCode = REMOTE_DEVICE_TRUST_CHANGE;
723     int32_t ret = ERR_DM_UNSUPPORTED_IPC_COMMAND;
724     MessageParcel data;
725     MessageParcel reply;
726     std::string pkgName = "ohos.dm.test";
727     std::string deviceId = "xxx";
728     int32_t authForm = 1;
729     data.WriteString(pkgName);
730     data.WriteString(deviceId);
731     data.WriteInt32(authForm);
732     OnIpcCmdFunc ptr = GetIpcCmdFunc(cmdCode);
733     if (ptr) {
734         ret = ptr(data, reply);
735     }
736     ASSERT_EQ(ret, DM_OK);
737 }
738 } // namespace
739 } // namespace DistributedHardware
740 } // namespace OHOS