[SDC-15] allotted resource CSAR fixes 03/3903/1
authorPavel Aharoni <pa0916@att.com>
Thu, 4 May 2017 17:04:08 +0000 (20:04 +0300)
committerPavel Aharoni <pa0916@att.com>
Thu, 4 May 2017 17:04:08 +0000 (20:04 +0300)
Change-Id: I31dcd0a6b697357fed0e7f8c431b5317339b3c74
Signed-off-by: Pavel Aharoni <pa0916@att.com>
23 files changed:
jtosca/pom.xml
jtosca/src/main/java/org/openecomp/sdc/toscaparser/api/ToscaTemplate.java
jtosca/src/main/java/org/openecomp/sdc/toscaparser/api/common/ExceptionCollector.java
pom.xml
sdc-distribution-ci/pom.xml
sdc-distribution-ci/src/main/java/org/openecomp/test/CsarToscaTester.java [new file with mode: 0644]
sdc-distribution-client/pom.xml
sdc-tosca-parser/pom.xml
sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcCsarHelperImpl.java
sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserNodeTemplateTest.java
sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserTestSuite.java
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-allotted-resources-4.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-groups-status-supported-case-3.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-props-1.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-tt-metadata-2.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-two-vfs-5.csar [deleted file]
sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-with-allotted.csar [new file with mode: 0644]
sdc-tosca-parser/src/test/resources/csars/service-vmme-csar.csar [deleted file]

index 6122858..847579c 100644 (file)
@@ -5,11 +5,11 @@
        <parent>
                <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
                <artifactId>sdc-main-distribution-client</artifactId>
-               <version>1.1.8-SNAPSHOT</version>
+               <version>1.1.9-SNAPSHOT</version>
        </parent>
        
        <artifactId>jtosca</artifactId>
-       <version>0.1.0-SNAPSHOT</version>
+       <version>0.1.1-SNAPSHOT</version>
        
        <dependencies>
        
                        <version>1.7.25</version>
                </dependency>
 
-               <dependency>
+               <!-- <dependency>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-classic</artifactId>
                        <version>1.1.2</version>
                        <scope>test</scope>
-               </dependency>
+               </dependency> -->
 
        </dependencies>
 </project>
\ No newline at end of file
index 8b7abce..942ca96 100644 (file)
@@ -101,7 +101,7 @@ public class ToscaTemplate extends Object {
 
                //long startTime = System.nanoTime();
                
-               ExceptionCollector.start();
+               //ExceptionCollector.start();
                
                isFile = aFile;
                inputPath = null;
@@ -184,7 +184,7 @@ public class ToscaTemplate extends Object {
                csarTempDir = null;
         }
         
-               ExceptionCollector.stop();
+               //ExceptionCollector.stop();
                verifyTemplate();
        }
 
index 9bef6bc..07dabf8 100644 (file)
@@ -1,45 +1,44 @@
 package org.openecomp.sdc.toscaparser.api.common;
 
