aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java
diff options
context:
space:
mode:
authormark.j.leonard <mark.j.leonard@gmail.com>2019-02-05 14:24:33 +0000
committermark.j.leonard <mark.j.leonard@gmail.com>2019-02-05 14:24:33 +0000
commit1954294aed95c2db4eb2659dcef91248535de079 (patch)
tree05011d5cb74775e02e6b28f02150c9e2b0539708 /src/test/java
parent7fcc74469c941c1834cd02b54ff5ca88a53bf83b (diff)
Replace Resource sub-classes with configuration
Delete the sub-classes of the Resource (internal Model class) and replace the annotated properties of these classes with TOSCA-to-Model mappping data loaded from the JSON configuration. Change-Id: I56d5d9d4893be45eb42ae65099ea9abe5f4409b9 Issue-ID: AAI-2121 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/parser/TestArtifactGeneratorToscaParser.java16
-rw-r--r--src/test/java/org/onap/aai/babel/xml/generator/model/TestModel.java83
-rw-r--r--src/test/java/org/onap/aai/babel/xml/generator/model/TestVfModule.java44
3 files changed, 85 insertions, 58 deletions
diff --git a/src/test/java/org/onap/aai/babel/parser/TestArtifactGeneratorToscaParser.java b/src/test/java/org/onap/aai/babel/parser/TestArtifactGeneratorToscaParser.java
index 52dd462..d7519c0 100644
--- a/src/test/java/org/onap/aai/babel/parser/TestArtifactGeneratorToscaParser.java
+++ b/src/test/java/org/onap/aai/babel/parser/TestArtifactGeneratorToscaParser.java
@@ -32,9 +32,8 @@ import java.util.List;
import org.junit.Test;
import org.mockito.Mockito;
import org.onap.aai.babel.xml.generator.data.WidgetConfigurationUtil;
-import org.onap.aai.babel.xml.generator.model.AllotedResource;
-import org.onap.aai.babel.xml.generator.model.InstanceGroup;
import org.onap.aai.babel.xml.generator.model.Resource;
+import org.onap.aai.babel.xml.generator.model.Widget.Type;
import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
import org.onap.sdc.toscaparser.api.Group;
import org.onap.sdc.toscaparser.api.NodeTemplate;
@@ -55,7 +54,8 @@ public class TestArtifactGeneratorToscaParser {
@Test(expected = IllegalArgumentException.class)
public void testMissingProvidingService() {
List<NodeTemplate> nodeTemplateList = Collections.singletonList(buildNodeTemplate("name", "BlockStorage"));
- new ArtifactGeneratorToscaParser(null).processResourceModels(new AllotedResource(), nodeTemplateList);
+ new ArtifactGeneratorToscaParser(null).processResourceModels(new Resource(Type.ALLOTTED_RESOURCE, true),
+ nodeTemplateList);
}
/**
@@ -65,7 +65,8 @@ public class TestArtifactGeneratorToscaParser {
@Test(expected = IllegalArgumentException.class)
public void testAddResourceNotProvidingService() {
List<NodeTemplate> nodeTemplateList = Collections.singletonList(buildNodeTemplate("testCR", "CR"));
- final Resource dummyResource = new AllotedResource(); // Any Resource to which the CR can be added
+ // Create any Resource to which the CR can be added
+ final Resource dummyResource = new Resource(Type.ALLOTTED_RESOURCE, true);
new ArtifactGeneratorToscaParser(null).processResourceModels(dummyResource, nodeTemplateList);
}
@@ -90,7 +91,8 @@ public class TestArtifactGeneratorToscaParser {
Mockito.when(helper.getGroupsOfOriginOfNodeTemplate(serviceNodeTemplate)).thenReturn(groups);
ArtifactGeneratorToscaParser parser = new ArtifactGeneratorToscaParser(helper);
- List<Resource> resources = parser.processInstanceGroups(new InstanceGroup(), serviceNodeTemplate);
+ List<Resource> resources =
+ parser.processInstanceGroups(new Resource(Type.INSTANCE_GROUP, true), serviceNodeTemplate);
assertThat(resources.size(), is(1));
Resource resource = resources.get(0);
@@ -102,9 +104,9 @@ public class TestArtifactGeneratorToscaParser {
* sdc-tosca parser.
*
* @param name
- * name of the NodeTemplate
+ * name of the NodeTemplate
* @param type
- * type of the NodeTemplate
+ * type of the NodeTemplate
* @return a new NodeTemplate object
*/
private NodeTemplate buildNodeTemplate(String name, String type) {
diff --git a/src/test/java/org/onap/aai/babel/xml/generator/model/TestModel.java b/src/test/java/org/onap/aai/babel/xml/generator/model/TestModel.java
index 912a505..3d5e841 100644
--- a/src/test/java/org/onap/aai/babel/xml/generator/model/TestModel.java
+++ b/src/test/java/org/onap/aai/babel/xml/generator/model/TestModel.java
@@ -21,14 +21,15 @@
package org.onap.aai.babel.xml.generator.model;
-import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
import java.io.IOException;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
+import java.util.Map;
import org.junit.Before;
import org.junit.Test;
import org.onap.aai.babel.parser.ArtifactGeneratorToscaParser;
@@ -43,7 +44,8 @@ import org.onap.aai.babel.xml.generator.types.ModelType;
public class TestModel {
private Service serviceModel = new Service();
- private List<Resource> resourceModels = Arrays.asList(new VirtualFunction(), new InstanceGroup());
+ private List<Resource> resourceModels =
+ Arrays.asList(new Resource(Type.CR, true), new Resource(Type.INSTANCE_GROUP, true));
private Widget widgetModel = new OamNetwork();
private Model anonymousModel;
@@ -56,7 +58,7 @@ public class TestModel {
* from the Artifact Generator properties.
*
* @throws IOException
- * if the Artifact Generator properties file is not loaded
+ * if the Artifact Generator properties file is not loaded
*/
@Before
public void setup() throws IOException {
@@ -81,6 +83,16 @@ public class TestModel {
public Type getWidgetType() {
return null;
}
+
+ @Override
+ public Map<String, Object> getProperties() {
+ return Collections.emptyMap();
+ }
+
+ @Override
+ public boolean isResource() {
+ return false;
+ }
};
}
@@ -90,34 +102,47 @@ public class TestModel {
assertThat(Model.getModelFor(""), is(nullValue()));
assertThat(Model.getModelFor("any.unknown.type"), is(nullValue()));
- assertThat(Model.getModelFor("org.openecomp.resource.vf.allottedResource"), instanceOf(AllotedResource.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vf.allottedResource.with.sub.type"),
- instanceOf(AllotedResource.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vfc.AllottedResource"),
- instanceOf(ProvidingService.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vfc"), instanceOf(VServerWidget.class));
- assertThat(Model.getModelFor("org.openecomp.resource.cp"), instanceOf(LIntfWidget.class));
- assertThat(Model.getModelFor("org.openecomp.cp"), instanceOf(LIntfWidget.class));
- assertThat(Model.getModelFor("org.openecomp.cp.some.suffix"), instanceOf(LIntfWidget.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vl"), instanceOf(L3Network.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vf"), instanceOf(VirtualFunction.class));
- assertThat(Model.getModelFor("org.openecomp.groups.vfmodule"), instanceOf(VfModule.class));
- assertThat(Model.getModelFor("org.openecomp.groups.VfModule"), instanceOf(VfModule.class));
- assertThat(Model.getModelFor("org.openecomp.resource.vfc.nodes.heat.cinder"), instanceOf(VolumeWidget.class));
- assertThat(Model.getModelFor("org.openecomp.nodes.PortMirroringConfiguration"),
- instanceOf(Configuration.class));
- assertThat(Model.getModelFor("org.openecomp.nodes.PortMirroringConfiguration", "Configuration"),
- instanceOf(Configuration.class));
- assertThat(Model.getModelFor("any.string", "Configuration"), instanceOf(Configuration.class));
- assertThat(Model.getModelFor("org.openecomp.resource.cr.Kk1806Cr1", "CR"), instanceOf(CR.class));
- assertThat(Model.getModelFor("any.string", "CR"), instanceOf(CR.class));
-
- assertThat(Model.getModelFor("org.openecomp.resource.vfc", "an.unknown.type"), instanceOf(VServerWidget.class));
+ assertMapping("org.openecomp.resource.vfc", Type.VSERVER);
+ assertMapping("org.openecomp.resource.cp", Type.LINT);
+ assertMapping("org.openecomp.cp", Type.LINT);
+ assertMapping("org.openecomp.cp.some.suffix", Type.LINT);
+ assertMapping("org.openecomp.resource.vl", Type.L3_NET);
+ assertMapping("org.openecomp.resource.vf", Type.VF);
+ assertMapping("org.openecomp.groups.vfmodule", Type.VFMODULE);
+ assertMapping("org.openecomp.groups.VfModule", Type.VFMODULE);
+ assertMapping("org.openecomp.resource.vfc.nodes.heat.cinder", Type.VOLUME);
+ assertMapping("org.openecomp.nodes.PortMirroringConfiguration", "Configuration", Type.CONFIGURATION);
+ assertMapping("any.string", "Configuration", Type.CONFIGURATION);
+ assertMapping("org.openecomp.resource.cr.Kk1806Cr1", "CR", Type.CR);
+ assertMapping("any.string", "CR", Type.CR);
+
+ assertMapping("org.openecomp.resource.vfc", "an.unknown.type", Type.VSERVER);
}
- @Test
- public void testGetCardinality() {
- resourceModels.get(0).getCardinality();
+ /**
+ * Assert that the TOSCA type String is mapped to the expected Widget Type.
+ *
+ * @param toscaType
+ * the TOSCA type or prefix
+ * @param widgetType
+ * the type of Widget expected from the mappings
+ */
+ private void assertMapping(String toscaType, Type widgetType) {
+ assertThat(Model.getModelFor(toscaType).getWidgetType(), is(widgetType));
+ }
+
+ /**
+ * Assert that the TOSCA metadata type is mapped to the expected Widget Type.
+ *
+ * @param toscaType
+ * the name (or name prefix) of the TOSCA type
+ * @param metadataType
+ * the type specified in the TOSCA metadata
+ * @param widgetType
+ * the type of Widget expected from the mappings
+ */
+ private void assertMapping(String toscaType, String metadataType, Type widgetType) {
+ assertThat(Model.getModelFor(toscaType, metadataType).getWidgetType(), is(widgetType));
}
@Test
diff --git a/src/test/java/org/onap/aai/babel/xml/generator/model/TestVfModule.java b/src/test/java/org/onap/aai/babel/xml/generator/model/TestVfModule.java
index 1a5986b..451d2bb 100644
--- a/src/test/java/org/onap/aai/babel/xml/generator/model/TestVfModule.java
+++ b/src/test/java/org/onap/aai/babel/xml/generator/model/TestVfModule.java
@@ -54,25 +54,25 @@ public class TestVfModule {
*/
@Test
public void testHashCode() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
populateIdentInfo(vfModule);
assertThat(vfModule.hashCode(), is(notNullValue()));
}
-
+
/**
* Call equals() method for code coverage.
*/
@Test
public void testEquals() {
- VfModule vfModuleA = createNewVfModule();
- populateIdentInfo(vfModuleA);
+ Resource vfModuleA = createNewVfModule();
+ populateIdentInfo(vfModuleA);
- // equals() is reflexive
+ // equals() is reflexive
assertThat(vfModuleA.equals(vfModuleA), is(true));
-
+
// equals() is symmetric
- VfModule vfModuleB = createNewVfModule();
- populateIdentInfo(vfModuleB);
+ Resource vfModuleB = createNewVfModule();
+ populateIdentInfo(vfModuleB);
assertThat(vfModuleA.equals(vfModuleB), is(true));
assertThat(vfModuleB.equals(vfModuleA), is(true));
@@ -95,7 +95,7 @@ public class TestVfModule {
*/
@Test
public void testNonMemberWidgetToVf() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
assertThat(vfModule.addWidget(createNewWidget(Type.SERVICE)), is(false));
assertNumberOfWidgets(vfModule, 0);
}
@@ -105,7 +105,7 @@ public class TestVfModule {
*/
@Test
public void testAddOamNetworkWidgetToVf() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
assertThat(createNewWidgetForModule(vfModule, Type.OAM_NETWORK), is(false));
assertNumberOfWidgets(vfModule, 0);
}
@@ -120,7 +120,7 @@ public class TestVfModule {
*/
@Test
public void testAddVolumeWidgetToVf() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
// Adding a Volume widget has no effect until a vserver widget is added.
assertAddWidget(vfModule, Type.VOLUME);
@@ -152,7 +152,7 @@ public class TestVfModule {
*/
@Test
public void testAddLinterfaceWidgetToVf() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
// Adding an L-Interface widget has no effect until a vserver widget is added.
assertFailToAddWidget(vfModule, Type.LINT);
@@ -185,7 +185,7 @@ public class TestVfModule {
*/
@Test
public void testAddVolumeAndLinterfaceWidgetToVf() {
- VfModule vfModule = createNewVfModule();
+ Resource vfModule = createNewVfModule();
// Adding a Volume widget has no effect until a vserver widget is added.
assertAddWidget(vfModule, Type.VOLUME);
@@ -232,8 +232,8 @@ public class TestVfModule {
*
* @return new VF Module resource
*/
- private VfModule createNewVfModule() {
- VfModule vfModule = new VfModule();
+ private Resource createNewVfModule() {
+ Resource vfModule = new Resource(Type.VFMODULE, true);
assertNumberOfWidgets(vfModule, 0);
return vfModule;
}
@@ -244,7 +244,7 @@ public class TestVfModule {
* @param vfModule
* to be populated
*/
- private void populateIdentInfo(VfModule vfModule) {
+ private void populateIdentInfo(Resource vfModule) {
Map<String, String> modelIdentInfo = new HashMap<>();
modelIdentInfo.put("UUID", "dummy_uuid");
vfModule.populateModelIdentificationInformation(modelIdentInfo);
@@ -258,7 +258,7 @@ public class TestVfModule {
* @param widgetType
* the type of Widget to create and add
*/
- private void assertAddWidget(VfModule vfModule, Type widgetType) {
+ private void assertAddWidget(Resource vfModule, Type widgetType) {
assertThat(createNewWidgetForModule(vfModule, widgetType), is(true));
}
@@ -270,7 +270,7 @@ public class TestVfModule {
* @param widgetType
* the type of Widget to create and attempt to add
*/
- private void assertFailToAddWidget(VfModule vfModule, Type widgetType) {
+ private void assertFailToAddWidget(Resource vfModule, Type widgetType) {
assertThat(createNewWidgetForModule(vfModule, widgetType), is(false));
}
@@ -283,7 +283,7 @@ public class TestVfModule {
* the type of Widget to create and attempt to add
* @return whether or not the Widget was added to the module
*/
- private boolean createNewWidgetForModule(VfModule vfModule, Type widgetType) {
+ private boolean createNewWidgetForModule(Resource vfModule, Type widgetType) {
Widget widget = createNewWidget(widgetType);
setWidgetAsMember(vfModule, widget);
return vfModule.addWidget(widget);
@@ -299,7 +299,7 @@ public class TestVfModule {
* @param widget
* the widget to be set as the member
*/
- private void setWidgetAsMember(VfModule vfModule, Widget widget) {
+ private void setWidgetAsMember(Resource vfModule, Widget widget) {
String id = widget.getId();
widget.addKey(id);
vfModule.setMembers(Collections.singletonList(id));
@@ -312,7 +312,7 @@ public class TestVfModule {
* the VF Module to update
* @return the number of Widgets present in the vserver on creation
*/
- private int createVserverForVf(VfModule vfModule) {
+ private int createVserverForVf(Resource vfModule) {
VServerWidget vserverWidget = (VServerWidget) createNewWidget(Type.VSERVER);
assertNumberOfWidgets(vfModule, 0);
final int initialWidgetCount = addVserverToVf(vfModule, vserverWidget);
@@ -329,7 +329,7 @@ public class TestVfModule {
* the Widget to add
* @return initial widget count for the vserver Widget
*/
- private int addVserverToVf(VfModule vfModule, VServerWidget vserverWidget) {
+ private int addVserverToVf(Resource vfModule, VServerWidget vserverWidget) {
// A vserver (initially) has Flavor, Image, Tenant and Vfc.
final int initialWidgetCount = 4;
assertNumberOfWidgets(vserverWidget, initialWidgetCount);