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 <gtest/gtest.h>
17 #include <string>
18 #include <map>
19 #include <nlohmann/json.hpp>
20 #include "printer_info.h"
21 #define private public
22 #include "print_system_data.h"
23 #undef private
24 #include "print_log.h"
25 #include "print_constant.h"
26
27 using namespace testing::ext;
28 using json = nlohmann::json;
29
30 namespace OHOS {
31 namespace Print {
32
33 class PrintSystemDataTest : public testing::Test {
34 public:
35 static void SetUpTestCase(void);
36 static void TearDownTestCase(void);
37 void SetUp();
38 void TearDown();
39 };
40
SetUpTestCase(void)41 void PrintSystemDataTest::SetUpTestCase(void) {}
42
TearDownTestCase(void)43 void PrintSystemDataTest::TearDownTestCase(void) {}
44
SetUp(void)45 void PrintSystemDataTest::SetUp(void)
46 {
47 static int32_t testNo = 0;
48 PRINT_HILOGI("PrintSystemDataTest_%{public}d", ++testNo);
49 }
50
TearDown(void)51 void PrintSystemDataTest::TearDown(void) {}
52
53 /**
54 * @tc.name: PrintSystemDataTest_0001
55 * @tc.desc: Verify the PrintSystemData function.
56 * @tc.type: FUNC
57 * @tc.require:
58 */
59 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0001, TestSize.Level1)
60 {
61 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
62 EXPECT_EQ(systemData->Init(), false);
63 }
64
65 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0002, TestSize.Level1)
66 {
67 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
68 std::string printerId = "1234";
69 CupsPrinterInfo cupsPrinterInfo;
70 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, false);
71 cupsPrinterInfo.name = "PixLab_V1-0105";
72 cupsPrinterInfo.uri = "ipp://192.168.186.1:631/ipp/print";
73 cupsPrinterInfo.maker = "PixLab V1";
74 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, false);
75 std::map<std::string, std::shared_ptr<CupsPrinterInfo>> addedPrinterMap;
76 addedPrinterMap[printerId] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
77 EXPECT_EQ(addedPrinterMap.size(), 1);
78 }
79
80 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0003, TestSize.Level1)
81 {
82 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
83 EXPECT_EQ(systemData->SaveCupsPrinterMap(), true);
84 }
85
86 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0004, TestSize.Level1)
87 {
88 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
89 std::string printerName = "Direct Pixlab1620";
90 EXPECT_EQ(systemData->QueryPrinterIdByStandardizeName(printerName), "");
91 systemData->addedPrinterMap_["1234"] = nullptr;
92 systemData->QueryPrinterIdByStandardizeName(printerName);
93 EXPECT_EQ(systemData->SaveCupsPrinterMap(), true);
94 }
95
96 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0005, TestSize.Level1)
97 {
98 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
99 std::string printerName = "Direct Pixlab1620";
100 EXPECT_EQ(systemData->QueryPrinterIdByStandardizeName(printerName), "");
101 std::string re = systemData->QueryPrinterIdByStandardizeName(printerName);
102 std::string printerId = "1234";
103 CupsPrinterInfo cupsPrinterInfo;
104 cupsPrinterInfo.name = "Direct Pixlab1620";
105 std::map<std::string, std::shared_ptr<CupsPrinterInfo>> addedPrinterMap;
106 addedPrinterMap[printerId] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
107 EXPECT_EQ(addedPrinterMap.size(), 1);
108 if (cupsPrinterInfo.name == printerName) {
109 re = printerId;
110 }
111 }
112
113 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0006, TestSize.Level1)
114 {
115 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
116 std::string printerId = "1234";
117 CupsPrinterInfo cupsPrinterInfo1;
118 cupsPrinterInfo1.name = "Direct Pixlab1620";
119 CupsPrinterInfo cupsPrinterInfo2;
120 EXPECT_EQ(systemData->QueryCupsPrinterInfoByPrinterId(printerId, cupsPrinterInfo2), false);
121 std::map<std::string, std::shared_ptr<CupsPrinterInfo>> addedPrinterMap;
122 addedPrinterMap[printerId] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo1);
123 EXPECT_EQ(addedPrinterMap.size(), 1);
124 if (addedPrinterMap.count(printerId)) {
125 cupsPrinterInfo2 = cupsPrinterInfo1;
126 EXPECT_EQ(cupsPrinterInfo2.name, cupsPrinterInfo1.name);
127 }
128 }
129
130 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0007, TestSize.Level1)
131 {
132 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
133 std::string printerId = "1234";
134 PrinterInfo printerInfo;
135 systemData->InsertPrinterInfo(printerId, printerInfo);
136 std::map<std::string, std::shared_ptr<PrinterInfo>> addedPrinterInfoList;
137 addedPrinterInfoList[printerId] = std::make_shared<PrinterInfo>(printerInfo);
138 EXPECT_EQ(addedPrinterInfoList.size(), 1);
139 }
140
141 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0008, TestSize.Level1)
142 {
143 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
144 std::string printerId = "1234";
145 EXPECT_EQ(systemData->QueryPrinterInfoByPrinterId(printerId), nullptr);
146 std::shared_ptr<PrinterInfo> result = std::make_shared<PrinterInfo>();
147 systemData->QueryPrinterInfoByPrinterId(printerId);
148 PrinterInfo printerInfo;
149 printerInfo.SetPrinterName("123");
150 std::map<std::string, std::shared_ptr<PrinterInfo>> addedPrinterInfoList;
151 addedPrinterInfoList[printerId] = std::make_shared<PrinterInfo>(printerInfo);
152 EXPECT_EQ(addedPrinterInfoList.size(), 1);
153 if (addedPrinterInfoList.count(printerId)) {
154 result = addedPrinterInfoList[printerId];
155 EXPECT_EQ(result->GetPrinterName(), "123");
156 }
157 }
158
159 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0009, TestSize.Level1)
160 {
161 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
162 nlohmann::json printerMapJson = nlohmann::json::array();
163 nlohmann::json printerJson;
164 printerJson["id"] = "com.ohos.spooler:mdns://9e9561ad-0e30-1000-8000-9c9561ad0e30";
165 printerJson["maker"] = "PixLab V1";
166 printerJson["name"] = "PixLab_V1-0105";
167 printerJson["uri"] = "ipp://192.168.186.1:631/ipp/print";
168 printerMapJson.push_back(printerJson);
169 nlohmann::json jsonObject;
170 jsonObject["version"] = "v1";
171 jsonObject["printer_list"] = printerMapJson;
172 EXPECT_EQ(systemData->ParsePrinterListJsonV1(printerMapJson), false);
173 EXPECT_EQ(systemData->ParsePrinterListJsonV1(jsonObject), true);
174 std::string printerName = systemData->QueryPrinterIdByStandardizeName("PixLab_V1-0105");
175 EXPECT_EQ(systemData->SaveCupsPrinterMap(), true);
176 }
177
178 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0010, TestSize.Level1)
179 {
180 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
181 nlohmann::json printerMapJson;
182 printerMapJson["printer"] = "1234";
183 EXPECT_EQ(systemData->ParsePrinterListJsonV1(printerMapJson), false);
184 printerMapJson["printer_list"] = "1234";
185 EXPECT_EQ(systemData->ParsePrinterListJsonV1(printerMapJson), false);
186 }
187
188 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0011, TestSize.Level1)
189 {
190 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
191 systemData->addedPrinterMap_["1"] = nullptr;
192 systemData->SaveCupsPrinterMap();
193 CupsPrinterInfo cupsPrinterInfo;
194 cupsPrinterInfo.name = "print";
195 cupsPrinterInfo.uri = "123";
196 cupsPrinterInfo.maker = "print";
197 systemData->addedPrinterMap_["2"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
198 systemData->SaveCupsPrinterMap();
199 }
200
201 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0012, TestSize.Level1)
202 {
203 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
204 systemData->addedPrinterMap_["1"] = nullptr;
205 std::string printerName = "Direct";
206 systemData->QueryPrinterIdByStandardizeName(printerName);
207 systemData->SaveCupsPrinterMap();
208 CupsPrinterInfo cupsPrinterInfo;
209 cupsPrinterInfo.name = "Direct";
210 cupsPrinterInfo.uri = "123";
211 cupsPrinterInfo.maker = "print";
212 systemData->addedPrinterMap_["2"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
213 systemData->QueryPrinterIdByStandardizeName(printerName);
214 cupsPrinterInfo.name = "223";
215 systemData->addedPrinterMap_["4"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
216 systemData->QueryPrinterIdByStandardizeName(printerName);
217 }
218
219 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0013, TestSize.Level1)
220 {
221 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
222 std::string printerId = "1234";
223 CupsPrinterInfo cupsPrinterInfo2;
224 systemData->addedPrinterMap_["1"] = nullptr;
225 systemData->QueryCupsPrinterInfoByPrinterId(printerId, cupsPrinterInfo2);
226 systemData->SaveCupsPrinterMap();
227 CupsPrinterInfo cupsPrinterInfo;
228 cupsPrinterInfo.name = "Direct Pixlab1620";
229 cupsPrinterInfo.uri = "123";
230 cupsPrinterInfo.maker = "print";
231 systemData->addedPrinterMap_["123"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
232 CupsPrinterInfo cupsPrinterInfo3;
233 systemData->addedPrinterMap_["11"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo3);
234 systemData->QueryCupsPrinterInfoByPrinterId(printerId, cupsPrinterInfo2);
235 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
236 systemData->QueryCupsPrinterInfoByPrinterId(printerId, cupsPrinterInfo2);
237 }
238
239 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0014, TestSize.Level1)
240 {
241 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
242 std::string printerId = "1234";
243 PrinterInfo printerInfo;
244 systemData->InsertPrinterInfo(printerId, printerInfo);
245 systemData->addedPrinterMap_["1"] = nullptr;
246 systemData->InsertPrinterInfo(printerId, printerInfo);
247 }
248
249 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0015, TestSize.Level1)
250 {
251 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
252 std::string printerId = "1234";
253 PrinterInfo printerInfo;
254 systemData->addedPrinterInfoList_["1"] = nullptr;
255 systemData->QueryPrinterInfoByPrinterId(printerId);
256 systemData->addedPrinterInfoList_["1234"] = std::make_shared<PrinterInfo>(printerInfo);
257 systemData->QueryPrinterInfoByPrinterId(printerId);
258 }
259
260 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0016, TestSize.Level1)
261 {
262 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
263 std::string printerId = "1234";
264 CupsPrinterInfo cupsPrinterInfo;
265 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, false);
266 systemData->addedPrinterMap_["1234"] = nullptr;
267 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, false);
268 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
269 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, false);
270 }
271
272 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0017, TestSize.Level1)
273 {
274 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
275 nlohmann::json printerMapJson = nlohmann::json::array();
276 nlohmann::json printerJson;
277 printerJson["id"] = 123;
278 printerJson["maker"] = 123;
279 printerJson["name"] = 132;
280 printerJson["uri"] = 123;
281 printerMapJson.push_back(printerJson);
282 nlohmann::json jsonObject;
283 jsonObject["version"] = "v1";
284 jsonObject["printer_list"] = printerMapJson;
285 systemData->ParsePrinterListJsonV1(jsonObject);
286 }
287
288 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0018, TestSize.Level1)
289 {
290 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
291 nlohmann::json printerMapJson = nlohmann::json::array();
292 nlohmann::json printerJson;
293 printerMapJson.push_back(printerJson);
294 nlohmann::json jsonObject;
295 jsonObject["version"] = "v1";
296 jsonObject["printer_list"] = printerMapJson;
297 systemData->ParsePrinterListJsonV1(jsonObject);
298
299 nlohmann::json printerJson2;
300 printerJson2["id"] = "123";
301 printerMapJson.push_back(printerJson2);
302 nlohmann::json jsonObject2;
303 jsonObject2["version"] = "v1";
304 jsonObject2["printer_list"] = printerMapJson;
305 systemData->ParsePrinterListJsonV1(jsonObject2);
306
307 nlohmann::json printerJson3;
308 printerJson3["id"] = "123";
309 printerJson3["name"] = 132;
310 printerMapJson.push_back(printerJson3);
311 nlohmann::json jsonObject3;
312 jsonObject3["version"] = "v1";
313 jsonObject3["printer_list"] = printerMapJson;
314 systemData->ParsePrinterListJsonV1(jsonObject3);
315
316 nlohmann::json printerJson4;
317 printerJson4["id"] = "123";
318 printerJson4["name"] = "132";
319 printerMapJson.push_back(printerJson4);
320 nlohmann::json jsonObject4;
321 jsonObject4["version"] = "v1";
322 jsonObject4["printer_list"] = printerMapJson;
323 systemData->ParsePrinterListJsonV1(jsonObject4);
324
325 nlohmann::json printerJson5;
326 printerJson5["id"] = "123";
327 printerJson5["name"] = "132";
328 printerJson5["uri"] = 123;
329 printerMapJson.push_back(printerJson5);
330 nlohmann::json jsonObject5;
331 jsonObject5["version"] = "v1";
332 jsonObject5["printer_list"] = printerMapJson;
333 systemData->ParsePrinterListJsonV1(jsonObject5);
334 }
335
336 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0019, TestSize.Level1)
337 {
338 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
339 nlohmann::json printerMapJson = nlohmann::json::array();
340 nlohmann::json printerJson;
341 printerMapJson.push_back(printerJson);
342 nlohmann::json jsonObject;
343 jsonObject["version"] = "v1";
344 jsonObject["printer_list"] = printerMapJson;
345 systemData->ParsePrinterListJsonV1(jsonObject);
346
347 nlohmann::json printerJson6;
348 printerJson6["id"] = "123";
349 printerJson6["name"] = "132";
350 printerJson6["uri"] = "123";
351 printerMapJson.push_back(printerJson6);
352 nlohmann::json jsonObject6;
353 jsonObject6["version"] = "v1";
354 jsonObject6["printer_list"] = printerMapJson;
355 systemData->ParsePrinterListJsonV1(jsonObject6);
356
357 nlohmann::json printerJson7;
358 printerJson7["id"] = "123";
359 printerJson7["name"] = "132";
360 printerJson7["uri"] = "123";
361 printerJson7["maker"] = 123;
362 printerMapJson.push_back(printerJson7);
363 nlohmann::json jsonObject7;
364 jsonObject7["version"] = "v1";
365 jsonObject7["printer_list"] = printerMapJson;
366 systemData->ParsePrinterListJsonV1(jsonObject7);
367 }
368
369 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0020, TestSize.Level1)
370 {
371 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
372 nlohmann::json printerMapJson = nlohmann::json::array();
373 nlohmann::json printerJson;
374 printerJson["id"] = "123";
375 printerJson["name"] = "132";
376 printerJson["uri"] = "123";
377 printerJson["maker"] = 123;
378 nlohmann::json capsJson = nlohmann::json::array();
379 printerJson["capability"] = capsJson;
380 printerMapJson.push_back(printerJson);
381 nlohmann::json jsonObject;
382 jsonObject["version"] = "v1";
383 jsonObject["printer_list"] = printerMapJson;
384 systemData->ParsePrinterListJsonV1(jsonObject);
385 }
386
387 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0021, TestSize.Level1)
388 {
389 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
390 nlohmann::json printerMapJson = nlohmann::json::array();
391 nlohmann::json printerJson;
392 printerJson["id"] = "123";
393 printerJson["name"] = "132";
394 printerJson["uri"] = "123";
395 printerJson["maker"] = 123;
396 nlohmann::json capsJson = nlohmann::json::object();
397 printerJson["capability"] = capsJson;
398 printerMapJson.push_back(printerJson);
399 nlohmann::json jsonObject;
400 jsonObject["version"] = "v1";
401 jsonObject["printer_list"] = printerMapJson;
402 systemData->ParsePrinterListJsonV1(jsonObject);
403 }
404
405 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0022, TestSize.Level1)
406 {
407 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
408 std::string printerId = "1234";
409 CupsPrinterInfo cupsPrinterInfo;
410 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
411 systemData->InsertCupsPrinter(printerId, cupsPrinterInfo, true);
412 }
413
414 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0023, TestSize.Level1)
415 {
416 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
417 std::string printerId = "1234";
418 CupsPrinterInfo cupsPrinterInfo;
419 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
420 systemData->DeleteCupsPrinter(printerId);
421 }
422
423 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0024, TestSize.Level1)
424 {
425 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
426 std::string printerId = "1234";
427 systemData->addedPrinterMap_["1"] = nullptr;
428 CupsPrinterInfo cupsPrinterInfo;
429 cupsPrinterInfo.name = "Direct";
430 cupsPrinterInfo.uri = "123";
431 cupsPrinterInfo.maker = "print";
432 systemData->addedPrinterMap_["2"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
433 CupsPrinterInfo cupsPrinterInfo2;
434 cupsPrinterInfo2.name = "Direct";
435 cupsPrinterInfo2.uri = "123";
436 cupsPrinterInfo2.maker = "print";
437 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo2);
438 systemData->UpdatePrinterStatus(printerId, PRINTER_STATUS_IDLE);
439 }
440
441 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0025, TestSize.Level1)
442 {
443 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
444 std::string printerId = "1234";
445 systemData->addedPrinterMap_["1"] = nullptr;
446 CupsPrinterInfo cupsPrinterInfo;
447 cupsPrinterInfo.name = "Direct";
448 cupsPrinterInfo.uri = "123";
449 cupsPrinterInfo.maker = "print";
450 systemData->addedPrinterMap_["2"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
451 std::vector<std::string> printerNameList;
452 systemData->GetAddedPrinterListFromSystemData(printerNameList);
453 }
454
455 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0026, TestSize.Level1)
456 {
457 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
458 std::vector<std::string> printerNameList;
459 systemData->GetAddedPrinterListFromSystemData(printerNameList);
460 systemData->addedPrinterMap_["1"] = nullptr;
461 systemData->GetAddedPrinterListFromSystemData(printerNameList);
462 CupsPrinterInfo cupsPrinterInfo;
463 cupsPrinterInfo.name = "Direct";
464 cupsPrinterInfo.uri = "123";
465 cupsPrinterInfo.maker = "print";
466 systemData->addedPrinterMap_["1"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
467 systemData->GetAddedPrinterListFromSystemData(printerNameList);
468 }
469
470 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0027, TestSize.Level1)
471 {
472 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
473 PrinterCapability printerCapability;
474 nlohmann::json capsJson;
475 systemData->ConvertPrinterCapabilityToJson(printerCapability, capsJson);
476 }
477
478 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0028, TestSize.Level1)
479 {
480 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
481 PrinterCapability printerCapability;
482 PrintMargin minMargin;
483 printerCapability.SetMinMargin(minMargin);
484 std::vector<PrintResolution> resolutionList;
485 printerCapability.SetResolution(resolutionList);
486 std::string ops = "test";
487 printerCapability.SetOption(ops);
488 nlohmann::json capsJson;
489 systemData->ConvertPrinterCapabilityToJson(printerCapability, capsJson);
490 }
491
492 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0029, TestSize.Level1)
493 {
494 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
495 PrinterCapability printerCapability;
496 PrintMargin minMargin;
497 printerCapability.SetMinMargin(minMargin);
498 std::vector<PrintResolution> resolutionList;
499 printerCapability.SetResolution(resolutionList);
500 nlohmann::json ops;
501 ops["key"] = "value";
502 printerCapability.SetOption(ops.dump());
503 nlohmann::json capsJson;
504 systemData->ConvertPrinterCapabilityToJson(printerCapability, capsJson);
505 }
506
507 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0030, TestSize.Level1)
508 {
509 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
510 PrinterCapability printerCapability;
511 PrintMargin minMargin;
512 printerCapability.SetMinMargin(minMargin);
513 nlohmann::json capsJson;
514 systemData->ConvertPrintMarginToJson(printerCapability, capsJson);
515 }
516
517 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0031, TestSize.Level1)
518 {
519 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
520 PrinterCapability printerCapability;
521 PrintMargin minMargin;
522 minMargin.SetTop(100);
523 minMargin.SetBottom(100);
524 minMargin.SetLeft(100);
525 minMargin.SetRight(100);
526 printerCapability.SetMinMargin(minMargin);
527 nlohmann::json capsJson;
528 systemData->ConvertPrintMarginToJson(printerCapability, capsJson);
529 }
530
531 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0032, TestSize.Level1)
532 {
533 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
534 nlohmann::json capsJson;
535 PrinterCapability printerCapability;
536 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
537 capsJson["colorMode"] = "string";
538 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
539 capsJson["colorMode"] = 123;
540 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
541 capsJson["duplexMode"] = "string";
542 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
543 capsJson["duplexMode"] = 123;
544 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
545 nlohmann::json marginJson = nlohmann::json::array();
546 capsJson["minMargin"] = marginJson;
547 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
548 nlohmann::json marginJson2 = nlohmann::json::object();
549 capsJson["minMargin"] = marginJson2;
550 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
551 nlohmann::json pageSizeJson = nlohmann::json::object();
552 capsJson["pageSize"] = pageSizeJson;
553 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
554 nlohmann::json pageSizeJson2 = nlohmann::json::array();
555 nlohmann::json pageSize = nlohmann::json::array();
556 pageSizeJson2.push_back(pageSize);
557 capsJson["pageSize"] = pageSizeJson2;
558 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
559 nlohmann::json pageSizeJson3 = nlohmann::json::array();
560 capsJson["pageSize"] = pageSizeJson3;
561 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
562 nlohmann::json resolutionJson = nlohmann::json::object();
563 capsJson["resolution"] = resolutionJson;
564 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
565 nlohmann::json resolutionJson2 = nlohmann::json::array();
566 nlohmann::json resolution = nlohmann::json::array();
567 resolutionJson2.push_back(resolution);
568 capsJson["resolution"] = resolutionJson2;
569 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
570 nlohmann::json resolutionJson3 = nlohmann::json::array();
571 capsJson["resolution"] = resolutionJson3;
572 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
573 nlohmann::json opsJson = nlohmann::json::array();
574 capsJson["options"] = opsJson;
575 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
576 nlohmann::json opsJson2 = nlohmann::json::object();
577 capsJson["options"] = opsJson2;
578 systemData->ConvertJsonToPrinterCapability(capsJson, printerCapability);
579 }
580
581 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0033, TestSize.Level1)
582 {
583 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
584 nlohmann::json capsJson;
585 PrinterCapability printerCapability;
586 nlohmann::json resolutionListJson = nlohmann::json::array();
587 nlohmann::json resolutionItem = nlohmann::json::array();
588 resolutionListJson.push_back(resolutionItem);
589 capsJson["resolution"] = resolutionListJson;
590 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
591 nlohmann::json resolutionListJson2 = nlohmann::json::array();
592 nlohmann::json resolutionItem2 = nlohmann::json::object();
593 resolutionListJson2.push_back(resolutionItem2);
594 capsJson["resolution"] = resolutionListJson2;
595 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
596 nlohmann::json resolutionListJson3 = nlohmann::json::array();
597 nlohmann::json resolutionItem3 = nlohmann::json::object();
598 resolutionItem3["id"] = 123;
599 resolutionListJson3.push_back(resolutionItem3);
600 capsJson["resolution"] = resolutionListJson3;
601 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
602 nlohmann::json resolutionListJson4 = nlohmann::json::array();
603 nlohmann::json resolutionItem4 = nlohmann::json::object();
604 resolutionItem4["id"] = "123";
605 resolutionListJson4.push_back(resolutionItem4);
606 capsJson["resolution"] = resolutionListJson4;
607 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
608 }
609
610 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0034, TestSize.Level1)
611 {
612 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
613 nlohmann::json capsJson;
614 PrinterCapability printerCapability;
615 nlohmann::json resolutionListJson = nlohmann::json::array();
616 nlohmann::json resolutionItem = nlohmann::json::object();
617 resolutionItem["id"] = "123";
618 resolutionItem["horizontalDpi"] = "123";
619 resolutionListJson.push_back(resolutionItem);
620 capsJson["resolution"] = resolutionListJson;
621 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
622 nlohmann::json resolutionListJson2 = nlohmann::json::array();
623 nlohmann::json resolutionItem2 = nlohmann::json::object();
624 resolutionItem2["id"] = "123";
625 resolutionItem2["horizontalDpi"] = 123;
626 resolutionListJson2.push_back(resolutionItem2);
627 capsJson["resolution"] = resolutionListJson2;
628 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
629 nlohmann::json resolutionListJson3 = nlohmann::json::array();
630 nlohmann::json resolutionItem3 = nlohmann::json::object();
631 resolutionItem3["id"] = "123";
632 resolutionItem3["horizontalDpi"] = 123;
633 resolutionItem3["verticalDpi"] = "123";
634 resolutionListJson3.push_back(resolutionItem3);
635 capsJson["resolution"] = resolutionListJson3;
636 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
637 nlohmann::json resolutionListJson4 = nlohmann::json::array();
638 nlohmann::json resolutionItem4 = nlohmann::json::object();
639 resolutionItem4["id"] = "123";
640 resolutionItem4["horizontalDpi"] = 123;
641 resolutionItem4["verticalDpi"] = 123;
642 resolutionListJson4.push_back(resolutionItem4);
643 capsJson["resolution"] = resolutionListJson4;
644 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
645 }
646
647 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0035, TestSize.Level1)
648 {
649 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
650 nlohmann::json capsJson;
651 PrinterCapability printerCapability;
652 nlohmann::json resolutionListJson = nlohmann::json::array();
653 capsJson["resolution"] = resolutionListJson;
654 systemData->ConvertJsonToPrintResolution(capsJson, printerCapability);
655 }
656
657 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0036, TestSize.Level1)
658 {
659 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
660 nlohmann::json capsJson;
661 PrinterCapability printerCapability;
662 nlohmann::json pageSizeListJson = nlohmann::json::array();
663 capsJson["pageSize"] = pageSizeListJson;
664 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
665
666 nlohmann::json pageSizeListJson2 = nlohmann::json::array();
667 nlohmann::json pageSizeItem2 = nlohmann::json::array();
668 pageSizeListJson2.push_back(pageSizeItem2);
669 capsJson["pageSize"] = pageSizeListJson2;
670 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
671
672 nlohmann::json pageSizeListJson3 = nlohmann::json::array();
673 nlohmann::json pageSizeItem3 = nlohmann::json::object();
674 pageSizeItem3["id"] = 123;
675 pageSizeListJson3.push_back(pageSizeItem3);
676 capsJson["pageSize"] = pageSizeListJson3;
677 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
678
679 nlohmann::json pageSizeListJson4 = nlohmann::json::array();
680 nlohmann::json pageSizeItem4 = nlohmann::json::object();
681 pageSizeItem4["id"] = "123";
682 pageSizeListJson4.push_back(pageSizeItem4);
683 capsJson["pageSize"] = pageSizeListJson4;
684 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
685 }
686
687 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0037, TestSize.Level1)
688 {
689 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
690 nlohmann::json capsJson;
691 PrinterCapability printerCapability;
692 nlohmann::json pageSizeListJson = nlohmann::json::array();
693 nlohmann::json pageSizeItem = nlohmann::json::object();
694 pageSizeItem["id"] = "123";
695 pageSizeItem["name"] = 123;
696 pageSizeListJson.push_back(pageSizeItem);
697 capsJson["pageSize"] = pageSizeListJson;
698 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
699
700 nlohmann::json pageSizeListJson2 = nlohmann::json::array();
701 nlohmann::json pageSizeItem2 = nlohmann::json::object();
702 pageSizeItem2["id"] = "123";
703 pageSizeItem2["name"] = "123";
704 pageSizeListJson2.push_back(pageSizeItem2);
705 capsJson["pageSize"] = pageSizeListJson2;
706 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
707
708 nlohmann::json pageSizeListJson3 = nlohmann::json::array();
709 nlohmann::json pageSizeItem3 = nlohmann::json::object();
710 pageSizeItem3["id"] = "123";
711 pageSizeItem3["name"] = "123";
712 pageSizeItem3["width"] = "123";
713 pageSizeListJson3.push_back(pageSizeItem3);
714 capsJson["pageSize"] = pageSizeListJson3;
715 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
716
717 nlohmann::json pageSizeListJson4 = nlohmann::json::array();
718 nlohmann::json pageSizeItem4 = nlohmann::json::object();
719 pageSizeItem4["id"] = "123";
720 pageSizeItem4["name"] = "123";
721 pageSizeItem4["width"] = 123;
722 pageSizeListJson4.push_back(pageSizeItem4);
723 capsJson["pageSize"] = pageSizeListJson4;
724 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
725 }
726
727 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0038, TestSize.Level1)
728 {
729 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
730 nlohmann::json capsJson;
731 PrinterCapability printerCapability;
732 nlohmann::json pageSizeListJson = nlohmann::json::array();
733 nlohmann::json pageSizeItem = nlohmann::json::object();
734 pageSizeItem["id"] = "123";
735 pageSizeItem["name"] = "123";
736 pageSizeItem["width"] = 123;
737 pageSizeItem["height"] = "123";
738 pageSizeListJson.push_back(pageSizeItem);
739 capsJson["pageSize"] = pageSizeListJson;
740 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
741
742 nlohmann::json pageSizeListJson2 = nlohmann::json::array();
743 nlohmann::json pageSizeItem2 = nlohmann::json::object();
744 pageSizeItem2["id"] = "123";
745 pageSizeItem2["name"] = "123";
746 pageSizeItem2["width"] = 123;
747 pageSizeItem2["height"] = 123;
748 pageSizeListJson2.push_back(pageSizeItem2);
749 capsJson["pageSize"] = pageSizeListJson2;
750 systemData->ConvertJsonToPageSize(capsJson, printerCapability);
751 }
752
753 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0039, TestSize.Level1)
754 {
755 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
756 nlohmann::json capsJson;
757 PrinterCapability printerCapability;
758 nlohmann::json marginJson = nlohmann::json::object();
759 capsJson["minMargin"] = marginJson;
760 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
761
762 nlohmann::json marginJson2 = nlohmann::json::object();
763 marginJson2["top"] = "123";
764 capsJson["minMargin"] = marginJson2;
765 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
766
767 nlohmann::json marginJson3 = nlohmann::json::object();
768 marginJson3["top"] = 123;
769 capsJson["minMargin"] = marginJson3;
770 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
771
772 nlohmann::json marginJson4 = nlohmann::json::object();
773 marginJson4["top"] = 123;
774 marginJson4["bottom"] = "123";
775 capsJson["minMargin"] = marginJson4;
776 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
777
778 nlohmann::json marginJson5 = nlohmann::json::object();
779 marginJson5["top"] = 123;
780 marginJson5["bottom"] = 123;
781 capsJson["minMargin"] = marginJson5;
782 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
783
784 nlohmann::json marginJson6 = nlohmann::json::object();
785 marginJson6["top"] = 123;
786 marginJson6["bottom"] = 123;
787 marginJson6["left"] = "123";
788 capsJson["minMargin"] = marginJson6;
789 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
790
791 nlohmann::json marginJson7 = nlohmann::json::object();
792 marginJson7["top"] = 123;
793 marginJson7["bottom"] = 123;
794 marginJson7["left"] = 123;
795 capsJson["minMargin"] = marginJson7;
796 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
797 }
798
799 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0040, TestSize.Level1)
800 {
801 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
802 nlohmann::json capsJson;
803 PrinterCapability printerCapability;
804 nlohmann::json marginJson = nlohmann::json::object();
805 marginJson["top"] = 123;
806 marginJson["bottom"] = 123;
807 marginJson["left"] = 123;
808 marginJson["right"] = "123";
809 capsJson["minMargin"] = marginJson;
810 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
811
812 nlohmann::json marginJson2 = nlohmann::json::object();
813 marginJson2["top"] = 123;
814 marginJson2["bottom"] = 123;
815 marginJson2["left"] = 123;
816 marginJson2["right"] = 123;
817 capsJson["minMargin"] = marginJson2;
818 systemData->ConvertJsonToPrintMargin(capsJson, printerCapability);
819 }
820
821 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0041, TestSize.Level1)
822 {
823 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
824 CupsPrinterInfo cupsPrinter;
825 std::string printerId = "123";
826 PrinterCapability printerCapability;
827 systemData->GetPrinterCapabilityFromSystemData(cupsPrinter, printerId, printerCapability);
828 }
829
830 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0042, TestSize.Level1)
831 {
832 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
833 CupsPrinterInfo cupsPrinter;
834 std::string printerId = "123";
835 PrinterCapability printerCapability;
836 PrinterCapability printerCapability2;
837 nlohmann::json opsJson;
838 opsJson["key"] = "value";
839 printerCapability2.SetOption(opsJson.dump());
840 std::vector<PrintPageSize> pageSizeList;
841 PrintPageSize pageSize;
842 pageSizeList.push_back(pageSize);
843 printerCapability2.SetPageSize(pageSizeList);
844 cupsPrinter.printerCapability = printerCapability2;
845 systemData->GetPrinterCapabilityFromSystemData(cupsPrinter, printerId, printerCapability);
846 }
847
848 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0043, TestSize.Level1)
849 {
850 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
851 nlohmann::json object;
852 std::string printerId = "123";
853 systemData->CheckPrinterInfoJson(object, printerId);
854 }
855
856 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0044, TestSize.Level1)
857 {
858 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
859 nlohmann::json object;
860 object["id"] = 123;
861 std::string printerId = "123";
862 systemData->CheckPrinterInfoJson(object, printerId);
863
864 nlohmann::json object2;
865 object2["id"] = "12";
866 systemData->CheckPrinterInfoJson(object2, printerId);
867
868 nlohmann::json object3;
869 object3["id"] = "123";
870 systemData->CheckPrinterInfoJson(object3, printerId);
871
872 nlohmann::json object4;
873 object4["id"] = "123";
874 object4["name"] = 123;
875 systemData->CheckPrinterInfoJson(object4, printerId);
876
877 nlohmann::json object5;
878 object5["id"] = "123";
879 object5["name"] = "123";
880 systemData->CheckPrinterInfoJson(object5, printerId);
881
882 nlohmann::json object6;
883 object6["id"] = "123";
884 object6["name"] = "123";
885 object6["uri"] = 123;
886 systemData->CheckPrinterInfoJson(object6, printerId);
887
888 nlohmann::json object7;
889 object7["id"] = "123";
890 object7["name"] = "123";
891 object7["uri"] = "123";
892 systemData->CheckPrinterInfoJson(object7, printerId);
893 }
894
895 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0045, TestSize.Level1)
896 {
897 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
898 nlohmann::json object;
899 object["id"] = "123";
900 object["name"] = "123";
901 object["uri"] = "123";
902 object["maker"] = 123;
903 std::string printerId = "123";
904 systemData->CheckPrinterInfoJson(object, printerId);
905
906 nlohmann::json object2;
907 object2["id"] = "123";
908 object2["name"] = "123";
909 object2["uri"] = "123";
910 object2["maker"] = "123";
911 systemData->CheckPrinterInfoJson(object2, printerId);
912
913 nlohmann::json object3;
914 object3["id"] = "123";
915 object3["name"] = "123";
916 object3["uri"] = "123";
917 object3["maker"] = "123";
918 object3["capability"] = "123";
919 systemData->CheckPrinterInfoJson(object3, printerId);
920
921 nlohmann::json object4;
922 object4["id"] = "123";
923 object4["name"] = "123";
924 object4["uri"] = "123";
925 object4["maker"] = "123";
926 nlohmann::json capsJson = nlohmann::json::object();
927 object4["capability"] = capsJson;
928 systemData->CheckPrinterInfoJson(object4, printerId);
929 }
930
931 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0046, TestSize.Level1)
932 {
933 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
934 std::string printerId = "123";
935 systemData->IsPrinterAdded(printerId);
936 systemData->addedPrinterMap_["123"] = nullptr;
937 systemData->IsPrinterAdded(printerId);
938 CupsPrinterInfo cupsPrinterInfo;
939 cupsPrinterInfo.name = "Direct";
940 cupsPrinterInfo.uri = "123";
941 cupsPrinterInfo.maker = "print";
942 systemData->addedPrinterMap_["123"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
943 systemData->IsPrinterAdded(printerId);
944 }
945
946 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0047, TestSize.Level1)
947 {
948 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
949 std::string printerId = "1234";
950 PrinterInfo printerInfo;
951 systemData->QueryPrinterInfoById(printerId, printerInfo);
952 CupsPrinterInfo cupsPrinterInfo;
953 cupsPrinterInfo.name = "Direct Pixlab1620";
954 cupsPrinterInfo.uri = "123";
955 cupsPrinterInfo.maker = "print";
956 systemData->addedPrinterMap_["1234"] = std::make_shared<CupsPrinterInfo>(cupsPrinterInfo);
957 systemData->QueryPrinterInfoById(printerId, printerInfo);
958 }
959
960 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0048, TestSize.Level1)
961 {
962 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
963 std::string printerId;
964 nlohmann::json jsonObject;
965 PrinterCapability printerCapability;
966 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject, printerCapability);
967
968 nlohmann::json printerMapJson = nlohmann::json::object();
969 jsonObject["printer_list"] = printerMapJson;
970 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject, printerCapability);
971
972 nlohmann::json jsonObject2;
973 nlohmann::json printerMapJson2 = nlohmann::json::array();
974 jsonObject2["printer_list"] = printerMapJson2;
975 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject2, printerCapability);
976
977 nlohmann::json jsonObject3;
978 nlohmann::json printerMapJson3 = nlohmann::json::array();
979 nlohmann::json item = nlohmann::json::object();
980 item["key"] = "value";
981 printerMapJson3.push_back(item);
982 jsonObject3["printer_list"] = printerMapJson3;
983 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject3, printerCapability);
984 }
985
986 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0049, TestSize.Level1)
987 {
988 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
989 std::string printerId;
990 PrinterCapability printerCapability;
991 nlohmann::json jsonObject;
992 nlohmann::json printerMapJson = nlohmann::json::array();
993 nlohmann::json item = nlohmann::json::object();
994 item["id"] = "123";
995 item["name"] = "123";
996 item["uri"] = "123";
997 item["maker"] = "123";
998 nlohmann::json capsJson = nlohmann::json::object();
999 capsJson["key"] = "value";
1000 item["capability"] = capsJson;
1001 printerMapJson.push_back(item);
1002 jsonObject["printer_list"] = printerMapJson;
1003 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject, printerCapability);
1004 }
1005
1006 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0050, TestSize.Level1)
1007 {
1008 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
1009 std::string printerId;
1010 PrinterCapability printerCapability;
1011 nlohmann::json jsonObject;
1012 nlohmann::json printerMapJson = nlohmann::json::array();
1013 nlohmann::json item = nlohmann::json::object();
1014 item["id"] = "123";
1015 item["name"] = "123";
1016 item["uri"] = "123";
1017 item["maker"] = "123";
1018 nlohmann::json capsJson = nlohmann::json::object();
1019 systemData->ConvertPrinterCapabilityToJson(printerCapability, capsJson);
1020 item["capability"] = capsJson;
1021 printerMapJson.push_back(item);
1022 jsonObject["printer_list"] = printerMapJson;
1023 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject, printerCapability);
1024 }
1025
1026 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0051, TestSize.Level1)
1027 {
1028 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
1029 std::string printerId = "123";
1030 PrinterCapability printerCapability;
1031 std::vector<PrintPageSize> pageSizeList;
1032 PrintPageSize pageSize;
1033 pageSizeList.push_back(pageSize);
1034 printerCapability.SetPageSize(pageSizeList);
1035 nlohmann::json opsJson;
1036 opsJson["printerName"] = "123";
1037 printerCapability.SetOption(opsJson.dump());
1038 nlohmann::json jsonObject;
1039 nlohmann::json printerMapJson = nlohmann::json::array();
1040 nlohmann::json item = nlohmann::json::object();
1041 item["id"] = "123";
1042 item["name"] = "123";
1043 item["uri"] = "123";
1044 item["maker"] = "123";
1045 nlohmann::json capsJson = nlohmann::json::object();
1046 systemData->ConvertPrinterCapabilityToJson(printerCapability, capsJson);
1047 item["capability"] = capsJson;
1048 printerMapJson.push_back(item);
1049 jsonObject["printer_list"] = printerMapJson;
1050 systemData->GetPrinterCapabilityFromJson(printerId, jsonObject, printerCapability);
1051 }
1052
1053 HWTEST_F(PrintSystemDataTest, PrintSystemDataTest_0052, TestSize.Level1)
1054 {
1055 auto systemData = std::make_shared<OHOS::Print::PrintSystemData>();
1056 std::string printerId = "";
1057 systemData->DeleteCupsPrinter(printerId);
1058 }
1059
1060 } // namespace Print
1061 } // namespace OHOS
1062