aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java
diff options
context:
space:
mode:
authormark.j.leonard <mark.j.leonard@gmail.com>2019-04-01 19:07:53 +0100
committermark.j.leonard <mark.j.leonard@gmail.com>2019-04-01 19:07:53 +0100
commit6342b6f7e46266caf72cbee7c96f782cc5093d80 (patch)
tree40bdfcf9eea94886e52d98e191ea2f1f75684f8b /src/test/java
parent60457e41054465e9fa10c8e6bfdbfa62a45d1f0a (diff)
Exception handling for image software versions
Throw an exception when no software versions are present for a VNF image. This needs to be an unchecked exception when using Streams. Change-Id: If7a429c79a614eed1dad6ed8ac1993caca47ab6d Issue-ID: AAI-2306 Signed-off-by: mark.j.leonard <mark.j.leonard@gmail.com>
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/onap/aai/babel/csar/vnfcatalog/SdcToscaHelper.java20
-rw-r--r--src/test/java/org/onap/aai/babel/csar/vnfcatalog/TestVnfVendorImageExtractor.java (renamed from src/test/java/org/onap/aai/babel/csar/vnfcatalog/VnfVendorImageExtractorTest.java)17
2 files changed, 28 insertions, 9 deletions
diff --git a/src/test/java/org/onap/aai/babel/csar/vnfcatalog/SdcToscaHelper.java b/src/test/java/org/onap/aai/babel/csar/vnfcatalog/SdcToscaHelper.java
index 6fbb1f1..d285aca 100644
--- a/src/test/java/org/onap/aai/babel/csar/vnfcatalog/SdcToscaHelper.java
+++ b/src/test/java/org/onap/aai/babel/csar/vnfcatalog/SdcToscaHelper.java
@@ -32,7 +32,7 @@ public class SdcToscaHelper {
/**
* Create the test SubstitutionMappings.
- *
+ *
* @return the new Substitution Mappings
*/
public SubstitutionMappings buildMappings() {
@@ -81,28 +81,32 @@ public class SdcToscaHelper {
/**
* Create a new NodeTemplate and add it to the list (for populating the Substitution Mappings).
+ *
+ * @return the new NodeTemplate
*/
- public void addNodeTemplate() {
+ public NodeTemplate addNodeTemplate() {
String name = "node name";
String type = "tosca.nodes.custom";
- LinkedHashMap<String, Object> nodeTemplate = new LinkedHashMap<>();
- nodeTemplate.put("type", type);
- nodeTemplate.put("properties", null);
+ LinkedHashMap<String, Object> ntMap = new LinkedHashMap<>();
+ ntMap.put("type", type);
+ ntMap.put("properties", null);
- LinkedHashMap<String, Object> ntnodeTemplates = buildCustomTypeDefinitions(name, nodeTemplate);
+ LinkedHashMap<String, Object> ntnodeTemplates = buildCustomTypeDefinitions(name, ntMap);
ntnodeTemplates.put("derived_from", null);
ntnodeTemplates.put("properties", getImagesDefProps());
LinkedHashMap<String, Object> typeInfo = buildNodeTemplateTypeInfo(getImagesDefProps());
LinkedHashMap<String, Object> customDefs = buildCustomTypeDefinitions(type, typeInfo);
- smnodetemplates.add(new NodeTemplate(name, ntnodeTemplates, customDefs, null, null));
+ NodeTemplate nodeTemplate = new NodeTemplate(name, ntnodeTemplates, customDefs, null, null);
+ smnodetemplates.add(nodeTemplate);
+ return nodeTemplate;
}
/**
* Simulate the creation of a NodeTemplate by the SDC TOSCA parser. Populate the properties of the NodeTemplate with
* the supplied images.
- *
+ *
* @param images
* the value of the images property
*/
diff --git a/src/test/java/org/onap/aai/babel/csar/vnfcatalog/VnfVendorImageExtractorTest.java b/src/test/java/org/onap/aai/babel/csar/vnfcatalog/TestVnfVendorImageExtractor.java
index 7a076c5..d76551a 100644
--- a/src/test/java/org/onap/aai/babel/csar/vnfcatalog/VnfVendorImageExtractorTest.java
+++ b/src/test/java/org/onap/aai/babel/csar/vnfcatalog/TestVnfVendorImageExtractor.java
@@ -28,6 +28,7 @@ import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
+import com.google.common.collect.ImmutableMap;
import java.io.IOException;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -37,11 +38,13 @@ import org.onap.aai.babel.service.data.BabelArtifact;
import org.onap.aai.babel.service.data.BabelArtifact.ArtifactType;
import org.onap.aai.babel.testdata.CsarTest;
import org.onap.aai.babel.util.ArtifactTestUtils;
+import org.onap.sdc.toscaparser.api.NodeTemplate;
+import org.onap.sdc.toscaparser.api.elements.Metadata;
/**
* Tests {@link VnfVendorImageExtractor}.
*/
-public class VnfVendorImageExtractorTest {
+public class TestVnfVendorImageExtractor {
@Test(expected = NullPointerException.class)
public void createVendorImageMappingsNullCsarSupplied() throws ToscaToCatalogException, IOException {
@@ -89,6 +92,18 @@ public class VnfVendorImageExtractorTest {
is(equalTo(new ArtifactTestUtils().getRequestJson("vnfVendorImageConfigurations.json"))));
}
+ /**
+ * Test that an Exception is created when there are no software versions defined for a VF.
+ */
+ @Test(expected = IllegalArgumentException.class)
+ public void testBuildVendorImageConfigurations() {
+ SdcToscaHelper helper = new SdcToscaHelper();
+ NodeTemplate vf = helper.addNodeTemplate();
+ vf.setMetaData(new Metadata(ImmutableMap.of("resourceVendor", "vendor")));
+ vf.setSubMappingToscaTemplate(helper.buildMappings());
+ new VnfVendorImageExtractor().buildVendorImageConfigurations(null, vf);
+ }
+
@Test
public void testSoftwareVersions() throws ToscaToCatalogException {
VnfVendorImageExtractor extractor = new VnfVendorImageExtractor();