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;
24 import java.io.ByteArrayInputStream;
26 import java.io.FileInputStream;
27 import java.io.FileNotFoundException;
28 import java.io.FileOutputStream;
29 import java.io.FileWriter;
30 import java.io.IOException;
31 import java.io.InputStream;
32 import java.nio.charset.StandardCharsets;
33 import java.text.DecimalFormat;
34 import java.util.ArrayList;
35 import java.util.List;
37 import java.util.zip.ZipEntry;
38 import java.util.zip.ZipOutputStream;
40 import javax.servlet.ReadListener;
41 import javax.servlet.ServletInputStream;
42 import javax.servlet.http.HttpServletRequest;
43 import javax.ws.rs.core.Response;
45 import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
46 import org.junit.Before;
47 import org.junit.Test;
48 import org.onap.vnfsdk.marketplace.common.FileUtil;
49 import org.onap.vnfsdk.marketplace.common.ToolUtil;
50 import org.onap.vnfsdk.marketplace.db.entity.PackageData;
51 import org.onap.vnfsdk.marketplace.db.impl.MarketplaceDaoImpl;
52 import org.onap.vnfsdk.marketplace.db.inf.IMarketplaceDao;
53 import org.onap.vnfsdk.marketplace.db.resource.PackageManager;
54 import org.onap.vnfsdk.marketplace.db.util.MarketplaceDbUtil;
55 import org.onap.vnfsdk.marketplace.db.wrapper.PackageHandler;
56 import org.onap.vnfsdk.marketplace.entity.CsarPackage;
57 import org.onap.vnfsdk.marketplace.entity.EnumOperationalState;
58 import org.onap.vnfsdk.marketplace.entity.EnumType;
59 import org.onap.vnfsdk.marketplace.entity.EnumUsageState;
60 import org.onap.vnfsdk.marketplace.entity.VnfPackage;
61 import org.onap.vnfsdk.marketplace.entity.request.PackageBasicInfo;
62 import org.onap.vnfsdk.marketplace.entity.response.CsarFileUriResponse;
63 import org.onap.vnfsdk.marketplace.entity.response.PackageMeta;
64 import org.onap.vnfsdk.marketplace.entity.response.PackageResponse;
65 import org.onap.vnfsdk.marketplace.filemanage.http.HttpFileManagerImpl;
66 import org.onap.vnfsdk.marketplace.msb.MsbDetailsHolder;
67 import org.onap.vnfsdk.marketplace.onboarding.entity.OnBoardingResult;
68 import org.onap.vnfsdk.marketplace.onboarding.entity.OnBoradingRequest;
69 import org.onap.vnfsdk.marketplace.onboarding.entity.ResultKey;
70 import org.onap.vnfsdk.marketplace.onboarding.hooks.functiontest.FunctionTestExceutor;
71 import org.onap.vnfsdk.marketplace.onboarding.hooks.functiontest.FunctionTestHook;
72 import org.onap.vnfsdk.marketplace.rest.RestResponse;
73 import org.onap.vnfsdk.marketplace.rest.RestfulClient;
74 import org.onap.vnfsdk.marketplace.wrapper.PackageWrapper;
75 import org.onap.vnfsdk.marketplace.wrapper.PackageWrapperUtil;
76 import org.open.infc.grpc.Result;
77 import org.open.infc.grpc.client.OpenRemoteCli;
82 public class PackageResourceTest {
84 private PackageResource packageResource = null;
86 private Response response = null;
88 private String csarID = "csarid";
90 private List<PackageData> packageDataList = null;
92 private PackageData packageData = null;
94 private FormDataContentDisposition fileDetail = null;
96 private InputStream inputStream = null;
98 private String operTypeId = "opertype";
100 private VnfPackage vnfPackageObj = null;
102 private CsarPackage csarPackageObj = null;
104 private PackageBasicInfo pkgBasicInfoObj = null;
106 private PackageMeta pkgMetaObj = null;
108 private PackageResponse pkgResponseObj = null;
110 private CsarFileUriResponse csarFileUriResObj = null;
113 public void setUp() {
114 packageResource = new PackageResource();
115 vnfPackageObj = new VnfPackage();
116 csarPackageObj = new CsarPackage();
117 pkgBasicInfoObj = new PackageBasicInfo();
118 pkgMetaObj = new PackageMeta();
119 pkgResponseObj = new PackageResponse();
120 csarFileUriResObj = new CsarFileUriResponse();
124 public void createTestFile() {
125 String filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
126 File file = new File(filePath);
128 file.createNewFile();
129 FileWriter writer = new FileWriter(file);
130 writer.write("This is test file.");
132 } catch(Exception e) {
136 filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
137 file = new File(filePath);
142 StringBuilder sb = new StringBuilder();
143 sb.append("test data");
145 filePath = "src" + File.separator + "test" + File.separator + "resources" + File.separator + "temp.zip";
146 file = new File(filePath);
148 ZipOutputStream out = new ZipOutputStream(new FileOutputStream(file));
149 ZipEntry e = new ZipEntry("temp.txt");
151 byte[] data = sb.toString().getBytes();
152 out.write(data, 0, data.length);
155 } catch(Exception e) {
161 public void testQueryPackageListByCond() throws Exception {
162 new MockUp<MarketplaceDaoImpl>() {
165 public List<PackageData> getPackageDataSubset(Map<String, String> queryParam) {
166 return new ArrayList<PackageData>();
170 response = PackageWrapper.getInstance().queryPackageListByCond(null, null, null, null, null);
171 } catch(Exception e) {
175 assertNotNull(response);
176 assertEquals(200, response.getStatus());
178 // assertEquals(00,res5.getStatus());
182 public void testQueryPackageById() throws Exception {
183 new MockUp<MarketplaceDaoImpl>() {
186 public List<PackageData> getPackageData(String csarId) {
191 new MockUp<MarketplaceDaoImpl>() {
194 public List<PackageData> getPackageData(String csarId) {
195 packageDataList = new ArrayList<PackageData>();
196 packageData = new PackageData();
197 packageData.setCsarId(csarId);
198 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
199 packageData.setName("clearwater_ns.csar");
200 packageData.setSize("59,854 bytes");
201 packageData.setVersion("v1.0");
202 packageData.setProvider("Huawei");
203 packageDataList.add(packageData);
204 return packageDataList;
209 response = PackageWrapper.getInstance().queryPackageById(csarID);
210 } catch(Exception e) {
213 assertNotNull(response);
214 assertEquals(200, response.getStatus());
218 public void testDelPackageFaiure() {
219 new MockUp<MarketplaceDaoImpl>() {
222 public List<PackageData> getAllPackageData() {
223 return new ArrayList<PackageData>();
227 new MockUp<MarketplaceDaoImpl>() {
230 public void deletePackageData(String csarId) {
235 new MockUp<MarketplaceDaoImpl>() {
238 public List<PackageData> getPackageData(String csarId) {
239 return new ArrayList<PackageData>();
244 response = PackageWrapper.getInstance().delPackage("");
245 } catch(Exception e5) {
246 e5.printStackTrace();
248 assertEquals(500, response.getStatus());
251 response = PackageWrapper.getInstance().delPackage(null);
252 } catch(Exception e5) {
253 e5.printStackTrace();
255 assertEquals(500, response.getStatus());
259 public void testDelPackageSuccess() {
260 new MockUp<MarketplaceDaoImpl>() {
263 public List<PackageData> getAllPackageData() {
264 packageDataList = new ArrayList<PackageData>();
265 packageData = new PackageData();
266 packageData.setCsarId(csarID);
267 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
268 packageData.setName("clearwater_ns.csar");
269 packageData.setSize("59,854 bytes");
270 packageData.setVersion("v1.0");
271 packageData.setProvider("Huawei");
272 packageDataList.add(packageData);
273 return packageDataList;
277 new MockUp<PackageManager>() {
280 public void deletePackage(String csarId) {
285 new MockUp<HttpFileManagerImpl>() {
288 public boolean delete(String srcPath) {
293 new MockUp<MarketplaceDaoImpl>() {
296 public List<PackageData> getPackageData(String csarId) {
297 packageDataList = new ArrayList<PackageData>();
298 packageData = new PackageData();
299 packageData.setCsarId(csarID);
300 packageData.setDownloadUri("src\\test\\resources\\");
301 packageData.setName("clearwater_ns.csar");
302 packageData.setSize("59,854 bytes");
303 packageData.setVersion("v1.0");
304 packageData.setProvider("Huawei");
305 packageDataList.add(packageData);
306 return packageDataList;
311 response = PackageWrapper.getInstance().delPackage("csarid");
312 } catch(Exception e) {
316 assertNotNull(response);
317 assertEquals(200, response.getStatus());
321 public void testGetCsarFileUri() {
322 new MockUp<MarketplaceDaoImpl>() {
325 public List<PackageData> getPackageData(String csarId) {
326 packageDataList = new ArrayList<PackageData>();
327 packageData = new PackageData();
328 packageData.setCsarId(csarId);
329 packageData.setDownloadUri("src\\test\\resources\\");
330 packageData.setName("clearwater_ns.csar");
331 packageData.setSize("59,854 bytes");
332 packageData.setVersion("v1.0");
333 packageData.setProvider("Huawei");
334 packageDataList.add(packageData);
335 return packageDataList;
339 new MockUp<PackageWrapper>() {
342 Response downloadCsarPackagesById(String csarId) throws FileNotFoundException {
344 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
345 InputStream fis = new BufferedInputStream(new FileInputStream(fileName));
346 return Response.ok(fis).header("Content-Disposition", "attachment; filename=\"" + fileName + "\"")
350 response = PackageWrapper.getInstance().getCsarFileUri("csarId");
351 assertEquals(200, response.getStatus());
356 public void testupdateDwonloadCountSuccess() throws Exception {
357 final List<PackageData> pkgList = new ArrayList<PackageData>();
358 PackageData pkgDataObj = new PackageData();
359 pkgDataObj.setDownloadCount(1);
360 pkgList.add(pkgDataObj);
361 new MockUp<MarketplaceDaoImpl>() {
364 public List<PackageData> getPackageData(String csarId) {
366 // return new ArrayList<PackageData>();
369 new MockUp<MarketplaceDaoImpl>() {
372 public void updatePackageData(PackageData oPackageData) {
378 response = PackageWrapper.getInstance().updateDwonloadCount(csarID);
379 } catch(Exception e5) {
380 e5.printStackTrace();
382 assertNotNull(response);
383 assertEquals(200, response.getStatus());
387 public void testReUploadPackage() {
388 new MockUp<MarketplaceDaoImpl>() {
391 public List<PackageData> getPackageData(String csarId) {
392 List<PackageData> packageDataList = new ArrayList<PackageData>();
393 PackageData packageData = new PackageData();
394 packageData = new PackageData();
395 packageData.setCsarId(csarId);
396 packageData.setDownloadUri("src\\test\\resources\\clearwater_ns.csar");
397 packageData.setName("clearwater_ns.csar");
398 packageData.setSize("59,854 bytes");
399 packageData.setVersion("v1.0");
400 packageData.setProvider("Huawei");
401 packageDataList.add(packageData);
402 return packageDataList;
406 new MockUp<HttpFileManagerImpl>() {
409 public boolean delete(String srcPath) {
414 new MockUp<MarketplaceDaoImpl>() {
417 public void deletePackageData(String csarId) {
422 new MockUp<ToolUtil>() {
425 public String getTempDir(String dirName, String fileName) {
427 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
432 new MockUp<HttpFileManagerImpl>() {
435 public boolean upload(String srcPath, String dstPath) {
440 new MockUp<PackageWrapperUtil>() {
443 public PackageData getPackageData(PackageMeta meta) {
444 PackageData packageData = new PackageData();
445 packageData.setCreateTime("25-3-2017 15:26:00");
446 packageData.setDeletionPending("deletion");
447 packageData.setDownloadUri("downloaduri");
448 packageData.setFormat("format");
449 packageData.setModifyTime("time");
450 packageData.setName("name");
451 packageData.setCsarId("csarid");
452 packageData.setProvider("huawei");
453 String fileSize = "10 mb";
454 packageData.setSize(fileSize);
455 packageData.setType("type");
456 packageData.setVersion("v2.0");
457 packageData.setDetails("details");
458 packageData.setShortDesc("description");
459 packageData.setRemarks("remarks");
464 new MockUp<PackageHandler>() {
467 public PackageData create(PackageData packageData) {
468 PackageData packageDataObj = new PackageData();
469 packageDataObj.setCreateTime("25-3-2017 15:26:00");
470 packageDataObj.setDeletionPending("deletion");
471 packageDataObj.setDownloadUri("downloaduri");
472 packageDataObj.setFormat("format");
473 packageDataObj.setModifyTime("modifytime");
474 packageDataObj.setName("name");
475 packageDataObj.setCsarId("csarid");
476 packageDataObj.setProvider("huawei");
477 String fileSize = "10 mb";
478 packageDataObj.setSize(fileSize);
479 packageDataObj.setType("type");
480 packageDataObj.setVersion("v2.0");
481 packageDataObj.setDetails("details");
482 packageDataObj.setShortDesc("description");
483 packageDataObj.setRemarks("remarks");
484 return packageDataObj;
489 response = PackageWrapper.getInstance().reUploadPackage(null, null, null, null, null);
490 } catch(Exception e) {
493 assertEquals(417, response.getStatus());
496 fileDetail = FormDataContentDisposition.name("fileName").fileName("clearwater_ns.csar").build();
497 String fileName = "src" + File.separator + "test" + File.separator + "resources" + File.separator
498 + "clearwater_ns.csar";
499 inputStream = new FileInputStream(fileName);
500 response = PackageWrapper.getInstance().reUploadPackage("csarID", inputStream, fileDetail, null, null);
501 // assertEquals( 200, response.getStatus() );
502 } catch(Exception e) {
508 public void testgetOperResultByOperTypeIdFailure() throws Exception {
509 final ResultKey resultKeyObj = new ResultKey();
511 new MockUp<FunctionTestHook>() {
514 ResultKey getFuncTestResultKey(PackageData packageData) {
515 resultKeyObj.setKey("key");
519 new MockUp<FunctionTestExceutor>() {
522 String getTestResultsByFuncTestKey(String key) {
527 new MockUp<MarketplaceDaoImpl>() {
530 public List<PackageData> getPackageData(String csarId) {
531 List<PackageData> packageDataList = new ArrayList<PackageData>();
532 PackageData packageData = new PackageData();
533 packageData = new PackageData();
534 packageData.setCsarId(csarId);
535 packageData.setDownloadUri("src\\test\\resources\\learwater_ns.csar");
536 packageData.setName("clearwater_ns.csar");
537 packageData.setSize("59,854 bytes");
538 packageData.setVersion("v1.0");
539 packageData.setProvider("Airtel");
540 packageDataList.add(packageData);
541 return packageDataList;
546 response = PackageWrapper.getInstance().getOperResultByOperTypeId(csarID, operTypeId);
547 } catch(Exception e5) {
548 e5.printStackTrace();
550 assertEquals(500, response.getStatus());
553 response = PackageWrapper.getInstance().getOperResultByOperTypeId("", "");
554 } catch(Exception e) {
557 assertEquals(400, response.getStatus());
561 public void testgetOperResultByOperTypeIdSuccess() {
562 new MockUp<MarketplaceDaoImpl>() {
565 public List<PackageData> getPackageData(String csarId) {
566 List<PackageData> packageDataList = new ArrayList<PackageData>();
567 PackageData packageData = new PackageData();
568 packageData = new PackageData();
569 packageData.setCsarId(csarId);
570 packageData.setDownloadUri("src\\test\\resources\\learwater_ns.csar");
571 packageData.setName("clearwater_ns.csar");
572 packageData.setSize("59,854 bytes");
573 packageData.setVersion("v1.0");
574 packageData.setProvider("Airtel");
575 packageDataList.add(packageData);
576 return packageDataList;
580 new MockUp<ToolUtil>() {
583 public String getTempDir(String dirName, String fileName) {
585 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
589 new MockUp<PackageWrapper>() {
592 Response downloadCsarPackagesById(String csarId) throws FileNotFoundException {
594 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "Test.txt";
595 InputStream fis = new BufferedInputStream(new FileInputStream(fileName));
596 return Response.ok(fis).header("Content-Disposition", "attachment; filename=\"" + fileName + "\"")
601 new MockUp<FunctionTestHook>() {
604 ResultKey getFuncTestResultKey(PackageData packageData) {
605 ResultKey resultKey = new ResultKey();
606 resultKey.setKey("key");
610 new MockUp<FunctionTestExceutor>() {
613 String getTestResultsByFuncTestKey(String key) {
619 response = PackageWrapper.getInstance().getOperResultByOperTypeId(csarID, operTypeId);
620 } catch(Exception e) {
627 public void testUploadPackage() throws Exception {
628 InputStream ins = null;
629 Response result = null;
631 * Response result1 = null; Response result2 = null; PackageData
632 * packageData = new PackageData(); packageData = getPackageData();
635 new MockUp<MarketplaceDaoImpl>() {
638 public List<PackageData> getPackageData(String csarId) {
639 List<PackageData> packageDataList = new ArrayList<PackageData>();
640 PackageData packageData = new PackageData();
641 packageData = new PackageData();
642 packageData.setCsarId(csarId);
643 packageData.setDownloadUri("src\\test\\resources\\");
644 packageData.setName("clearwater_ns.csar");
645 packageData.setSize("59,854 bytes");
646 packageData.setVersion("v1.0");
647 packageData.setProvider("Airtel");
648 packageDataList.add(packageData);
649 return packageDataList;
653 public List<PackageData> getPackageDataSubset(Map<String, String> paramsMap) {
654 List<PackageData> packageDataList = new ArrayList<PackageData>();
656 return packageDataList;
660 new MockUp<HttpFileManagerImpl>() {
663 public boolean delete(String srcPath) {
668 new MockUp<MarketplaceDaoImpl>() {
671 public void deletePackageData(String csarId) {
676 new MockUp<ToolUtil>() {
679 public String getTempDir(String dirName, String fileName) {
681 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "testfolder";
686 new MockUp<HttpFileManagerImpl>() {
689 public boolean upload(String srcPath, String dstPath) {
694 new MockUp<PackageWrapperUtil>() {
697 public PackageData getPackageData(PackageMeta meta) {
698 PackageData packageData = new PackageData();
699 packageData.setCreateTime("25-3-2017 15:26:00");
700 packageData.setDeletionPending("deletion");
701 packageData.setDownloadUri("downloaduri");
702 packageData.setFormat("format");
703 packageData.setModifyTime("time");
704 packageData.setName("name");
705 packageData.setCsarId("csarid");
706 packageData.setProvider("huawei");
707 String fileSize = "10 mb";
708 packageData.setSize(fileSize);
709 packageData.setType("type");
710 packageData.setVersion("v2.0");
711 packageData.setDetails("details");
712 packageData.setShortDesc("description");
713 packageData.setRemarks("remarks");
718 new MockUp<PackageHandler>() {
721 public PackageData create(PackageData packageData) {
722 PackageData packageDataObj = new PackageData();
723 packageDataObj.setCreateTime("25-3-2017 15:26:00");
724 packageDataObj.setDeletionPending("deletion");
725 packageDataObj.setDownloadUri("downloaduri");
726 packageDataObj.setFormat("format");
727 packageDataObj.setModifyTime("modifytime");
728 packageDataObj.setName("name");
729 packageDataObj.setCsarId("csarid");
730 packageDataObj.setProvider("huawei");
731 String fileSize = "10 mb";
732 packageDataObj.setSize(fileSize);
733 packageDataObj.setType("type");
734 packageDataObj.setVersion("v2.0");
735 packageDataObj.setDetails("details");
736 packageDataObj.setShortDesc("description");
737 packageDataObj.setRemarks("remarks");
738 return packageDataObj;
743 new MockUp<OpenRemoteCli>() {
746 public Result run(String[] args) {
747 Result result = Result.newBuilder().
749 setOutput("{\"error\":\"SUCCESS\"}").
756 FormDataContentDisposition fileDetail =
757 FormDataContentDisposition.name("fileName").fileName("clearwater_ns.csar").build();
760 "src" + File.separator + "test" + File.separator + "resources" + File.separator + "clearwater_ns.csar";
761 File packageFile = new File(filenama);
764 ins = new FileInputStream(packageFile);
765 } catch(FileNotFoundException e2) {
766 e2.printStackTrace();
770 result = PackageWrapper.getInstance().uploadPackage(ins, fileDetail, null, null);
771 // PackageWrapper.getInstance().updateValidateStatus(ins);
772 } catch(Exception e3) {
773 e3.printStackTrace();
777 assertNotNull(result);
778 assertEquals(200, result.getStatus());
781 result = PackageWrapper.getInstance().uploadPackage(null, null, null, null);
782 } catch(Exception e4) {
783 e4.printStackTrace();
786 assertEquals(417, result.getStatus());
790 public void testVtpGetTests() throws Exception {
791 new MockUp<OpenRemoteCli>() {
794 public Result run(String[] args) {
795 Result result = Result.newBuilder().
804 Response result = packageResource.listTests();
805 assertEquals(200, result.getStatus());
809 public void testVtpRunTests() throws Exception {
810 new MockUp<OpenRemoteCli>() {
813 public Result run(String[] args) {
814 Result result = Result.newBuilder().
823 MockUp mockReq = new MockUp<HttpServletRequest>() {
826 public ServletInputStream getInputStream() throws IOException {
827 ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(
828 "{\"csar\"=\"VoLTE.csar\"}".getBytes());
830 return new ServletInputStream(){
831 public int read() throws IOException {
832 return byteArrayInputStream.read();
836 public boolean isFinished() {
841 public boolean isReady() {
846 public void setReadListener(ReadListener arg0) {
853 Response result = packageResource.runTest("csar-validate", (HttpServletRequest) mockReq.getMockInstance());
854 assertEquals(200, result.getStatus());
858 public void testGetOnBoardingStepsSuccess() {
859 new MockUp<org.onap.vnfsdk.marketplace.filemanage.http.ToolUtil>() {
862 String getAppDeployPath() {
863 String path = "src" + File.separator + "main" + File.separator + "resources";
869 response = PackageWrapper.getInstance().getOnBoardingSteps();
870 } catch(Exception e) {
874 assertNotNull(response);
878 public void testGetOnBoardingStepsFailure() {
879 new MockUp<org.onap.vnfsdk.marketplace.filemanage.http.ToolUtil>() {
882 String getAppDeployPath() {
883 String path = "src" + File.separator + "main" + File.separator + "resources" + File.separator
890 response = PackageWrapper.getInstance().getOnBoardingSteps();
891 } catch(Exception e) {
894 assertEquals(500, response.getStatus());
898 public void testRestGetClient() {
899 FunctionTestExceutor.getTestResultsByFuncTestKey("GET");
904 public void testRestPostClient() {
906 OnBoradingRequest onBoradFuncTestReq = new OnBoradingRequest();
907 onBoradFuncTestReq.setPackagePath("src/test/resources/clearwater_ns.csar");
908 onBoradFuncTestReq.setPackageName("clearwater_ns.csar");
909 String result = FunctionTestExceutor.execFunctionTest(onBoradFuncTestReq);
911 // assertEquals(200,result);
916 public void testRestDeleteClient() {
917 RestResponse rsp = RestfulClient.delete("127.0.0.1", 8987, "TestURL");
919 if(rsp.getStatusCode() != null)
920 assertEquals(200, rsp.getStatusCode().intValue());
925 public void testExec() {
927 new MockUp<FunctionTestHook>() {
930 String getResultStorePath() {
931 return "src/test/resources";
935 FunctionTestHook testHookObj = new FunctionTestHook();
936 OnBoradingRequest onBoradFuncTestReq = new OnBoradingRequest();
937 onBoradFuncTestReq.setPackagePath("src/test/resources/clearwater_ns.csar");
938 int res = testHookObj.exec(onBoradFuncTestReq);
940 assertEquals(res, -1);
945 public void testwriteJsonDatatoFile() {
947 String filePath = "src//test//resources//functionTest.json";
948 OnBoardingResult onBoardResultObj = new OnBoardingResult();
949 onBoardResultObj.setCsarId("csrId");
950 onBoardResultObj.setOperStatus(1);
951 boolean res = FileUtil.writeJsonDatatoFile(filePath, onBoardResultObj);
952 assertEquals(res, true);
958 public void testCreateDirectory() {
959 String dirPath = "src//test//resources//TestDirectory";
960 boolean res = FileUtil.createDirectory(dirPath);
961 assertEquals(res, true);
966 public void testDeleteDirectory() {
967 String dirPath = "src//test//resources//TestDirectory";
968 boolean res = FileUtil.deleteFile(dirPath);
969 assertEquals(res, true);
974 public void testGenerateId() {
975 String id = MarketplaceDbUtil.generateId();
980 public void testisNotEmpty() {
981 boolean res = MarketplaceDbUtil.isNotEmpty(null);
982 assertEquals(res, false);
983 res = MarketplaceDbUtil.isNotEmpty("test");
984 assertEquals(res, true);
988 public void testobjectToString() {
989 Object obj = "testexa";
990 String res = MarketplaceDbUtil.objectToString(obj);
992 res = MarketplaceDbUtil.objectToString(null);
997 public void testisEmptyString() {
998 boolean res = ToolUtil.isEmptyString(null);
999 assertEquals(res, true);
1000 res = ToolUtil.isEmptyString("huawei");
1001 assertEquals(res, false);
1005 public void testisTrimedEmptyString() {
1006 boolean res = ToolUtil.isTrimedEmptyString(null);
1007 assertEquals(res, true);
1008 res = ToolUtil.isTrimedEmptyString(" ");
1009 assertEquals(res, true);
1013 public void testisEmptyCollection() {
1015 boolean res = ToolUtil.isEmptyCollection(new ArrayList());
1016 assertEquals(res, true);
1020 public void testisYamlFile() {
1021 File fileObj = new File("test.txt");
1022 boolean res = ToolUtil.isYamlFile(fileObj);
1023 assertEquals(res, false);
1027 public void testgenerateID() {
1028 String id = ToolUtil.generateId();
1033 public void testgetFormatFileSize() {
1034 String res = ToolUtil.getFormatFileSize(10000000);
1036 res = ToolUtil.getFormatFileSize(10000);
1038 res = ToolUtil.getFormatFileSize(100);
1043 public void testObjectToString() {
1044 Object obj = "testexa";
1045 String res = ToolUtil.objectToString(obj);
1047 res = ToolUtil.objectToString(null);
1052 public void testprocessFileName() {
1053 String res = ToolUtil.processFileName("abc.txt");
1055 res = ToolUtil.processFileName("abc.zip");
1060 public void testremoveCsarSuffix() {
1061 String res = ToolUtil.removeCsarSuffix("abc.csar");
1062 assertEquals(res, "abc");
1066 public void testformatCsar() {
1067 String res = ToolUtil.formatCsar("abc");
1068 assertEquals(res, "abc.csar");
1072 public void testformatFileSize() {
1073 String res = ToolUtil.formatFileSize(10000.0, 10);
1074 String expected = new DecimalFormat("#0.00").format(1000) + "M";// may
1082 assertEquals(res, expected);
1086 public void testgetFileSize() {
1087 File fileObj = new File("example.txt");
1088 String res = ToolUtil.getFileSize(fileObj, 10);
1093 public void testgetCatalogueCsarPath() {
1094 String res = ToolUtil.getCatalogueCsarPath();
1095 assertEquals(res, File.separator + "csar");
1099 public void testgetCatalogueImagePath() {
1100 String res = ToolUtil.getCatalogueImagePath();
1101 assertEquals(res, File.separator + "image");
1105 public void testdeleteFile() {
1106 boolean res = ToolUtil.deleteFile("src//test//resources", "test1.txt");
1107 assertEquals(res, true);
1111 public void teststoreChunkFileInLocal() {
1113 inputStream = new FileInputStream("src//test//resources//Test.txt");
1114 String res = ToolUtil.storeChunkFileInLocal("src//test//resources", "TestOut.txt", inputStream);
1115 File file = new File(res);
1116 String fileName = file.getName();
1117 assertEquals(fileName, "TestOut.txt");
1119 } catch(Exception ex) {
1120 ex.printStackTrace();
1125 public void testToolUtildeleteFile() {
1126 boolean res = ToolUtil.deleteFile("src/test/resources", "TestOut.txt");
1127 assertEquals(res, true);
1132 public void testUnzip() {
1134 List<String> listObj = new ArrayList<String>();
1136 listObj = FileUtil.unzip("src/test/resources/temp.zip", "src/test/resources/testfolder");
1137 } catch(Exception ex) {
1138 ex.printStackTrace();
1140 assertNotNull(listObj);
1144 public void testreadJsonDatafFromFile() {
1147 FileUtil.readJsonDatafFromFile("src/main/resources/generalconfig/OnBoardingSteps.json", Object.class);
1152 public void testGetPkgSize() {
1153 long pkgSize = PackageWrapperUtil.getPacakgeSize("src/test/resources/Test.txt");
1154 assertNotNull(pkgSize);
1158 public void testPkgFormat() {
1159 assertNotNull(PackageWrapperUtil.getPackageFormat("xml"));
1160 assertNotNull(PackageWrapperUtil.getPackageFormat("yml"));
1161 assertNull(PackageWrapperUtil.getPackageFormat("pdf"));
1163 MsbDetailsHolder.getMsbDetails();
1165 IMarketplaceDao dao = new MarketplaceDaoImpl();
1167 packageDataList = new ArrayList<PackageData>();
1168 packageData = new PackageData();
1169 packageData.setCsarId("21");
1170 packageData.setDownloadUri("src\\test\\resources\\");
1171 packageData.setName("clearwater_ns.csar");
1172 packageData.setSize("59,854 bytes");
1173 packageData.setVersion("v1.0");
1174 packageData.setProvider("Huawei");
1175 packageDataList.add(packageData);
1177 dao.savePackageData(packageData);
1178 dao.getAllPackageData();
1179 dao.getPackageData("21");
1180 dao.updatePackageData(packageData);
1181 dao.deletePackageData("21");
1183 } catch(Exception e) {
1189 public void testVnfPackageSetter() {
1191 vnfPackageObj.setVnfPackageId("vnfpackageId");
1192 vnfPackageObj.setVnfPackageUrl("vnfPackageUrl");
1193 vnfPackageObj.setVnfd("vnfd");
1194 vnfPackageObj.setVersion("1");
1195 vnfPackageObj.setUsageState(EnumUsageState.NotInUse);
1196 vnfPackageObj.setProvider("huawei");
1197 vnfPackageObj.setOperationalState(EnumOperationalState.Enabled);
1198 vnfPackageObj.setName("vnf");
1199 vnfPackageObj.setDeletionPending("pending");
1201 String res = vnfPackageObj.getVnfPackageId();
1202 assertEquals(res, "vnfpackageId");
1203 res = vnfPackageObj.getVnfPackageUrl();
1204 assertEquals(res, "vnfPackageUrl");
1205 res = vnfPackageObj.getVnfd();
1206 assertEquals(res, "vnfd");
1207 res = vnfPackageObj.getVersion();
1208 assertEquals(res, "1");
1209 EnumUsageState state = vnfPackageObj.getUsageState();
1210 assertEquals(state, EnumUsageState.NotInUse);
1211 res = vnfPackageObj.getProvider();
1212 assertEquals(res, "huawei");
1213 EnumOperationalState operState = vnfPackageObj.getOperationalState();
1214 assertEquals(operState, EnumOperationalState.Enabled);
1215 res = vnfPackageObj.getName();
1216 assertEquals(res, "vnf");
1217 res = vnfPackageObj.getDeletionPending();
1218 assertEquals(res, "pending");
1222 public void testCsarPackageSetter() {
1223 csarPackageObj.setCreateTime("04052017");
1224 csarPackageObj.setDeletionPending("pending");
1225 csarPackageObj.setFormat("format");
1226 csarPackageObj.setId("12");
1227 csarPackageObj.setName("csartest");
1228 csarPackageObj.setSize("10");
1229 csarPackageObj.setStatus("done");
1230 csarPackageObj.setType("type");
1231 csarPackageObj.setUrl("//network");
1233 String res = csarPackageObj.getCreateTime();
1234 assertEquals(res, "04052017");
1235 res = csarPackageObj.getDeletionPending();
1236 assertEquals(res, "pending");
1237 res = csarPackageObj.getFormat();
1238 assertEquals(res, "format");
1239 res = csarPackageObj.getId();
1240 assertEquals(res, "12");
1241 res = csarPackageObj.getName();
1242 assertEquals(res, "csartest");
1243 res = csarPackageObj.getSize();
1244 assertEquals(res, "10");
1245 res = csarPackageObj.getStatus();
1246 assertEquals(res, "done");
1247 res = csarPackageObj.getType();
1248 assertEquals(res, "type");
1249 res = csarPackageObj.getUrl();
1250 assertEquals(res, "//network");
1255 public void testPackageBasicInfoSetter() {
1256 pkgBasicInfoObj.setFormat("pdf");
1257 pkgBasicInfoObj.setProvider("huawei");
1258 pkgBasicInfoObj.setType(EnumType.GSAR);
1259 pkgBasicInfoObj.setVersion("1");
1260 String res = pkgBasicInfoObj.getFormat();
1261 assertEquals(res, "pdf");
1262 res = pkgBasicInfoObj.getProvider();
1263 assertEquals(res, "huawei");
1264 EnumType type = pkgBasicInfoObj.getType();
1265 assertEquals(type, EnumType.GSAR);
1266 res = pkgBasicInfoObj.getVersion();
1267 assertEquals(res, "1");
1271 public void testPackageMetaSetter() {
1272 pkgMetaObj.setCreateTime("05042017");
1273 pkgMetaObj.setCsarId("csarid");
1274 pkgMetaObj.setDeletionPending(true);
1275 pkgMetaObj.setDetails("details");
1276 pkgMetaObj.setDownloadCount(10);
1277 pkgMetaObj.setDownloadUri("//network");
1278 pkgMetaObj.setFormat("pdf");
1279 pkgMetaObj.setModifyTime("05042017");
1280 pkgMetaObj.setName("huawei");
1281 pkgMetaObj.setProvider("huawei");
1282 pkgMetaObj.setRemarks("tested");
1283 pkgMetaObj.setReport("done");
1284 pkgMetaObj.setShortDesc("done");
1285 pkgMetaObj.setSize("1000");
1286 pkgMetaObj.setType("type");
1287 pkgMetaObj.setVersion("1");
1289 String res = pkgMetaObj.getCreateTime();
1290 assertEquals(res, "05042017");
1291 res = pkgMetaObj.getCsarId();
1292 assertEquals(res, "csarid");
1293 res = pkgMetaObj.getDetails();
1294 assertEquals(res, "details");
1295 res = pkgMetaObj.getDownloadCount() + "";
1296 assertEquals(res, "10");
1297 res = pkgMetaObj.getDownloadUri();
1298 assertEquals(res, "//network");
1299 res = pkgMetaObj.getFormat();
1300 assertEquals(res, "pdf");
1301 res = pkgMetaObj.getModifyTime();
1302 assertEquals(res, "05042017");
1303 res = pkgMetaObj.getName();
1304 assertEquals(res, "huawei");
1305 res = pkgMetaObj.getProvider();
1306 assertEquals(res, "huawei");
1307 res = pkgMetaObj.getRemarks();
1308 assertEquals(res, "tested");
1309 res = pkgMetaObj.getReport();
1310 assertEquals(res, "done");
1311 res = pkgMetaObj.getShortDesc();
1312 assertEquals(res, "done");
1313 res = pkgMetaObj.getSize();
1314 assertEquals(res, "1000");
1315 res = pkgMetaObj.getType();
1316 assertEquals(res, "type");
1317 res = pkgMetaObj.getVersion();
1318 assertEquals(res, "1");
1322 public void testPackageResponseSetter() {
1323 pkgResponseObj.setReportPath("localpath");
1324 String res = pkgResponseObj.getReportPath();
1325 assertEquals(res, "localpath");
1330 public void testCsarFileUriResSetter() {
1331 csarFileUriResObj.setDownloadUri("downloaduri");
1332 csarFileUriResObj.setLocalPath("localpath");
1333 String res = csarFileUriResObj.getDownloadUri();
1334 assertEquals(res, "downloaduri");
1335 res = csarFileUriResObj.getLocalPath();
1336 assertEquals(res, "localpath");