2 * Copyright 2017 Huawei Technologies Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.onap.vnfsdk.marketplace.resource;
19 import static org.junit.Assert.assertEquals;
20 import static org.junit.Assert.assertNotNull;
21 import static org.junit.Assert.assertNull;
23 import java.io.BufferedInputStream;
25 import java.io.FileInputStream;
26 import java.io.FileNotFoundException;
27 import java.io.FileOutputStream;
28 import java.io.FileWriter;
29 import java.io.InputStream;
30 import java.text.DecimalFormat;
31 import java.util.ArrayList;
32 import java.util.List;
33 import java.util.zip.ZipEntry;
34 import java.util.zip.ZipOutputStream;
36 import javax.ws.rs.core.Response;
38 import org.apache.ibatis.exceptions.PersistenceException;
39 import org.codehaus.jackson.JsonNode;
40 import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
41 import org.junit.Before;
42 import org.junit.Test;
43 import org.onap.vnfsdk.marketplace.common.FileUtil;
44 import org.onap.vnfsdk.marketplace.common.JsonUtil;
45 import org.onap.vnfsdk.marketplace.common.ToolUtil;
46 import org.onap.vnfsdk.marketplace.db.entity.PackageData;
47 import org.onap.vnfsdk.marketplace.db.impl.MarketplaceDaoImpl;
48 import org.onap.vnfsdk.marketplace.db.inf.IMarketplaceDao;
49 import org.onap.vnfsdk.marketplace.db.resource.PackageManager;
50 import org.onap.vnfsdk.marketplace.db.util.MarketplaceDbUtil;
51 import org.onap.vnfsdk.marketplace.db.wrapper.PackageHandler;
52 import org.onap.vnfsdk.marketplace.entity.CsarPackage;
53 import org.onap.vnfsdk.marketplace.entity.EnumOperationalState;
54 import org.onap.vnfsdk.marketplace.entity.EnumType;
55 import org.onap.vnfsdk.marketplace.entity.EnumUsageState;
56 import org.onap.vnfsdk.marketplace.entity.VnfPackage;
57 import org.onap.vnfsdk.marketplace.entity.request.PackageBasicInfo;
58 import org.onap.vnfsdk.marketplace.entity.response.CsarFileUriResponse;
59 import org.onap.vnfsdk.marketplace.entity.response.PackageMeta;
60 import org.onap.vnfsdk.marketplace.entity.response.PackageResponse;
61 import org.onap.vnfsdk.marketplace.filemanage.http.HttpFileManagerImpl;
62 import org.onap.vnfsdk.marketplace.onboarding.entity.OnBoardingResult;
63 import org.onap.vnfsdk.marketplace.onboarding.entity.OnBoradingRequest;
64 import org.onap.vnfsdk.marketplace.onboarding.entity.ResultKey;
65 import org.onap.vnfsdk.marketplace.onboarding.hooks.functiontest.FunctionTestExceutor;
66 import org.onap.vnfsdk.marketplace.onboarding.hooks.functiontest.FunctionTestHook;
67 import org.onap.vnfsdk.marketplace.rest.RestResponse;
68 import org.onap.vnfsdk.marketplace.rest.RestfulClient;
69 import org.onap.vnfsdk.marketplace.wrapper.PackageWrapper;
70 import org.onap.vnfsdk.marketplace.wrapper.PackageWrapperUtil;
75 public class PackageResourceTest {
77 private PackageResource packageResource = null;
79 private Response response = null;
81 private String csarID = "csarid";
83 private List<PackageData> packageDataList = null;
85 private PackageData packageData = null;
87 private FormDataContentDisposition fileDetail = null;
89 private InputStream inputStream = null;
91 private String operTypeId = "opertype";
93 private VnfPackage vnfPackageObj = null;
95 private CsarPackage csarPackageObj = null;
97 private PackageBasicInfo pkgBasicInfoObj = null;
99 private PackageMeta pkgMetaObj = null;
101 private PackageResponse pkgResponseObj = null;
103 private CsarFileUriResponse csarFileUriResObj = null;
106 public void setUp() {
107 packageResource = new PackageResource();
108 vnfPackageObj = new VnfPackage();
109 csarPackageObj = new CsarPackage();
110 pkgBasicInfoObj = new PackageBasicInfo();
111 pkgMetaObj = new PackageMeta();
112 pkgResponseObj = new PackageResponse();
113 csarFileUriResObj = new CsarFileUriResponse();
117 public void createTestFile() {
118 String filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
119 File file = new File(filePath);
121 file.createNewFile();
122 FileWriter writer = new FileWriter(file);
123 writer.write("This is test file.");
125 } catch(Exception e) {
129 filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
130 file = new File(filePath);
135 StringBuilder sb = new StringBuilder();
136 sb.append("test data");
138 filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "temp.zip";
139 file = new File(filePath);
141 ZipOutputStream out = new ZipOutputStream(new FileOutputStream(file));
142 ZipEntry e = new ZipEntry("temp.txt");
144 byte[] data = sb.toString().getBytes();
145 out.write(data, 0, data.length);
148 } catch(Exception e) {
154 public void testQueryPackageListByCond() throws Exception {
155 new MockUp<MarketplaceDaoImpl>() {
158 public List<PackageData> getAllPackageData() {
159 return new ArrayList<PackageData>();
163 response = PackageWrapper.getInstance().queryPackageListByCond(null, null, null, null, null);
164 } catch(Exception e) {
168 assertNotNull(response);
169 assertEquals(200, response.getStatus());
171 // assertEquals(00,res5.getStatus());
175 public void testQueryPackageById() throws Exception {
176 new MockUp<MarketplaceDaoImpl>() {
179 public List<PackageData> getPackageData(String csarId) {
184 new MockUp<MarketplaceDaoImpl>() {
187 public List<PackageData> getPackageData(String csarId) {
188 packageDataList = new ArrayList<PackageData>();
189 packageData = new PackageData();
190 packageData.setCsarId(csarId);
191 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
192 packageData.setName("clearwater_ns.csar");
193 packageData.setSize("59,854 bytes");
194 packageData.setVersion("v1.0");
195 packageData.setProvider("Huawei");
196 packageDataList.add(packageData);
197 return packageDataList;
202 response = PackageWrapper.getInstance().queryPackageById(csarID);
203 } catch(Exception e) {
206 assertNotNull(response);
207 assertEquals(200, response.getStatus());
211 public void testDelPackageFaiure() {
212 new MockUp<MarketplaceDaoImpl>() {
215 public List<PackageData> getAllPackageData() {
216 return new ArrayList<PackageData>();
220 new MockUp<MarketplaceDaoImpl>() {
223 public void deletePackageData(String csarId) {
228 new MockUp<MarketplaceDaoImpl>() {
231 public List<PackageData> getPackageData(String csarId) {
232 return new ArrayList<PackageData>();
237 response = PackageWrapper.getInstance().delPackage("");
238 } catch(Exception e5) {
239 e5.printStackTrace();
241 assertEquals(500, response.getStatus());
244 response = PackageWrapper.getInstance().delPackage(null);
245 } catch(Exception e5) {
246 e5.printStackTrace();
248 assertEquals(500, response.getStatus());
252 public void testDelPackageSuccess() {
253 new MockUp<MarketplaceDaoImpl>() {
256 public List<PackageData> getAllPackageData() {
257 packageDataList = new ArrayList<PackageData>();
258 packageData = new PackageData();
259 packageData.setCsarId(csarID);
260 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
261 packageData.setName("clearwater_ns.csar");
262 packageData.setSize("59,854 bytes");
263 packageData.setVersion("v1.0");
264 packageData.setProvider("Huawei");
265 packageDataList.add(packageData);
266 return packageDataList;
270 new MockUp<PackageManager>() {
273 public void deletePackage(String csarId) {
278 new MockUp<HttpFileManagerImpl>() {
281 public boolean delete(String srcPath) {
286 new MockUp<MarketplaceDaoImpl>() {
289 public List<PackageData> getPackageData(String csarId) {
290 packageDataList = new ArrayList<PackageData>();
291 packageData = new PackageData();
292 packageData.setCsarId(csarID);
293 packageData.setDownloadUri("src\\test\\resources\\");
294 packageData.setName("clearwater_ns.csar");
295 packageData.setSize("59,854 bytes");
296 packageData.setVersion("v1.0");
297 packageData.setProvider("Huawei");
298 packageDataList.add(packageData);
299 return packageDataList;
304 response = PackageWrapper.getInstance().delPackage("csarid");
305 } catch(Exception e) {
309 assertNotNull(response);
310 assertEquals(200, response.getStatus());
314 public void testGetCsarFileUri() {
315 new MockUp<MarketplaceDaoImpl>() {
318 public List<PackageData> getPackageData(String csarId) {
319 packageDataList = new ArrayList<PackageData>();
320 packageData = new PackageData();
321 packageData.setCsarId(csarId);
322 packageData.setDownloadUri("src\\test\\resources\\");
323 packageData.setName("clearwater_ns.csar");
324 packageData.setSize("59,854 bytes");
325 packageData.setVersion("v1.0");
326 packageData.setProvider("Huawei");
327 packageDataList.add(packageData);
328 return packageDataList;
332 new MockUp<PackageWrapper>() {
335 Response downloadCsarPackagesById(String csarId) throws FileNotFoundException {
337 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
338 InputStream fis = new BufferedInputStream(new FileInputStream(fileName));
339 return Response.ok(fis).header("Content-Disposition", "attachment; filename=\"" + fileName + "\"")
343 response = PackageWrapper.getInstance().getCsarFileUri("csarId");
344 assertEquals(200, response.getStatus());
349 public void testupdateDwonloadCountSuccess() throws Exception {
350 final List<PackageData> pkgList = new ArrayList<PackageData>();
351 PackageData pkgDataObj = new PackageData();
352 pkgDataObj.setDownloadCount(1);
353 pkgList.add(pkgDataObj);
354 new MockUp<MarketplaceDaoImpl>() {
357 public List<PackageData> getPackageData(String csarId) {
359 // return new ArrayList<PackageData>();
362 new MockUp<MarketplaceDaoImpl>() {
365 public void updatePackageData(PackageData oPackageData) {
371 response = PackageWrapper.getInstance().updateDwonloadCount(csarID);
372 } catch(Exception e5) {
373 e5.printStackTrace();
375 assertNotNull(response);
376 assertEquals(200, response.getStatus());
380 public void testReUploadPackage() {
381 new MockUp<MarketplaceDaoImpl>() {
384 public List<PackageData> getPackageData(String csarId) {
385 List<PackageData> packageDataList = new ArrayList<PackageData>();
386 PackageData packageData = new PackageData();
387 packageData = new PackageData();
388 packageData.setCsarId(csarId);
389 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
390 packageData.setName("clearwater_ns.csar");
391 packageData.setSize("59,854 bytes");
392 packageData.setVersion("v1.0");
393 packageData.setProvider("Huawei");
394 packageDataList.add(packageData);
395 return packageDataList;
399 new MockUp<HttpFileManagerImpl>() {
402 public boolean delete(String srcPath) {
407 new MockUp<MarketplaceDaoImpl>() {
410 public void deletePackageData(String csarId) {
415 new MockUp<ToolUtil>() {
418 public String getTempDir(String dirName, String fileName) {
420 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
425 new MockUp<HttpFileManagerImpl>() {
428 public boolean upload(String srcPath, String dstPath) {
433 new MockUp<PackageWrapperUtil>() {
436 public PackageData getPackageData(PackageMeta meta) {
437 PackageData packageData = new PackageData();
438 packageData.setCreateTime("25-3-2017 15:26:00");
439 packageData.setDeletionPending("deletion");
440 packageData.setDownloadUri("downloaduri");
441 packageData.setFormat("format");
442 packageData.setModifyTime("time");
443 packageData.setName("name");
444 packageData.setCsarId("csarid");
445 packageData.setProvider("huawei");
446 String fileSize = "10 mb";
447 packageData.setSize(fileSize);
448 packageData.setType("type");
449 packageData.setVersion("v2.0");
450 packageData.setDetails("details");
451 packageData.setShortDesc("description");
452 packageData.setRemarks("remarks");
457 new MockUp<PackageHandler>() {
460 public PackageData create(PackageData packageData) {
461 PackageData packageDataObj = new PackageData();
462 packageDataObj.setCreateTime("25-3-2017 15:26:00");
463 packageDataObj.setDeletionPending("deletion");
464 packageDataObj.setDownloadUri("downloaduri");
465 packageDataObj.setFormat("format");
466 packageDataObj.setModifyTime("modifytime");
467 packageDataObj.setName("name");
468 packageDataObj.setCsarId("csarid");
469 packageDataObj.setProvider("huawei");
470 String fileSize = "10 mb";
471 packageDataObj.setSize(fileSize);
472 packageDataObj.setType("type");
473 packageDataObj.setVersion("v2.0");
474 packageDataObj.setDetails("details");
475 packageDataObj.setShortDesc("description");
476 packageDataObj.setRemarks("remarks");
477 return packageDataObj;
482 response = PackageWrapper.getInstance().reUploadPackage(null, null, null, null, null);
483 } catch(Exception e) {
486 assertEquals(417, response.getStatus());
489 fileDetail = FormDataContentDisposition.name("fileName").fileName("clearwater_ns.csar").build();
490 String fileName = "src" + File.separator + "test" + File.separator + "resources" + File.separator
491 + "clearwater_ns.csar";
492 inputStream = new FileInputStream(fileName);
493 response = PackageWrapper.getInstance().reUploadPackage("csarID", inputStream, fileDetail, null, null);
494 // assertEquals( 200, response.getStatus() );
495 } catch(Exception e) {
501 public void testgetOperResultByOperTypeIdFailure() throws Exception {
502 final ResultKey resultKeyObj = new ResultKey();
504 new MockUp<FunctionTestHook>() {
507 ResultKey getFuncTestResultKey(PackageData packageData) {
508 resultKeyObj.setKey("key");
512 new MockUp<FunctionTestExceutor>() {
515 String getTestResultsByFuncTestKey(String key) {
520 new MockUp<MarketplaceDaoImpl>() {
523 public List<PackageData> getPackageData(String csarId) {
524 List<PackageData> packageDataList = new ArrayList<PackageData>();
525 PackageData packageData = new PackageData();
526 packageData = new PackageData();
527 packageData.setCsarId(csarId);
528 packageData.setDownloadUri("src\\test\\resources\\learwater_ns.csar");
529 packageData.setName("clearwater_ns.csar");
530 packageData.setSize("59,854 bytes");
531 packageData.setVersion("v1.0");
532 packageData.setProvider("Airtel");
533 packageDataList.add(packageData);
534 return packageDataList;
539 response = PackageWrapper.getInstance().getOperResultByOperTypeId(csarID, operTypeId);
540 } catch(Exception e5) {
541 e5.printStackTrace();
543 assertEquals(500, response.getStatus());
546 response = PackageWrapper.getInstance().getOperResultByOperTypeId("", "");
547 } catch(Exception e) {
550 assertEquals(400, response.getStatus());
554 public void testgetOperResultByOperTypeIdSuccess() {
555 new MockUp<MarketplaceDaoImpl>() {
558 public List<PackageData> getPackageData(String csarId) {
559 List<PackageData> packageDataList = new ArrayList<PackageData>();
560 PackageData packageData = new PackageData();
561 packageData = new PackageData();
562 packageData.setCsarId(csarId);
563 packageData.setDownloadUri("src\\test\\resources\\learwater_ns.csar");
564 packageData.setName("clearwater_ns.csar");
565 packageData.setSize("59,854 bytes");
566 packageData.setVersion("v1.0");
567 packageData.setProvider("Airtel");
568 packageDataList.add(packageData);
569 return packageDataList;
573 new MockUp<ToolUtil>() {
576 public String getTempDir(String dirName, String fileName) {
578 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
582 new MockUp<PackageWrapper>() {
585 Response downloadCsarPackagesById(String csarId) throws FileNotFoundException {
587 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
588 InputStream fis = new BufferedInputStream(new FileInputStream(fileName));
589 return Response.ok(fis).header("Content-Disposition", "attachment; filename=\"" + fileName + "\"")
594 new MockUp<FunctionTestHook>() {
597 ResultKey getFuncTestResultKey(PackageData packageData) {
598 ResultKey resultKey = new ResultKey();
599 resultKey.setKey("key");
603 new MockUp<FunctionTestExceutor>() {
606 String getTestResultsByFuncTestKey(String key) {
612 response = PackageWrapper.getInstance().getOperResultByOperTypeId(csarID, operTypeId);
613 } catch(Exception e) {
620 public void testUploadPackage() throws Exception {
621 InputStream ins = null;
622 Response result = null;
624 * Response result1 = null; Response result2 = null; PackageData
625 * packageData = new PackageData(); packageData = getPackageData();
628 new MockUp<MarketplaceDaoImpl>() {
631 public List<PackageData> getPackageData(String csarId) {
632 List<PackageData> packageDataList = new ArrayList<PackageData>();
633 PackageData packageData = new PackageData();
634 packageData = new PackageData();
635 packageData.setCsarId(csarId);
636 packageData.setDownloadUri("src\\test\\resources\\");
637 packageData.setName("clearwater_ns.csar");
638 packageData.setSize("59,854 bytes");
639 packageData.setVersion("v1.0");
640 packageData.setProvider("Airtel");
641 packageDataList.add(packageData);
642 return packageDataList;
646 new MockUp<HttpFileManagerImpl>() {
649 public boolean delete(String srcPath) {
654 new MockUp<MarketplaceDaoImpl>() {
657 public void deletePackageData(String csarId) {
662 new MockUp<ToolUtil>() {
665 public String getTempDir(String dirName, String fileName) {
667 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
672 new MockUp<HttpFileManagerImpl>() {
675 public boolean upload(String srcPath, String dstPath) {
680 new MockUp<PackageWrapperUtil>() {
683 public PackageData getPackageData(PackageMeta meta) {
684 PackageData packageData = new PackageData();
685 packageData.setCreateTime("25-3-2017 15:26:00");
686 packageData.setDeletionPending("deletion");
687 packageData.setDownloadUri("downloaduri");
688 packageData.setFormat("format");
689 packageData.setModifyTime("time");
690 packageData.setName("name");
691 packageData.setCsarId("csarid");
692 packageData.setProvider("huawei");
693 String fileSize = "10 mb";
694 packageData.setSize(fileSize);
695 packageData.setType("type");
696 packageData.setVersion("v2.0");
697 packageData.setDetails("details");
698 packageData.setShortDesc("description");
699 packageData.setRemarks("remarks");
704 new MockUp<PackageHandler>() {
707 public PackageData create(PackageData packageData) {
708 PackageData packageDataObj = new PackageData();
709 packageDataObj.setCreateTime("25-3-2017 15:26:00");
710 packageDataObj.setDeletionPending("deletion");
711 packageDataObj.setDownloadUri("downloaduri");
712 packageDataObj.setFormat("format");
713 packageDataObj.setModifyTime("modifytime");
714 packageDataObj.setName("name");
715 packageDataObj.setCsarId("csarid");
716 packageDataObj.setProvider("huawei");
717 String fileSize = "10 mb";
718 packageDataObj.setSize(fileSize);
719 packageDataObj.setType("type");
720 packageDataObj.setVersion("v2.0");
721 packageDataObj.setDetails("details");
722 packageDataObj.setShortDesc("description");
723 packageDataObj.setRemarks("remarks");
724 return packageDataObj;
728 FormDataContentDisposition fileDetail =
729 FormDataContentDisposition.name("fileName").fileName("clearwater_ns.csar").build();
732 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "clearwater_ns.csar";
733 File packageFile = new File(filenama);
736 ins = new FileInputStream(packageFile);
737 } catch(FileNotFoundException e2) {
738 e2.printStackTrace();
742 result = PackageWrapper.getInstance().uploadPackage(ins, fileDetail, null, null);
743 } catch(Exception e3) {
744 e3.printStackTrace();
748 assertNotNull(result);
749 assertEquals(200, result.getStatus());
752 result = PackageWrapper.getInstance().uploadPackage(null, null, null, null);
753 } catch(Exception e4) {
754 e4.printStackTrace();
757 assertEquals(417, result.getStatus());
761 public void testGetOnBoardingStepsSuccess() {
762 new MockUp<org.onap.vnfsdk.marketplace.filemanage.http.ToolUtil>() {
765 String getAppDeployPath() {
766 String path = "src" + File.separator + "main" + File.separator + "resources";
772 response = PackageWrapper.getInstance().getOnBoardingSteps();
773 } catch(Exception e) {
777 assertNotNull(response);
781 public void testGetOnBoardingStepsFailure() {
782 new MockUp<org.onap.vnfsdk.marketplace.filemanage.http.ToolUtil>() {
785 String getAppDeployPath() {
786 String path = "src" + File.separator + "main" + File.separator + "resources" + File.separator
793 response = PackageWrapper.getInstance().getOnBoardingSteps();
794 } catch(Exception e) {
797 assertEquals(500, response.getStatus());
801 public void testRestGetClient() {
802 FunctionTestExceutor.getTestResultsByFuncTestKey("GET");
807 public void testRestPostClient() {
809 OnBoradingRequest onBoradFuncTestReq = new OnBoradingRequest();
810 onBoradFuncTestReq.setPackagePath("src/test/resources/clearwater_ns.csar");
811 onBoradFuncTestReq.setPackageName("clearwater_ns.csar");
812 String result = FunctionTestExceutor.execFunctionTest(onBoradFuncTestReq);
814 // assertEquals(200,result);
819 public void testRestDeleteClient() {
820 RestResponse rsp = RestfulClient.delete("127.0.0.1", 8987, "TestURL");
822 if(rsp.getStatusCode() != null)
823 assertEquals(200, rsp.getStatusCode().intValue());
828 public void testExec() {
830 new MockUp<FunctionTestHook>() {
833 String getResultStorePath() {
834 return "src/test/resources";
838 FunctionTestHook testHookObj = new FunctionTestHook();
839 OnBoradingRequest onBoradFuncTestReq = new OnBoradingRequest();
840 onBoradFuncTestReq.setPackagePath("src/test/resources/clearwater_ns.csar");
841 int res = testHookObj.exec(onBoradFuncTestReq);
843 assertEquals(res, -1);
848 public void testwriteJsonDatatoFile() {
850 String filePath = "src//test//resources//functionTest.json";
851 OnBoardingResult onBoardResultObj = new OnBoardingResult();
852 onBoardResultObj.setCsarId("csrId");
853 onBoardResultObj.setOperStatus(1);
854 boolean res = FileUtil.writeJsonDatatoFile(filePath, onBoardResultObj);
855 assertEquals(res, true);
861 public void testCreateDirectory() {
862 String dirPath = "src//test//resources//TestDirectory";
863 boolean res = FileUtil.createDirectory(dirPath);
864 assertEquals(res, true);
869 public void testDeleteDirectory() {
870 String dirPath = "src//test//resources//TestDirectory";
871 boolean res = FileUtil.deleteFile(dirPath);
872 assertEquals(res, true);
877 public void testGenerateId() {
878 String id = MarketplaceDbUtil.generateId();
883 public void testisNotEmpty() {
884 boolean res = MarketplaceDbUtil.isNotEmpty(null);
885 assertEquals(res, false);
886 res = MarketplaceDbUtil.isNotEmpty("test");
887 assertEquals(res, true);
891 public void testobjectToString() {
892 Object obj = "testexa";
893 String res = MarketplaceDbUtil.objectToString(obj);
895 res = MarketplaceDbUtil.objectToString(null);
900 public void testisEmptyString() {
901 boolean res = ToolUtil.isEmptyString(null);
902 assertEquals(res, true);
903 res = ToolUtil.isEmptyString("huawei");
904 assertEquals(res, false);
908 public void testisTrimedEmptyString() {
909 boolean res = ToolUtil.isTrimedEmptyString(null);
910 assertEquals(res, true);
911 res = ToolUtil.isTrimedEmptyString(" ");
912 assertEquals(res, true);
916 public void testisEmptyCollection() {
918 boolean res = ToolUtil.isEmptyCollection(new ArrayList());
919 assertEquals(res, true);
923 public void testisYamlFile() {
924 File fileObj = new File("test.txt");
925 boolean res = ToolUtil.isYamlFile(fileObj);
926 assertEquals(res, false);
930 public void testgenerateID() {
931 String id = ToolUtil.generateId();
936 public void testgetFormatFileSize() {
937 String res = ToolUtil.getFormatFileSize(10000000);
939 res = ToolUtil.getFormatFileSize(10000);
941 res = ToolUtil.getFormatFileSize(100);
946 public void testObjectToString() {
947 Object obj = "testexa";
948 String res = ToolUtil.objectToString(obj);
950 res = ToolUtil.objectToString(null);
955 public void testprocessFileName() {
956 String res = ToolUtil.processFileName("abc.txt");
958 res = ToolUtil.processFileName("abc.zip");
963 public void testremoveCsarSuffix() {
964 String res = ToolUtil.removeCsarSuffix("abc.csar");
965 assertEquals(res, "abc");
969 public void testformatCsar() {
970 String res = ToolUtil.formatCsar("abc");
971 assertEquals(res, "abc.csar");
975 public void testformatFileSize() {
976 String res = ToolUtil.formatFileSize(10000.0, 10);
977 String expected = new DecimalFormat("#0.00").format(1000) + "M";// may
985 assertEquals(res, expected);
989 public void testgetFileSize() {
990 File fileObj = new File("example.txt");
991 String res = ToolUtil.getFileSize(fileObj, 10);
996 public void testgetCatalogueCsarPath() {
997 String res = ToolUtil.getCatalogueCsarPath();
998 assertEquals(res, File.separator + "csar");
1002 public void testgetCatalogueImagePath() {
1003 String res = ToolUtil.getCatalogueImagePath();
1004 assertEquals(res, File.separator + "image");
1008 public void testdeleteFile() {
1009 boolean res = ToolUtil.deleteFile("src//test//resources", "test1.txt");
1010 assertEquals(res, true);
1014 public void teststoreChunkFileInLocal() {
1016 inputStream = new FileInputStream("src//test//resources//Test.txt");
1017 String res = ToolUtil.storeChunkFileInLocal("src//test//resources", "TestOut.txt", inputStream);
1018 File file = new File(res);
1019 String fileName = file.getName();
1020 assertEquals(fileName, "TestOut.txt");
1022 } catch(Exception ex) {
1023 ex.printStackTrace();
1028 public void testToolUtildeleteFile() {
1029 boolean res = ToolUtil.deleteFile("src/test/resources", "TestOut.txt");
1030 assertEquals(res, true);
1034 public void testToJson() {
1035 List<String> listObj = new ArrayList<String>();
1036 listObj.add("test");
1037 String res = JsonUtil.toJson(listObj);
1042 public void testfromJson() {
1044 String carJson = "{ \"brand\" : \"Mercedes\", \"doors\" : 5 }";
1045 JsonNode res = JsonUtil.fromJson(carJson, JsonNode.class);
1050 public void testUnzip() {
1052 List<String> listObj = new ArrayList<String>();
1054 listObj = FileUtil.unzip("src/test/resources/temp.zip", "src/test/resources/testfolder");
1055 } catch(Exception ex) {
1056 ex.printStackTrace();
1058 assertNotNull(listObj);
1062 public void testreadJsonDatafFromFile() {
1065 FileUtil.readJsonDatafFromFile("src/main/resources/generalconfig/OnBoardingSteps.json", Object.class);
1070 public void testGetPkgSize() {
1071 long pkgSize = PackageWrapperUtil.getPacakgeSize("src/test/resources/Test.txt");
1072 assertNotNull(pkgSize);
1076 public void testPkgFormat() {
1077 assertNotNull(PackageWrapperUtil.getPackageFormat("xml"));
1078 assertNotNull(PackageWrapperUtil.getPackageFormat("yml"));
1079 assertNull(PackageWrapperUtil.getPackageFormat("pdf"));
1082 IMarketplaceDao dao = new MarketplaceDaoImpl();
1084 packageDataList = new ArrayList<PackageData>();
1085 packageData = new PackageData();
1086 packageData.setCsarId("21");
1087 packageData.setDownloadUri("src\\test\\resources\\");
1088 packageData.setName("clearwater_ns.csar");
1089 packageData.setSize("59,854 bytes");
1090 packageData.setVersion("v1.0");
1091 packageData.setProvider("Huawei");
1092 packageDataList.add(packageData);
1094 dao.savePackageData(packageData);
1095 dao.getAllPackageData();
1096 dao.getPackageData("21");
1097 dao.updatePackageData(packageData);
1098 dao.deletePackageData("21");
1100 } catch(Exception e) {
1106 public void testVnfPackageSetter() {
1108 vnfPackageObj.setVnfPackageId("vnfpackageId");
1109 vnfPackageObj.setVnfPackageUrl("vnfPackageUrl");
1110 vnfPackageObj.setVnfd("vnfd");
1111 vnfPackageObj.setVersion("1");
1112 vnfPackageObj.setUsageState(EnumUsageState.NotInUse);
1113 vnfPackageObj.setProvider("huawei");
1114 vnfPackageObj.setOperationalState(EnumOperationalState.Enabled);
1115 vnfPackageObj.setName("vnf");
1116 vnfPackageObj.setDeletionPending("pending");
1118 String res = vnfPackageObj.getVnfPackageId();
1119 assertEquals(res, "vnfpackageId");
1120 res = vnfPackageObj.getVnfPackageUrl();
1121 assertEquals(res, "vnfPackageUrl");
1122 res = vnfPackageObj.getVnfd();
1123 assertEquals(res, "vnfd");
1124 res = vnfPackageObj.getVersion();
1125 assertEquals(res, "1");
1126 EnumUsageState state = vnfPackageObj.getUsageState();
1127 assertEquals(state, EnumUsageState.NotInUse);
1128 res = vnfPackageObj.getProvider();
1129 assertEquals(res, "huawei");
1130 EnumOperationalState operState = vnfPackageObj.getOperationalState();
1131 assertEquals(operState, EnumOperationalState.Enabled);
1132 res = vnfPackageObj.getName();
1133 assertEquals(res, "vnf");
1134 res = vnfPackageObj.getDeletionPending();
1135 assertEquals(res, "pending");
1139 public void testCsarPackageSetter() {
1140 csarPackageObj.setCreateTime("04052017");
1141 csarPackageObj.setDeletionPending("pending");
1142 csarPackageObj.setFormat("format");
1143 csarPackageObj.setId("12");
1144 csarPackageObj.setName("csartest");
1145 csarPackageObj.setSize("10");
1146 csarPackageObj.setStatus("done");
1147 csarPackageObj.setType("type");
1148 csarPackageObj.setUrl("//network");
1150 String res = csarPackageObj.getCreateTime();
1151 assertEquals(res, "04052017");
1152 res = csarPackageObj.getDeletionPending();
1153 assertEquals(res, "pending");
1154 res = csarPackageObj.getFormat();
1155 assertEquals(res, "format");
1156 res = csarPackageObj.getId();
1157 assertEquals(res, "12");
1158 res = csarPackageObj.getName();
1159 assertEquals(res, "csartest");
1160 res = csarPackageObj.getSize();
1161 assertEquals(res, "10");
1162 res = csarPackageObj.getStatus();
1163 assertEquals(res, "done");
1164 res = csarPackageObj.getType();
1165 assertEquals(res, "type");
1166 res = csarPackageObj.getUrl();
1167 assertEquals(res, "//network");
1172 public void testPackageBasicInfoSetter() {
1173 pkgBasicInfoObj.setFormat("pdf");
1174 pkgBasicInfoObj.setProvider("huawei");
1175 pkgBasicInfoObj.setType(EnumType.GSAR);
1176 pkgBasicInfoObj.setVersion("1");
1177 String res = pkgBasicInfoObj.getFormat();
1178 assertEquals(res, "pdf");
1179 res = pkgBasicInfoObj.getProvider();
1180 assertEquals(res, "huawei");
1181 EnumType type = pkgBasicInfoObj.getType();
1182 assertEquals(type, EnumType.GSAR);
1183 res = pkgBasicInfoObj.getVersion();
1184 assertEquals(res, "1");
1188 public void testPackageMetaSetter() {
1189 pkgMetaObj.setCreateTime("05042017");
1190 pkgMetaObj.setCsarId("csarid");
1191 pkgMetaObj.setDeletionPending(true);
1192 pkgMetaObj.setDetails("details");
1193 pkgMetaObj.setDownloadCount(10);
1194 pkgMetaObj.setDownloadUri("//network");
1195 pkgMetaObj.setFormat("pdf");
1196 pkgMetaObj.setModifyTime("05042017");
1197 pkgMetaObj.setName("huawei");
1198 pkgMetaObj.setProvider("huawei");
1199 pkgMetaObj.setRemarks("tested");
1200 pkgMetaObj.setReport("done");
1201 pkgMetaObj.setShortDesc("done");
1202 pkgMetaObj.setSize("1000");
1203 pkgMetaObj.setType("type");
1204 pkgMetaObj.setVersion("1");
1206 String res = pkgMetaObj.getCreateTime();
1207 assertEquals(res, "05042017");
1208 res = pkgMetaObj.getCsarId();
1209 assertEquals(res, "csarid");
1210 res = pkgMetaObj.getDetails();
1211 assertEquals(res, "details");
1212 res = pkgMetaObj.getDownloadCount() + "";
1213 assertEquals(res, "10");
1214 res = pkgMetaObj.getDownloadUri();
1215 assertEquals(res, "//network");
1216 res = pkgMetaObj.getFormat();
1217 assertEquals(res, "pdf");
1218 res = pkgMetaObj.getModifyTime();
1219 assertEquals(res, "05042017");
1220 res = pkgMetaObj.getName();
1221 assertEquals(res, "huawei");
1222 res = pkgMetaObj.getProvider();
1223 assertEquals(res, "huawei");
1224 res = pkgMetaObj.getRemarks();
1225 assertEquals(res, "tested");
1226 res = pkgMetaObj.getReport();
1227 assertEquals(res, "done");
1228 res = pkgMetaObj.getShortDesc();
1229 assertEquals(res, "done");
1230 res = pkgMetaObj.getSize();
1231 assertEquals(res, "1000");
1232 res = pkgMetaObj.getType();
1233 assertEquals(res, "type");
1234 res = pkgMetaObj.getVersion();
1235 assertEquals(res, "1");
1239 public void testPackageResponseSetter() {
1240 pkgResponseObj.setReportPath("localpath");
1241 String res = pkgResponseObj.getReportPath();
1242 assertEquals(res, "localpath");
1247 public void testCsarFileUriResSetter() {
1248 csarFileUriResObj.setDownloadUri("downloaduri");
1249 csarFileUriResObj.setLocalPath("localpath");
1250 String res = csarFileUriResObj.getDownloadUri();
1251 assertEquals(res, "downloaduri");
1252 res = csarFileUriResObj.getLocalPath();
1253 assertEquals(res, "localpath");