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