Revert "vLAN . Support Policies."
[sdc/sdc-tosca.git] / src / test / java / org / openecomp / sdc / impl / ToscaParserValidationIssueTest.java
1 package org.openecomp.sdc.impl;
2
3 import org.apache.commons.io.IOUtils;
4 import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper;
5 import org.openecomp.sdc.tosca.parser.config.ConfigurationManager;
6 import org.openecomp.sdc.tosca.parser.config.JtoscaValidationIssueConfiguration;
7 import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException;
8 import org.openecomp.sdc.toscaparser.api.common.JToscaValidationIssue;
9 import org.testng.annotations.AfterClass;
10 import org.testng.annotations.BeforeClass;
11 import org.testng.annotations.Test;
12
13 import java.io.IOException;
14 import java.net.URL;
15 import java.util.List;
16 import java.util.stream.Collectors;
17
18 import static org.testng.Assert.assertEquals;
19
20 public class ToscaParserValidationIssueTest extends SdcToscaParserBasicTest {
21         protected static ConfigurationManager configurationManager = ConfigurationManager.getInstance();
22
23         @BeforeClass
24         public void loadJtoscaValidationIssueConfiguration() throws IOException {
25                 //load the tests dedicated configuration
26                 configurationManager.setJtoscaValidationIssueConfiguration( "jtosca-validation-issue-configuration-test.yaml");
27                 factory.setConfigurationManager(configurationManager);
28         }
29
30         @AfterClass
31         public void loadJtoscaValidationIssueOriginalConfiguration() throws IOException {
32                 //load the tests dedicated configuration
33                 configurationManager.setJtoscaValidationIssueConfiguration("jtosca-validation-issue-configuration.yaml");
34                 factory.setConfigurationManager(configurationManager);
35
36         }
37
38
39         @Test
40         public void testNoValidationIssues() throws SdcToscaParserException {
41                 ISdcCsarHelper rainyCsarHelper = getCsarHelper("csars/service-ServiceFdnt-csar-rainy.csar");//conformance level 3.0
42
43                 //List<JToscaValidationIssue> notAnalyzedReport = factory.getNotAnalyzadExceptions();
44                 //assertEquals( notAnalyzedReport.size(),0);
45                 List<JToscaValidationIssue> warningsReport = factory.getWarningExceptions();
46                 assertEquals( warningsReport.size(),0);
47                 List<JToscaValidationIssue> criticalsReport = factory.getCriticalExceptions();
48                 assertEquals( criticalsReport.size(),0);
49         }
50         @Test
51         public void testGetLowSinceConformanceLevel() throws SdcToscaParserException {
52                 ISdcCsarHelper fdntCsarHelperWithInputs = getCsarHelper("csars/service-NfodService-csar.csar");//conformance level 3.0
53                 //Service level
54
55                 List<JToscaValidationIssue> notAnalyzedReport = factory.getNotAnalyzadExceptions();
56                 assertEquals( notAnalyzedReport.size(),10);
57                 //JE003 high CL 4.0
58                 assertEquals( notAnalyzedReport.stream().filter(n->n.getCode().equals("JE003")).collect(Collectors.toList()).size(), 2);
59                 assertEquals( notAnalyzedReport.stream().filter(n->n.getCode().equals("JE235")).collect(Collectors.toList()).size(), 7);
60                 assertEquals( notAnalyzedReport.stream().filter(n->n.getCode().equals("JE236")).collect(Collectors.toList()).size(), 1);
61                 List<JToscaValidationIssue> warningsReport = factory.getWarningExceptions();
62                 assertEquals( warningsReport.size(),14);
63                 assertEquals( warningsReport.stream().filter(w->w.getCode().equals("JE006")).collect(Collectors.toList()).size(), 13);
64                 //JE004 low CL 2.0
65                 assertEquals( warningsReport.stream().filter(w->w.getCode().equals("JE004")).collect(Collectors.toList()).size(), 1);
66                 List<JToscaValidationIssue> criticalsReport = factory.getCriticalExceptions();
67                 assertEquals( criticalsReport.size(),0);
68         }
69
70         @Test(expectedExceptions = SdcToscaParserException.class)
71         public void testCriticalIssueThrowsSdcToscaParserException() throws SdcToscaParserException {
72                 getCsarHelper("csars/service-Nfod2images-csar.csar");//conformance level 4.0
73         }
74
75         @Test
76         public void testMultiSinceConformanceLevelIssues() {
77                 try {
78                         ISdcCsarHelper Nfod2images = getCsarHelper("csars/service-Nfod2images-csar.csar");//conformance level 4.0
79                 } catch (SdcToscaParserException e) {
80                         System.out.println("SdcToscaParserException is caught here - this is WAD in this specific test.");
81                 }
82                 List<JToscaValidationIssue> notAnalyzedReport = factory.getNotAnalyzadExceptions();
83                 assertEquals(3, notAnalyzedReport.size());
84                 List<JToscaValidationIssue> warningsReport = factory.getWarningExceptions();
85                 assertEquals( 0, warningsReport.size());
86                 List<JToscaValidationIssue> criticalsReport = factory.getCriticalExceptions();
87                 assertEquals( 22, criticalsReport.size());
88                 //JE006 multy values sinceCsarConformanceLevel
89                 assertEquals( criticalsReport.stream().filter(c->c.getCode().equals("JE006")).collect
90                                 (Collectors.toList()).size(), 18);
91                 assertEquals( criticalsReport.stream().filter(c->c.getCode().equals("JE003")).collect
92                                 (Collectors.toList()).size(), 4);
93         }
94
95
96 }