2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.sdc.impl;
23 import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
24 import org.onap.sdc.tosca.parser.config.ConfigurationManager;
25 import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException;
26 import org.onap.sdc.tosca.parser.impl.SdcToscaParserFactory;
27 import org.onap.sdc.toscaparser.api.NodeTemplate;
28 import org.onap.sdc.toscaparser.api.elements.Metadata;
29 import org.testng.annotations.Test;
31 import java.util.List;
34 import static org.testng.Assert.assertEquals;
35 import static org.testng.Assert.assertNotNull;
36 import static org.testng.Assert.assertNull;
38 public class ToscaParserMetadataTest extends SdcToscaParserBasicTest {
40 //region getServiceMetadata
42 public void testGetServiceMetadata() {
43 Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
44 assertNotNull(serviceMetadata);
45 assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", serviceMetadata.getValue("invariantUUID"));
46 assertEquals("Service FDNT", serviceMetadata.getValue("name"));
47 assertEquals("true", String.valueOf(serviceMetadata.getValue("serviceEcompNaming")));
51 public void testServiceMetadata() {
52 Metadata metadata = rainyCsarHelperSingleVf.getServiceMetadata();
57 //region getMetadataPropertyValue
59 public void testGetMetadataProperty(){
60 Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
61 String metadataPropertyValue = fdntCsarHelper.getMetadataPropertyValue(serviceMetadata, "invariantUUID");
62 assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", metadataPropertyValue);
66 public void testGetNullMetadataPropertyValue() {
67 String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(null, "XXX");
72 public void testGetMetadataByNullPropertyValue() {
73 Metadata metadata = rainyCsarHelperMultiVfs.getServiceMetadata();
74 String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, null);
79 public void testGetMetadataByEmptyPropertyValue() {
80 Metadata metadata = rainyCsarHelperMultiVfs.getServiceMetadata();
81 String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, "");
87 public void GetServiceNodeTemplateMetadataTypeCR() {
88 NodeTemplate nodeTemplate = csarHelperServiceWithCrs.getServiceNodeTemplateByNodeName("chaya best cr 0");
89 Metadata nodeTemplateMetadata = csarHelperServiceWithCrs.getNodeTemplateMetadata(nodeTemplate);
90 assertNotNull(nodeTemplateMetadata);
91 assertEquals(nodeTemplateMetadata.getValue("resourceVendorModelNumber"), "");
92 assertEquals(nodeTemplateMetadata.getValue("type"), "CR");
93 assertEquals(nodeTemplateMetadata.getValue("name"), "chaya best cr");
94 assertEquals(nodeTemplateMetadata.getValue("version"), "0.1");
97 //region getConformanceLevel
99 public void testSunnyGetConformanceLevel() {
100 String conformanceLevel = fdntCsarHelper.getConformanceLevel();
101 assertNotNull(conformanceLevel);
102 assertEquals("3.0", conformanceLevel);
106 //region getServiceMetadataProperties
108 public void testNullServiceMetadataPropertiesMap() {
109 Map<String, Object> metadata = rainyCsarHelperSingleVf.getServiceMetadataProperties();
110 assertNull(metadata);
114 public void testServiceMetadataPropertiesMap() {
115 Map<String, Object> metadata = fdntCsarHelper.getServiceMetadataProperties();
116 assertNotNull(metadata);
117 assertEquals(metadata.size(),9);
118 assertEquals(metadata.get("namingPolicy"),"test");
122 //region getServiceMetadataAllProperties
124 public void testNullServiceMetadataAllPropertiesMap() {
125 Map<String, String> metadata = rainyCsarHelperSingleVf.getServiceMetadataAllProperties();
126 assertNull(metadata);
130 public void testServiceMetadataAllPropertiesMap() {
131 Map<String, String> metadata = fdntCsarHelper.getServiceMetadataAllProperties();
132 assertNotNull(metadata);
133 assertEquals(metadata.size(),9);
134 assertEquals(metadata.get("namingPolicy"),"test");
138 //region getNodeTemplateMetadata
140 public void testGetNodeTemplateMetadata() {
141 List<NodeTemplate> vfs = fdntCsarHelper.getServiceVfList();
142 Metadata metadata = fdntCsarHelper.getNodeTemplateMetadata(vfs.get(0));
143 assertNotNull(metadata);
144 assertEquals("VF", metadata.getValue("type"));
145 assertEquals("1.0", metadata.getValue("version"));
149 public void testGetNodeTemplateMetadataByNull() {
150 Metadata metadata = fdntCsarHelper.getNodeTemplateMetadata(null);
151 assertNull(metadata);
155 //QA tests region for US 319197 -port mirroring
157 //getNodeTemplateMetadata (All Types)
159 public void GetServiceNodeTemplateMetadataTypeVF() {
160 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("VF_1_V_port_1 0");
161 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
162 assertNotNull(nodeTemplateMetadata);
163 assertEquals(nodeTemplateMetadata.getValue("resourceVendorRelease"), "12-12-12");
164 assertEquals(nodeTemplateMetadata.getValue("type"), "VF");
168 public void GetServiceNodeTemplateMetadataTypeVL() {
169 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("ExtVL 0");
170 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
171 assertNotNull(nodeTemplateMetadata);
172 assertEquals(nodeTemplateMetadata.getValue("resourceVendorRelease"), "1.0.0.wd03");
173 assertEquals(nodeTemplateMetadata.getValue("type"), "VL");
177 public void GetServiceNodeTemplateMetadataTypeCP() {
178 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("ExtCP 0");
179 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
180 assertNotNull(nodeTemplateMetadata);
181 assertEquals(nodeTemplateMetadata.getValue("UUID"), "7a883088-5cab-4bfb-8d55-307d3ffd0758");
182 assertEquals(nodeTemplateMetadata.getValue("type"), "CP");
186 public void GetServiceNodeTemplateMetadataTypePNF() {
187 NodeTemplate nodeTemplate = QAServiceForToscaParserTests.getServiceNodeTemplateByNodeName("PNF TEST 0");
188 Metadata nodeTemplateMetadata = QAServiceForToscaParserTests.getNodeTemplateMetadata(nodeTemplate);
189 assertNotNull(nodeTemplateMetadata);
190 assertEquals(nodeTemplateMetadata.getValue("resourceVendorModelNumber"), "");
191 assertEquals(nodeTemplateMetadata.getValue("type"), "PNF");
194 //QA end region for US 319197 -port mirroring
196 // Added by QA //region getServiceMetadataAllProperties
199 public void testGetAllMetadataProperties() {
200 Metadata serviceMetadata = fdntCsarHelper.getServiceMetadata();
201 assertNotNull(serviceMetadata);
202 Map<String, String> allProperties = serviceMetadata.getAllProperties();
203 assertNotNull(allProperties);
204 String invariantUUID = allProperties.get("invariantUUID");
205 String UUID = allProperties.get("UUID");
206 String name = allProperties.get("name");
207 String description = allProperties.get("description");
208 String type = allProperties.get("type");
209 String category = allProperties.get("category");
210 String ecompGeneratedNaming = allProperties.get("ecompGeneratedNaming");
211 String namingPolicy = allProperties.get("namingPolicy");
212 String serviceEcompNaming = allProperties.get("serviceEcompNaming");
214 assertEquals(invariantUUID, "78c72999-1003-4a35-8534-bbd7d96fcae3");
215 assertEquals(UUID, "edd0a9f7-d084-4423-8461-a2eff4cb3eb6");
216 assertEquals(name, "Service FDNT");
217 assertEquals(description, "Service FDNT");
218 assertEquals(type, "Service");
219 assertEquals(category, "Network L1-3");
220 assertEquals(ecompGeneratedNaming, "true");
221 assertEquals(namingPolicy, "test");
222 assertEquals(serviceEcompNaming, "true");
227 public void testCSARMissingConformanceLevelWithCustomErrorConfig() throws
228 SdcToscaParserException {
230 ConfigurationManager configurationManager = ConfigurationManager.getInstance();
232 configurationManager.setErrorConfiguration("error-configuration-test.yaml");
233 SdcToscaParserFactory.setConfigurationManager(configurationManager);
234 ISdcCsarHelper missingCSARMetaCsarCustomConfig = getCsarHelper
235 ("csars/service-missing-csar-meta-file.csar");
236 String conformanceLevel = missingCSARMetaCsarCustomConfig.getConformanceLevel();
237 assertNotNull(conformanceLevel);
238 assertEquals(conformanceLevel, configurationManager.getConfiguration().getConformanceLevel()
242 configurationManager.setErrorConfiguration("error-configuration.yaml");
243 SdcToscaParserFactory.setConfigurationManager(configurationManager);
248 @Test(expectedExceptions = SdcToscaParserException.class)
249 public void testCSARMissingConformanceLevelWithDefaultErrorConfig() throws
250 SdcToscaParserException {
251 ISdcCsarHelper missingCSARMetaCsarDefaultConfig = getCsarHelper("csars/service-missing-csar-meta-file.csar");
252 missingCSARMetaCsarDefaultConfig.getConformanceLevel();