Revert "vLAN . Support Policies."
[sdc/sdc-tosca.git] / src / test / java / org / openecomp / sdc / impl / ToscaParserMetadataTest.java
1 package org.openecomp.sdc.impl;
2
3 import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper;
4 import org.openecomp.sdc.tosca.parser.config.ConfigurationManager;
5 import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException;
6 import org.openecomp.sdc.toscaparser.api.NodeTemplate;
7 import org.openecomp.sdc.toscaparser.api.elements.Metadata;
8 import org.testng.annotations.Test;
9
10 import java.util.List;
11 import java.util.Map;
12
13 import static org.testng.Assert.assertEquals;
14 import static org.testng.Assert.assertNotNull;
15 import static org.testng.Assert.assertNull;
16
17 public class ToscaParserMetadataTest extends SdcToscaParserBasicTest {
18
19     //region getServiceMetadata
20     @Test
21     public void testGetServiceMetadata() {
22         Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
23         assertNotNull(serviceMetadata);
24         assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", serviceMetadata.getValue("invariantUUID"));
25         assertEquals("Service FDNT", serviceMetadata.getValue("name"));
26         assertEquals("true", String.valueOf(serviceMetadata.getValue("serviceEcompNaming")));
27     }
28
29     @Test
30     public void testServiceMetadata() {
31         Metadata metadata = rainyCsarHelperSingleVf.getServiceMetadata();
32         assertNull(metadata);
33     }
34     //endregion
35
36     //region getMetadataPropertyValue
37     @Test
38     public void testGetMetadataProperty(){
39         Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
40         String metadataPropertyValue = fdntCsarHelper.getMetadataPropertyValue(serviceMetadata, "invariantUUID");
41         assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", metadataPropertyValue);
42     }
43
44     @Test
45     public void testGetNullMetadataPropertyValue() {
46         String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(null, "XXX");
47         assertNull(value);
48     }
49
50     @Test
51     public void testGetMetadataByNullPropertyValue() {
52         Metadata metadata = rainyCsarHelperMultiVfs.getServiceMetadata();
53         String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, null);
54         assertNull(value);
55     }
56
57     @Test
58     public void testGetMetadataByEmptyPropertyValue() {
59         Metadata metadata =  rainyCsarHelperMultiVfs.getServiceMetadata();
60         String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, "");
61         assertNull(value);
62     }
63     //endregion
64
65     @Test
66     public void GetServiceNodeTemplateMetadataTypeCR() {
67         NodeTemplate nodeTemplate = csarHelperServiceWithCrs.getServiceNodeTemplateByNodeName("chaya best cr 0");
68         Metadata nodeTemplateMetadata = csarHelperServiceWithCrs.getNodeTemplateMetadata(nodeTemplate);
69         assertNotNull(nodeTemplateMetadata);
70         assertEquals(nodeTemplateMetadata.getValue("resourceVendorModelNumber"), "");
71         assertEquals(nodeTemplateMetadata.getValue("type"), "CR");
72         assertEquals(nodeTemplateMetadata.getValue("name"), "chaya best cr");
73         assertEquals(nodeTemplateMetadata.getValue("version"), "0.1");
74     }
75
76     //region getConformanceLevel
77     @Test
78     public void testSunnyGetConformanceLevel() {
79         String conformanceLevel = fdntCsarHelper.getConformanceLevel();
80         assertNotNull(conformanceLevel);
81         assertEquals("3.0", conformanceLevel);
82     }
83     //endregion
84
85     //region getServiceMetadataProperties
86     @Test
87     public void testNullServiceMetadataPropertiesMap() {
88         Map<String, Object> metadata = rainyCsarHelperSingleVf.getServiceMetadataProperties();
89         assertNull(metadata);
90     }
91
92     @Test
93     public void testServiceMetadataPropertiesMap() {
94         Map<String, Object> metadata = fdntCsarHelper.getServiceMetadataProperties();
95         assertNotNull(metadata);
96         assertEquals(metadata.size(),9);
97         assertEquals(metadata.get("namingPolicy"),"test");
98     }
99     //endregion
100
101     //region getServiceMetadataAllProperties
102     @Test
103     public void testNullServiceMetadataAllPropertiesMap() {
104         Map<String, String> metadata = rainyCsarHelperSingleVf.getServiceMetadataAllProperties();
105         assertNull(metadata);
106     }
107
108     @Test
109     public void testServiceMetadataAllPropertiesMap() {
110         Map<String, String> metadata = fdntCsarHelper.getServiceMetadataAllProperties();
111         assertNotNull(metadata);
112         assertEquals(metadata.size(),9);
113         assertEquals(metadata.get("namingPolicy"),"test");
114     }
115     //endregion
116
117     //region getNodeTemplateMetadata
118     @Test
119     public void testGetNodeTemplateMetadata() {
120         List<NodeTemplate> vfs = fdntCsarHelper.getServiceVfList();
121         Metadata metadata = fdntCsarHelper.getNodeTemplateMetadata(vfs.get(0));
122         assertNotNull(metadata);
123         assertEquals("VF", metadata.getValue("type"));
124         assertEquals("1.0", metadata.getValue("version"));
125     }
126
127     @Test
128     public void testGetNodeTemplateMetadataByNull() {
129         Metadata metadata = fdntCsarHelper.getNodeTemplateMetadata(null);
130         assertNull(metadata);
131     }
132     //endregion
133     
134     //QA tests region for US 319197 -port mirroring
135     
136         //getNodeTemplateMetadata (All Types)
137         @Test
138         public void GetServiceNodeTemplateMetadataTypeVF() {
139                 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("VF_1_V_port_1 0");
140                 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
141                 assertNotNull(nodeTemplateMetadata);
142                 assertEquals(nodeTemplateMetadata.getValue("resourceVendorRelease"), "12-12-12");
143                 assertEquals(nodeTemplateMetadata.getValue("type"), "VF");
144         }
145         
146         @Test
147         public void GetServiceNodeTemplateMetadataTypeVL() {
148                 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("ExtVL 0");
149                 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
150                 assertNotNull(nodeTemplateMetadata);
151                 assertEquals(nodeTemplateMetadata.getValue("resourceVendorRelease"), "1.0.0.wd03");
152                 assertEquals(nodeTemplateMetadata.getValue("type"), "VL");
153         }
154         
155         @Test
156         public void GetServiceNodeTemplateMetadataTypeCP() {
157                 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("ExtCP 0");
158                 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
159                 assertNotNull(nodeTemplateMetadata);
160                 assertEquals(nodeTemplateMetadata.getValue("UUID"), "7a883088-5cab-4bfb-8d55-307d3ffd0758");
161                 assertEquals(nodeTemplateMetadata.getValue("type"), "CP");
162         }
163         
164         @Test
165         public void GetServiceNodeTemplateMetadataTypePNF() {
166                 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("PNF TEST 0");
167                 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
168                 assertNotNull(nodeTemplateMetadata);
169                 assertEquals(nodeTemplateMetadata.getValue("resourceVendorModelNumber"), "");
170                 assertEquals(nodeTemplateMetadata.getValue("type"), "PNF");
171         }
172         
173         //QA end region for US 319197 -port mirroring
174         
175     // Added by QA  //region getServiceMetadataAllProperties
176
177     @Test
178     public void testGetAllMetadataProperties() {
179         Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
180         assertNotNull(serviceMetadata);
181         Map<String, String> allProperties = serviceMetadata.getAllProperties();
182         assertNotNull(allProperties);
183         String invariantUUID = allProperties.get("invariantUUID");
184         String UUID = allProperties.get("UUID");
185         String name = allProperties.get("name");
186         String description = allProperties.get("description");
187         String type = allProperties.get("type");
188         String category = allProperties.get("category");
189         String ecompGeneratedNaming = allProperties.get("ecompGeneratedNaming");
190         String namingPolicy = allProperties.get("namingPolicy");
191         String serviceEcompNaming = allProperties.get("serviceEcompNaming");
192
193         assertEquals(invariantUUID, "78c72999-1003-4a35-8534-bbd7d96fcae3");
194         assertEquals(UUID, "edd0a9f7-d084-4423-8461-a2eff4cb3eb6");
195         assertEquals(name, "Service FDNT");
196         assertEquals(description, "Service FDNT");
197         assertEquals(type, "Service");
198         assertEquals(category, "Network L1-3");
199         assertEquals(ecompGeneratedNaming, "true");
200         assertEquals(namingPolicy, "test");
201         assertEquals(serviceEcompNaming, "true");
202     }
203     //endregion
204
205   @Test
206   public void testCSARMissingConformanceLevelWithCustomErrorConfig() throws
207       SdcToscaParserException {
208
209     ConfigurationManager configurationManager = ConfigurationManager.getInstance();
210     try {
211       configurationManager.setErrorConfiguration("error-configuration-test.yaml");
212       factory.setConfigurationManager(configurationManager);
213       ISdcCsarHelper missingCSARMetaCsarCustomConfig = getCsarHelper
214           ("csars/service-missing-csar-meta-file.csar");
215       String conformanceLevel = missingCSARMetaCsarCustomConfig.getConformanceLevel();
216       assertNotNull(conformanceLevel);
217       assertEquals(conformanceLevel, configurationManager.getConfiguration().getConformanceLevel()
218           .getMaxVersion());
219     }
220     finally {
221       configurationManager.setErrorConfiguration("error-configuration.yaml");
222       factory.setConfigurationManager(configurationManager);
223     }
224
225   }
226
227   @Test(expectedExceptions = SdcToscaParserException.class)
228   public void testCSARMissingConformanceLevelWithDefaultErrorConfig() throws
229       SdcToscaParserException {
230     ISdcCsarHelper missingCSARMetaCsarDefaultConfig = getCsarHelper("csars/service-missing-csar-meta-file.csar");
231     missingCSARMetaCsarDefaultConfig.getConformanceLevel();
232   }
233    
234 }