-import org.openecomp.sdc.toscaparser.api.elements.EntityType;
+import java.util.ArrayList;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.ArrayList;
-
 // Perfectly good enough... 
 
 public class ExceptionCollector {
 
        private static Logger log = LoggerFactory.getLogger(ExceptionCollector.class.getName());
 
-       private static boolean isCollecting = false;
-       private static ArrayList<String> exceptionStrings = null;
-       private static ArrayList<String> traceStrings = null;
+       //private static boolean isCollecting = false;
+       private static ArrayList<String> exceptionStrings = new ArrayList<>();
+       private static ArrayList<String> traceStrings = new ArrayList<>();
        private static boolean bWantTrace = true;
 
-       public static void start() {
+       /*public static void start() {
                if(exceptionStrings == null) {
                        exceptionStrings = new ArrayList<String>();
                        traceStrings = new ArrayList<String>();
                }
                isCollecting = true;
-       }
+       }*/
 
-       public static void stop() {
+       /*public static void stop() {
                isCollecting = false;
-       }
+       }*/
 
        public static void clear() {
-               exceptionStrings = null;
-               traceStrings = null;
+               exceptionStrings = new ArrayList<>();
+               traceStrings = new ArrayList<>();
        }
 
        public static void appendException(String strExc) { // throws Exception {
 
-               if(!isCollecting) {
+               /*if(!isCollecting) {
                        // throw new Exception("Can't append exception " + strExc);
                        log.error("ExceptionCollector - appendException - Can't append exception {}", strExc);
-               }
+               }*/
 
                if(!exceptionStrings.contains(strExc)) {
                        exceptionStrings.add(strExc);
@@ -66,7 +65,7 @@ public class ExceptionCollector {
                        }
                        return report;
                }
-               return null;
+               return new ArrayList<>();
        }
        
        public static int errorsCaught() {
diff --git a/pom.xml b/pom.xml
index 78d7d0c..f03c0fe 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
 
        <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
        <artifactId>sdc-main-distribution-client</artifactId>
-       <version>1.1.8-SNAPSHOT</version>
+       <version>1.1.9-SNAPSHOT</version>
        <packaging>pom</packaging>
 
        <modules>
index 0c53c74..c7b544c 100644 (file)
@@ -6,7 +6,7 @@
        <parent>
                <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
                <artifactId>sdc-main-distribution-client</artifactId>
-               <version>1.1.8-SNAPSHOT</version>
+               <version>1.1.9-SNAPSHOT</version>
        </parent>
 
        <artifactId>sdc-distribution-ci</artifactId>
diff --git a/sdc-distribution-ci/src/main/java/org/openecomp/test/CsarToscaTester.java b/sdc-distribution-ci/src/main/java/org/openecomp/test/CsarToscaTester.java
new file mode 100644 (file)
index 0000000..4dae5eb
--- /dev/null
@@ -0,0 +1,18 @@
+package org.openecomp.test;\r
+\r
+import java.util.ArrayList;\r
+import java.util.Arrays;\r
+\r
+import org.openecomp.sdc.tosca.parser.impl.SdcToscaParserFactory;\r
+import org.openecomp.sdc.toscaparser.api.common.ExceptionCollector;\r
+\r
+public class CsarToscaTester {\r
+       public static void main(String[] args) throws Exception {\r
+               ClassLoader loader = CsarToscaTester.class.getClassLoader();\r
+               System.out.println("CsarToscaParser - path to CSAR is "+Arrays.toString(args));\r
+               SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance();\r
+               factory.getSdcCsarHelper(args[0]);\r
+               ArrayList<String> exceptionReport = ExceptionCollector.getExceptionReport();\r
+               System.out.println("Errors during CSAR parsing are: "+(exceptionReport != null ? exceptionReport.toString() : "none"));\r
+       }\r
+}\r
index c9ee8bb..ea13907 100644 (file)
@@ -6,7 +6,7 @@
        <parent>
                <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
                <artifactId>sdc-main-distribution-client</artifactId>
-               <version>1.1.8-SNAPSHOT</version>
+               <version>1.1.9-SNAPSHOT</version>
        </parent>
 
        <artifactId>sdc-distribution-client</artifactId>
index 56cc293..f05622f 100644 (file)
@@ -6,7 +6,7 @@
        <parent>\r
                <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>\r
                <artifactId>sdc-main-distribution-client</artifactId>\r
-               <version>1.1.8-SNAPSHOT</version>\r
+               <version>1.1.9-SNAPSHOT</version>\r
        </parent>\r
 \r
        <artifactId>sdc-tosca-parser</artifactId>\r
@@ -71,7 +71,7 @@
                <dependency>\r
                        <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>\r
                        <artifactId>jtosca</artifactId>\r
-                       <version>0.1.0-SNAPSHOT</version>\r
+                       <version>0.1.1-SNAPSHOT</version>\r
                </dependency>\r
 \r
 \r
                        <scope>test</scope>\r
                </dependency>\r
                \r
-               <dependency>\r
+               <!-- <dependency>\r
                        <groupId>ch.qos.logback</groupId>\r
                        <artifactId>logback-classic</artifactId>\r
                        <version>1.1.2</version>\r
                        <scope>test</scope>\r
-               </dependency>\r
+               </dependency> -->\r
 \r
        </dependencies>\r
 \r
index b5fb6af..000b381 100644 (file)
@@ -385,7 +385,7 @@ public class SdcCsarHelperImpl implements ISdcCsarHelper {
                        log.error("getAllottedResources nodeTemplates not exist");
                }
                nodeTemplates = nodeTemplates.stream().filter(
-                               x -> x.getMetaData() != null && x.getMetaData().getValue("category").equals("Allotted Resources"))
+                               x -> x.getMetaData() != null && x.getMetaData().getValue("category").equals("Allotted Resource"))
                                .collect(Collectors.toList());
                if (nodeTemplates.isEmpty()) {
                        log.debug("getAllottedResources -  allotted resources not exist");
index 469ddd2..7c30616 100644 (file)
@@ -20,7 +20,7 @@ public class ToscaParserNodeTemplateTest extends BasicTest {
        public void testNumberOfVfSunnyFlow() throws SdcToscaParserException {
                List<NodeTemplate> serviceVfList = ToscaParserTestSuite.fdntCsarHelper.getServiceVfList();
                assertNotNull(serviceVfList);
-               assertEquals(1, serviceVfList.size());
+               assertEquals(2, serviceVfList.size());
        }
 
        @Test
@@ -136,7 +136,7 @@ public class ToscaParserNodeTemplateTest extends BasicTest {
        @Test
        public void testGetAllottedResources() {
                List<NodeTemplate> allottedResources = ToscaParserTestSuite.fdntCsarHelper.getAllottedResources();
-               assertEquals(0, allottedResources.size());
+               assertEquals(1, allottedResources.size());
        }
 
        @Test
index d4b474f..83e7d13 100644 (file)
@@ -1,16 +1,18 @@
 package org.openecomp.sdc.impl;
 
-import org.junit.*;
-import org.junit.runners.Suite;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+
+import org.junit.BeforeClass;
 import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper;
 import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException;
 import org.openecomp.sdc.tosca.parser.impl.SdcToscaParserFactory;
+import org.openecomp.sdc.toscaparser.api.common.ExceptionCollector;
 import org.openecomp.sdc.toscaparser.api.common.JToscaException;
 
-import java.io.File;
-import java.io.IOException;
-
 @RunWith( Suite.class )
 @Suite.SuiteClasses( {
         ToscaParserNodeTemplateTest.class,
@@ -31,34 +33,24 @@ public class ToscaParserTestSuite {
     public static void init() throws SdcToscaParserException, JToscaException, IOException {
 
         factory = SdcToscaParserFactory.getInstance();
-        long startTime = System.currentTimeMillis();
-        long estimatedTime = System.currentTimeMillis() - startTime;
-        System.out.println("Time to init factory " + estimatedTime);
-
-        String fileStr1 = ToscaParserTestSuite.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-0904-2.csar").getFile();
+        fdntCsarHelper = getCsarHelper("csars/service-ServiceFdnt-with-allotted.csar");
+        rainyCsarHelperMultiVfs = getCsarHelper("csars/service-ServiceFdnt-csar-rainy.csar");
+        rainyCsarHelperSingleVf = getCsarHelper("csars/service-ServiceFdnt-csar.csar");
+    }
+
+       private static ISdcCsarHelper getCsarHelper(String path) throws JToscaException, IOException, SdcToscaParserException {
+               System.out.println("Parsing CSAR "+path+"...");
+               String fileStr1 = ToscaParserTestSuite.class.getClassLoader().getResource(path).getFile();
         File file1 = new File(fileStr1);
-        startTime = System.currentTimeMillis();
-
-        fdntCsarHelper = factory.getSdcCsarHelper(file1.getAbsolutePath());
-
-        estimatedTime = System.currentTimeMillis() - startTime;
-        System.out.println("init CSAR Execution time: " + estimatedTime);
-
-        String fileStr2 = ToscaParserTestSuite.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-rainy.csar").getFile();
-        File file2 = new File(fileStr2);
-        rainyCsarHelperMultiVfs = factory.getSdcCsarHelper(file2.getAbsolutePath());
-
-        String fileStr3 = ToscaParserTestSuite.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar.csar").getFile();
-        File file3 = new File(fileStr3);
-        rainyCsarHelperSingleVf = factory.getSdcCsarHelper(file3.getAbsolutePath());
-    };
-
-    @AfterClass
-    public static void after(){
-        long startTime = System.currentTimeMillis();
-        long estimatedTime = System.currentTimeMillis() - startTime;
-        System.out.println("close Execution time: "+estimatedTime);
-    };
-
+        ISdcCsarHelper sdcCsarHelper = factory.getSdcCsarHelper(file1.getAbsolutePath());
+        ArrayList<String> exceptionReport = ExceptionCollector.getExceptionReport();
+               if (!exceptionReport.isEmpty()){
+               System.out.println("TOSCA Errors found in CSAR - failing the tests...");
+               System.out.println(exceptionReport.toString());
+               ExceptionCollector.clear();
+               throw new SdcToscaParserException("CSAR didn't pass validation");
+        }
+               return sdcCsarHelper;
+       }
 
 }
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-allotted-resources-4.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-allotted-resources-4.csar
deleted file mode 100644 (file)
index 7b4cff2..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-allotted-resources-4.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar
deleted file mode 100644 (file)
index be254a0..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar
deleted file mode 100644 (file)
index 4ae4c6f..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar
deleted file mode 100644 (file)
index 5bcf960..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-groups-status-supported-case-3.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-groups-status-supported-case-3.csar
deleted file mode 100644 (file)
index 7286663..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-groups-status-supported-case-3.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar
deleted file mode 100644 (file)
index c1c2855..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-props-1.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-props-1.csar
deleted file mode 100644 (file)
index ceac90a..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-props-1.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-tt-metadata-2.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-tt-metadata-2.csar
deleted file mode 100644 (file)
index 3cda214..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-nt-tt-metadata-2.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar
deleted file mode 100644 (file)
index db3af99..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-two-vfs-5.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-two-vfs-5.csar
deleted file mode 100644 (file)
index 565929a..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-two-vfs-5.csar and /dev/null differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-with-allotted.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-with-allotted.csar
new file mode 100644 (file)
index 0000000..41ee2c7
Binary files /dev/null and b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-with-allotted.csar differ
diff --git a/sdc-tosca-parser/src/test/resources/csars/service-vmme-csar.csar b/sdc-tosca-parser/src/test/resources/csars/service-vmme-csar.csar
deleted file mode 100644 (file)
index 416707c..0000000
Binary files a/sdc-tosca-parser/src/test/resources/csars/service-vmme-csar.csar and /dev/null differ