diff options
author | aosull01 <adrian.osullivan@huawei.com> | 2018-11-23 10:39:04 +0000 |
---|---|---|
committer | aosull01 <adrian.osullivan@huawei.com> | 2018-12-05 10:48:10 +0000 |
commit | aef15be24def0fbabfcf4aeb80d43a9e6ff3d7cc (patch) | |
tree | 2933b412f381f2caef1dcc275a163314a54c80f2 /src/test | |
parent | 953984ee0ccb656e851907bd16d9217dd6057695 (diff) |
Integrate sdc-tosca parser jar
Change-Id: Ieef1c4fe9d71164c7696bdb0bd93579a87bc09dc
Issue-ID: EXTAPI-171
Signed-off-by: aosull01 <adrian.osullivan@huawei.com>
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java | 103 | ||||
-rw-r--r-- | src/test/resources/toscafile/service-Sdwanvpninfraservice-csar.csar | bin | 0 -> 33640 bytes | |||
-rw-r--r-- | src/test/resources/toscafile/service-Sotnvpninfraservice-csar.csar | bin | 0 -> 34394 bytes |
3 files changed, 103 insertions, 0 deletions
diff --git a/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java b/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java index 6c116fb..b2ebe17 100644 --- a/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java +++ b/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java @@ -19,11 +19,15 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.yaml.YAMLFactory; import java.io.File; import java.io.IOException; +import java.nio.file.Path; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; + +import org.assertj.core.api.AbstractBooleanAssert; import org.junit.Test; import org.onap.nbi.exceptions.TechnicalException; +import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException; public class ToscaInfosProcessorTest { @@ -70,7 +74,106 @@ public class ToscaInfosProcessorTest { } + @Test + public void buildResponseWithSdcToscaParser() { + + ClassLoader classLoader = getClass().getClassLoader(); + Path path = new File(classLoader.getResource("toscafile/service-Sdwanvpninfraservice-csar.csar").getFile()).toPath().toAbsolutePath(); + List<LinkedHashMap> resources = new ArrayList<>(); + LinkedHashMap resource1 = new LinkedHashMap(); + resource1.put("id", "7baa7742-3a13-4288-8330-868015adc340"); + resources.add(resource1); + LinkedHashMap resource2 = new LinkedHashMap(); + resource2.put("id", "81b9430b-8abe-45d6-8bf9-f41a8f5c735f"); + resources.add(resource2); + LinkedHashMap response = new LinkedHashMap(); + response.put("resourceSpecification", resources); + + try { + toscaInfosProcessor.buildResponseWithSdcToscaParser(path, response); + } + catch(SdcToscaParserException e) { + throw new TechnicalException("unable to build response from tosca csar using sdc-parser : " + path.toString()+" "+e.getMessage()); + } + resources = (List<LinkedHashMap>) response.get("resourceSpecification"); + List<LinkedHashMap> serviceSpecCharacteristic = new ArrayList<>(); + serviceSpecCharacteristic = (List<LinkedHashMap>) response.get("serviceSpecCharacteristic"); + assertThat(serviceSpecCharacteristic.get(0).get("name")).isEqualTo("sdwanconnectivity0_topology"); + assertThat(serviceSpecCharacteristic.get(1).get("valueType")).isEqualTo("string"); + assertThat(serviceSpecCharacteristic.get(0).get("required")).isEqualTo(true); + assertThat(serviceSpecCharacteristic.get(1).get("name")).isEqualTo("sdwanconnectivity0_name"); + assertThat(serviceSpecCharacteristic.get(1).get("valueType")).isEqualTo("string"); + assertThat(serviceSpecCharacteristic.get(1).get("required")).isEqualTo(true); + assertThat(resources.get(0).get("modelCustomizationId")).isEqualTo("94ec574b-2306-4cbd-8214-09662b040f73"); + assertThat(resources.get(1).get("modelCustomizationId")).isEqualTo("a7baba5d-6ac3-42b5-b47d-070841303ab1"); + + } + + @Test + public void buildResponseWithSdcToscaParserWithDefaultInputs() { + + ClassLoader classLoader = getClass().getClassLoader(); + Path path = new File(classLoader.getResource("toscafile/service-Sotnvpninfraservice-csar.csar").getFile()).toPath().toAbsolutePath(); + List<LinkedHashMap> resources = new ArrayList<>(); + LinkedHashMap resource1 = new LinkedHashMap(); + resource1.put("id", "218df3c3-50dd-4c26-9e36-4771387bb771"); + resources.add(resource1); + LinkedHashMap resource2 = new LinkedHashMap(); + resource2.put("id", "81b9430b-8abe-45d6-8bf9-f41a8f5c735f"); + resources.add(resource2); + LinkedHashMap response = new LinkedHashMap(); + response.put("resourceSpecification", resources); + + try { + toscaInfosProcessor.buildResponseWithSdcToscaParser(path, response); + } + catch(SdcToscaParserException e) { + throw new TechnicalException("unable to build response from tosca csar using sdc-parser : " + path.toString()+" "+e.getMessage()); + } + resources = (List<LinkedHashMap>) response.get("resourceSpecification"); + List<LinkedHashMap> serviceSpecCharacteristic = new ArrayList<>(); + serviceSpecCharacteristic = (List<LinkedHashMap>) response.get("serviceSpecCharacteristic"); + assertThat(resources.get(0).get("modelCustomizationId")).isEqualTo("b44071c8-04fd-4d6b-b6af-772cbfaa1129"); + assertThat(resources.get(1).get("modelCustomizationId")).isEqualTo("c3612284-6c67-4d8c-8b41-b699cc90e76d"); + assertThat(serviceSpecCharacteristic.get(12).get("serviceSpecCharacteristicValue")).isNull(); + assertThat(serviceSpecCharacteristic.get(13).get("serviceSpecCharacteristicValue")).isNotNull(); + } + + @Test + public void buildResponseWithSdcToscaParserwithMetaDataMisMatch() { + ClassLoader classLoader = getClass().getClassLoader(); + Path path = new File(classLoader.getResource("toscafile/service-Sdwanvpninfraservice-csar.csar").getFile()).toPath().toAbsolutePath(); + List<LinkedHashMap> resources = new ArrayList<>(); + LinkedHashMap resource1 = new LinkedHashMap(); + resource1.put("id", "some bad resource id no in TOSCA CSAR"); + resources.add(resource1); + LinkedHashMap resource2 = new LinkedHashMap(); + resource2.put("id", "some bad resource id no in TOSCA CSAR"); + resources.add(resource2); + LinkedHashMap response = new LinkedHashMap(); + response.put("resourceSpecification", resources); + + try { + toscaInfosProcessor.buildResponseWithSdcToscaParser(path, response); + } + catch(SdcToscaParserException e) { + throw new TechnicalException("unable to build response from tosca csar using sdc-parser : " + path.toString()+" "+e.getMessage()); + } + resources = (List<LinkedHashMap>) response.get("resourceSpecification"); + List<LinkedHashMap> serviceSpecCharacteristic = new ArrayList<>(); + serviceSpecCharacteristic = (List<LinkedHashMap>) response.get("serviceSpecCharacteristic"); + assertThat(serviceSpecCharacteristic.get(0).get("name")).isEqualTo("sdwanconnectivity0_topology"); + assertThat(serviceSpecCharacteristic.get(1).get("valueType")).isEqualTo("string"); + assertThat(serviceSpecCharacteristic.get(0).get("required")).isEqualTo(true); + assertThat(serviceSpecCharacteristic.get(1).get("name")).isEqualTo("sdwanconnectivity0_name"); + assertThat(serviceSpecCharacteristic.get(1).get("valueType")).isEqualTo("string"); + assertThat(serviceSpecCharacteristic.get(1).get("required")).isEqualTo(true); + // Check that resources cannot be found in the TOSCA template + assertThat(resources.get(0).get("modelCustomizationId")).isNull(); + assertThat(resources.get(1).get("modelCustomizationId")).isNull(); + + } @Test public void buildResponseWithToscaInfosOk() { diff --git a/src/test/resources/toscafile/service-Sdwanvpninfraservice-csar.csar b/src/test/resources/toscafile/service-Sdwanvpninfraservice-csar.csar Binary files differnew file mode 100644 index 0000000..52bdfe2 --- /dev/null +++ b/src/test/resources/toscafile/service-Sdwanvpninfraservice-csar.csar diff --git a/src/test/resources/toscafile/service-Sotnvpninfraservice-csar.csar b/src/test/resources/toscafile/service-Sotnvpninfraservice-csar.csar Binary files differnew file mode 100644 index 0000000..b4f9693 --- /dev/null +++ b/src/test/resources/toscafile/service-Sotnvpninfraservice-csar.csar |