From 161df8a94bb3b0c34ed16fd4fdba078bd1eeef9a Mon Sep 17 00:00:00 2001 From: Patrick Brady Date: Wed, 13 Dec 2017 11:14:21 -0800 Subject: Second part of onap rename This is the second commit of the rename. The folder structure is renamed for appc-adapters and appc-config in this commit. Change-Id: Iaa2b8c937ff1ca1b5d1178128961fb115ee65d9b Signed-off-by: Patrick Brady Issue-ID: APPC-13 --- .../params/parser/TestPropertyDefinitionNode.java | 116 ++++++++++ .../transformer/tosca/TestArtifactProcessor.java | 105 +++++++++ .../tosca/TestGenerateArtifactObject.java | 254 +++++++++++++++++++++ .../tosca/TestGenerateArtifactString.java | 155 +++++++++++++ .../transformer/tosca/TestPropertyQueryString.java | 171 ++++++++++++++ .../params/transformer/tosca/TestReadArtifact.java | 103 +++++++++ .../params/parser/TestPropertyDefinitionNode.java | 116 ---------- .../transformer/tosca/TestArtifactProcessor.java | 105 --------- .../tosca/TestGenerateArtifactObject.java | 254 --------------------- .../tosca/TestGenerateArtifactString.java | 155 ------------- .../transformer/tosca/TestPropertyQueryString.java | 171 -------------- .../params/transformer/tosca/TestReadArtifact.java | 103 --------- 12 files changed, 904 insertions(+), 904 deletions(-) create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/parser/TestPropertyDefinitionNode.java create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java create mode 100644 appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestReadArtifact.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/parser/TestPropertyDefinitionNode.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java delete mode 100644 appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestReadArtifact.java (limited to 'appc-config/appc-config-params/provider/src/test/java/org') diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/parser/TestPropertyDefinitionNode.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/parser/TestPropertyDefinitionNode.java new file mode 100644 index 000000000..be11384c4 --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/parser/TestPropertyDefinitionNode.java @@ -0,0 +1,116 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.parser; + +import static org.junit.Assert.assertEquals; + +import java.io.File; +import java.nio.charset.Charset; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.io.IOUtils; +import org.junit.Test; +import org.junit.Ignore; +import org.openecomp.sdnc.config.params.ParamsHandlerConstant; +import org.openecomp.sdnc.config.params.data.PropertyDefinition; +import org.openecomp.sdnc.config.params.parser.PropertyDefinitionNode; +import org.openecomp.sdnc.config.params.transformer.ArtificatTransformer; + +import org.onap.ccsdk.sli.core.sli.SvcLogicContext; + +import com.fasterxml.jackson.databind.ObjectMapper; + +public class TestPropertyDefinitionNode { + + @Ignore + public void testProcessMissingParamKeys() throws Exception { + PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); + Map inParams = new HashMap(); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); + + String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_PD_CONTENT, yamlData); + + String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); + + SvcLogicContext ctx = new SvcLogicContext(); + propertyDefinitionNode.processMissingParamKeys(inParams, ctx); + assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); + + } + + @Test + public void testProcessExternalSystemParamKeys() throws Exception { + PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); + Map inParams = new HashMap(); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); + + String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_PD_CONTENT, yamlData); + + String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); + + inParams.put(ParamsHandlerConstant.INPUT_PARAM_SYSTEM_NAME, "SOURCE"); + + SvcLogicContext ctx = new SvcLogicContext(); + propertyDefinitionNode.processExternalSystemParamKeys(inParams, ctx); + assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); +} + + @Test + public void mergeJsonData() throws Exception { + PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); + Map inParams = new HashMap(); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); + + String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); + + String mergeJsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/merge-param.json"), Charset.defaultCharset()); + inParams.put(ParamsHandlerConstant.INPUT_PARAM_MERGE__JSON_DATA, mergeJsonData); + + SvcLogicContext ctx = new SvcLogicContext(); + propertyDefinitionNode.mergeJsonData(inParams, ctx); + assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); + } + + @Test + public void testArtificatTransformer() throws Exception { + ArtificatTransformer transformer = new ArtificatTransformer(); + String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); + + PropertyDefinition propertyDefinition = transformer.convertYAMLToPD(yamlData); + String yaml = transformer.convertPDToYaml(propertyDefinition); + } + +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java new file mode 100644 index 000000000..33845ddca --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java @@ -0,0 +1,105 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.transformer.tosca; + +import org.junit.Assert; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; + +import java.io.*; + +public class TestArtifactProcessor{ + @Rule + public TemporaryFolder temporaryFolder = new TemporaryFolder(); + + @Test + public void testArtifactProcessor() throws IOException, ArtifactProcessorException { + + ArtifactProcessor arp = ArtifactProcessorFactory.getArtifactProcessor(); + + String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); + OutputStream outstream=null; + + File tempFile = temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(tempFile); + arp.generateArtifact(pdString,outstream); + outstream.flush(); + outstream.close(); + + String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); + String toscaString = getFileContent(tempFile); + Assert.assertEquals(expectedTosca,toscaString); + } + + @Test + public void testArtifactProcessorWithStringOutput() throws IOException, ArtifactProcessorException { + + ArtifactProcessor arp = ArtifactProcessorFactory.getArtifactProcessor(); + + String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); + OutputStream outstream=null; + + outstream = new ByteArrayOutputStream(); + arp.generateArtifact(pdString,outstream); + outstream.flush(); + outstream.close(); + + String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); + String toscaString = outstream.toString(); + } + + private String getFileContent(String fileName) throws IOException{ + ClassLoader classLoader = new TestArtifactProcessor().getClass().getClassLoader(); + InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } + + private String getFileContent(File file) throws IOException{ + InputStream is = new FileInputStream(file); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java new file mode 100644 index 000000000..950180262 --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java @@ -0,0 +1,254 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.transformer.tosca; + +import org.junit.Assert; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.openecomp.sdnc.config.params.data.Parameter; +import org.openecomp.sdnc.config.params.data.PropertyDefinition; +import org.openecomp.sdnc.config.params.data.RequestKey; +import org.openecomp.sdnc.config.params.data.ResponseKey; +import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; + +import java.io.*; +import java.util.ArrayList; +import java.util.List; + +public class TestGenerateArtifactObject +{ + @Rule + public TemporaryFolder temporaryFolder = new TemporaryFolder(); + + @Test + public void testObjectArtifactProcessor() throws IOException, ArtifactProcessorException { + + String expectedTosca="node_types:\n" + + " VNF:\n" + + " derived_from: org.openecomp.genericvnf\n" + + " version: V1\n" + + " description: ''\n" + + " properties:\n" + + " LOCAL_ACCESS_IP_ADDR:\n" + + " type: string\n" + + " required: false\n" + + " default: 0.0.0.0\n" + + " status: SUPPORTED\n" + + " LOCAL_CORE_ALT_IP_ADDR:\n" + + " type: String\n" + + " required: false\n" + + " default: value\n" + + " status: SUPPORTED\n" + + "topology_template:\n" + + " node_templates:\n" + + " VNF_Template:\n" + + " type: VNF\n" + + " properties:\n" + + " LOCAL_ACCESS_IP_ADDR: \n" + + " LOCAL_CORE_ALT_IP_ADDR: \n"; + //Create object + PropertyDefinition pd = new PropertyDefinition(); + pd.setKind("VNF"); + pd.setVersion("V1"); + pd.setParameters(createParameters()); + + //Call ArtifactProcessor + OutputStream outstream=null; + + File toscaFile =temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(toscaFile); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + arp.generateArtifact(pd,outstream); + outstream.flush(); + outstream.close(); + + String toscaString = getFileContent(toscaFile); + Assert.assertEquals(expectedTosca,toscaString); + + } + + @Test + public void testPDpropertiesSetNull() throws IOException, ArtifactProcessorException { + String expectedTosca = "node_types:\n" + + " PropertyDefinition:\n" + + " derived_from: org.openecomp.genericvnf\n" + + " version: V1\n" + + " description: ''\n" + + "topology_template:\n" + + " node_templates:\n" + + " PropertyDefinition_Template:\n" + + " type: PropertyDefinition\n"; + //Create object + PropertyDefinition pd = new PropertyDefinition(); + pd.setKind("PropertyDefinition"); + pd.setVersion("V1"); + OutputStream outstream=null; + + File toscaFile =temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(toscaFile); + + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + arp.generateArtifact(pd,outstream); + outstream.flush(); + outstream.close(); + + String toscaString = getFileContent(toscaFile); + Assert.assertEquals(expectedTosca,toscaString); + } + + @Test + public void testArtifactGeneratorInvalidStream() throws IOException { + String expectedMsg = "java.io.IOException: Stream Closed"; + PropertyDefinition pd = new PropertyDefinition(); + pd.setKind("VNF"); + pd.setVersion("V1"); + pd.setParameters(createParameters()); + + //Call ArtifactProcessor + OutputStream outstream=null; + try { + File toscaFile =temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(toscaFile); + outstream.close(); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + arp.generateArtifact(pd,outstream); + Assert.fail(); + } + catch (ArtifactProcessorException e) + { + Assert.assertEquals(expectedMsg,e.getMessage()); + } + } + + private List createParameters() + { + //Create single Parameter object 1 + Parameter singleParameter1 = new Parameter(); + singleParameter1.setName("LOCAL_ACCESS_IP_ADDR"); + singleParameter1.setRequired(false); + singleParameter1.setSource("source"); + singleParameter1.setDefaultValue("0.0.0.0"); + singleParameter1.setRuleType("myRule1"); + singleParameter1.setRequestKeys(createRequestKeys()); + + //Create single Parameter object 2 + Parameter singleParameter2 = new Parameter(); + singleParameter2.setName("LOCAL_CORE_ALT_IP_ADDR"); + singleParameter2.setType("String"); + singleParameter2.setRequired(false); + singleParameter2.setSource("source"); + singleParameter2.setDefaultValue("value"); + singleParameter2.setRuleType("myRule2"); + singleParameter2.setResponseKeys(createResponseKeys()); + + //Add the Parameter objects to the List + List parameterList = new ArrayList(); + parameterList.add(singleParameter1); + parameterList.add(singleParameter2); + return parameterList; + } + + private List createRequestKeys() + { + //Create RequestKey object 1 + RequestKey requestKey1 = new RequestKey(); + requestKey1.setKeyName("class-type"); + requestKey1.setKeyValue("interface-ip-address"); + + //Create RequestKey object 2 + RequestKey requestKey2 = new RequestKey(); + requestKey2.setKeyName("address_fqdn"); + requestKey2.setKeyValue("someVal"); + + //Create RequestKey object 3 + RequestKey requestKey3 = new RequestKey(); + requestKey3.setKeyName("address_type"); + requestKey3.setKeyValue("v4"); + + //Add the RequestKey Objects to the List + List requestKeyList = new ArrayList(); + requestKeyList.add(requestKey1); + requestKeyList.add(requestKey2); + requestKeyList.add(requestKey3); + return requestKeyList; + } + + private List createResponseKeys() + { + //Create RequestKey object 1 + ResponseKey responseKey1 = new ResponseKey(); + + responseKey1.setUniqueKeyName("name1"); + responseKey1.setUniqueKeyValue("value1"); + responseKey1.setFieldKeyName("field1"); + + //Add the RequestKey Objects to the List + List responseKeyList = new ArrayList(); + responseKeyList.add(responseKey1); + + return responseKeyList; + } + + private Parameter createParameter() + { + Parameter singleParameter1 = new Parameter(); + singleParameter1.setName("LOCAL_ACCESS_IP_ADDR"); + singleParameter1.setRequired(false); + singleParameter1.setSource("source"); + singleParameter1.setDefaultValue("0.0.0.0"); + singleParameter1.setRequestKeys(createRequestKeys()); + singleParameter1.setResponseKeys(createResponseKeys()); + return singleParameter1; + } + + @Test(expected =Exception.class) + public void testPDnull() throws IOException, ArtifactProcessorException { + PropertyDefinition pd = null; + OutputStream outstream=null; + + outstream = new FileOutputStream(".\\TestTosca.yml"); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + arp.generateArtifact(pd,outstream); + outstream.flush(); + outstream.close(); + } + + private String getFileContent(File file) throws IOException + { + InputStream is = new FileInputStream(file); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java new file mode 100644 index 000000000..4ffbe5298 --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java @@ -0,0 +1,155 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.transformer.tosca; + +import org.junit.Assert; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; + +import java.io.*; +import java.net.URL; + +public class TestGenerateArtifactString{ + + @Rule + public TemporaryFolder temporaryFolder = new TemporaryFolder(); + + @Test + public void testStringArtifactGenerator() throws IOException, ArtifactProcessorException { + + String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); + OutputStream outstream=null; + + File tempFile = temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(tempFile); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + arp.generateArtifact(pdString,outstream); + outstream.flush(); + outstream.close(); + + String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); + String toscaString = getFileContent(tempFile); + Assert.assertEquals(expectedTosca,toscaString); + + } + + @Test + public void testArtifactGeneratorWithParameterNameBlank() throws IOException, ArtifactProcessorException { + + String pdString = getFileContent("tosca/ExamplePropertyDefinition2.yml"); + OutputStream outstream=null; + String expectedMsg ="Parameter name is empty,null or contains whitespace"; + + File tempFile = temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(tempFile); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + try { + arp.generateArtifact(pdString, outstream); + } + catch (ArtifactProcessorException e) + { + Assert.assertEquals(expectedMsg,e.getMessage()); + } + outstream.flush(); + outstream.close(); + } + + @Test + public void testArtifactGeneratorWithParameterNameNull() throws IOException, ArtifactProcessorException { + + String pdString = getFileContent("tosca/ExamplePropertyDefinition3.yml"); + OutputStream outstream=null; + String expectedMsg ="Parameter name is empty,null or contains whitespace"; + + File tempFile = temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(tempFile); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + try { + arp.generateArtifact(pdString, outstream); + } + catch (ArtifactProcessorException e) + { + Assert.assertEquals(expectedMsg,e.getMessage()); + } + outstream.flush(); + outstream.close(); + } + + @Test + public void testArtifactGeneratorWithKindNull() throws IOException, ArtifactProcessorException { + + String pdString = getFileContent("tosca/ExamplePropertyDefinition4.yml"); + OutputStream outstream=null; + String expectedMsg ="Kind in PropertyDefinition is blank or null"; + + File tempFile = temporaryFolder.newFile("TestTosca.yml"); + outstream = new FileOutputStream(tempFile); + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + try { + arp.generateArtifact(pdString, outstream); + } + catch (ArtifactProcessorException e) + { + Assert.assertEquals(expectedMsg,e.getMessage()); + } + outstream.flush(); + outstream.close(); + } + + private String getFileContent(String fileName) throws IOException + { + ClassLoader classLoader = new TestGenerateArtifactString().getClass().getClassLoader(); + InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } + + private String getFileContent(File file) throws IOException + { + InputStream is = new FileInputStream(file); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java new file mode 100644 index 000000000..3eb231ae9 --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java @@ -0,0 +1,171 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.transformer.tosca; + +import org.junit.Assert; +import org.junit.Test; +import org.openecomp.sdnc.config.params.data.RequestKey; +import org.openecomp.sdnc.config.params.data.ResponseKey; + +import java.util.ArrayList; +import java.util.List; + +public class TestPropertyQueryString +{ + @Test + public void testBuildResponseKeys() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + String properties= arp.buildResponseKeyExpression(createResponseKeys()); + Assert.assertEquals("",properties); + } + + @Test + public void testBuildRequestKeys() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + String properties= arp.buildRequestKeyExpression(createRequestKeys()); + Assert.assertEquals("",properties); + } + + @Test + public void testEncoding() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + + String expected1 = "<class-type>"; + String encoded1 = arp.encode(""); + Assert.assertEquals(expected1,encoded1); + + String expected2 = "<<<metallica<>iron_maiden>>>"; + String encoded2 = arp.encode("<<iron_maiden>>>"); + Assert.assertEquals(expected2,encoded2); + + String expected3 = "band-list:metallica,ironmaiden"; + String encoded3 = arp.encode("band-list:metallica,ironmaiden"); + Assert.assertEquals(expected3,encoded3); + + String expected4 = "motorhead=lemmy"; + String encoded4 = arp.encode("motorhead=lemmy"); + Assert.assertEquals(expected4,encoded4); + + String expected5 = "DreamTheater"; + String encoded5 = arp.encode(" DreamTheater "); + Assert.assertEquals(expected5,encoded5); + } + + @Test + public void testBuildRuleType() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + String input = "IPV4"; + String expected = ""; + Assert.assertEquals(expected,arp.buildRuleType(input)); + } + + @Test + public void testRuleTypeSetNull() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + String expected = ""; + Assert.assertEquals(expected,arp.buildRuleType(null)); + } + + @Test + public void testBuildRequestKeysWithKeyNull() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + List requestKeyList = new ArrayList(); + requestKeyList.add(null); + String properties= arp.buildRequestKeyExpression(requestKeyList); + Assert.assertEquals("",properties); + } + + @Test + public void testBuildResponseKeysWithKeyNull() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + List responseKeyList = new ArrayList(); + responseKeyList.add(null); + String properties= arp.buildResponseKeyExpression(responseKeyList); + Assert.assertEquals("",properties); + } + + @Test + public void testBuildSourceSystem() + { + ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); + Assert.assertEquals("",arp.buildSourceSystem("source")); + } + + //@Test + private List createRequestKeys() + { + //Create RequestKey object 1 + RequestKey requestKey1 = new RequestKey(); + requestKey1.setKeyName("class-type"); + requestKey1.setKeyValue("interface-ip-address"); + + //Create RequestKey object 2 + RequestKey requestKey2 = new RequestKey(); + requestKey2.setKeyName("address_fqdn"); + requestKey2.setKeyValue("00000000000000"); + + //Create RequestKey object 3 + RequestKey requestKey3 = new RequestKey(); + requestKey3.setKeyName("address_type"); + requestKey3.setKeyValue("v4"); + + //Add the RequestKey Objects to the List + List requestKeyList = new ArrayList(); + requestKeyList.add(requestKey1); + requestKeyList.add(requestKey2); + requestKeyList.add(requestKey3); + return requestKeyList; + } + + //@Test + private List createResponseKeys() + { + //Create RequestKey object 1 + ResponseKey responseKey1 = new ResponseKey(); + + responseKey1.setUniqueKeyName("address-fqdn"); + responseKey1.setUniqueKeyValue("0000000000000"); + responseKey1.setFieldKeyName("ipaddress-v4"); + + ResponseKey responseKey2 = new ResponseKey(); + responseKey2.setUniqueKeyName("key2"); + responseKey2.setUniqueKeyValue("value2"); + responseKey2.setFieldKeyName("field2"); + + //Add the RequestKey Objects to the List + List responseKeyList = new ArrayList(); + responseKeyList.add(responseKey1); + responseKeyList.add(responseKey2); + + return responseKeyList; + } +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestReadArtifact.java b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestReadArtifact.java new file mode 100644 index 000000000..1b65a21f6 --- /dev/null +++ b/appc-config/appc-config-params/provider/src/test/java/org/onap/sdnc/config/params/transformer/tosca/TestReadArtifact.java @@ -0,0 +1,103 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP : APPC + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Copyright (C) 2017 Amdocs + * ============================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.sdnc.config.params.transformer.tosca; + +import org.junit.Assert; +import org.junit.Test; +import org.openecomp.sdnc.config.params.data.PropertyDefinition; +import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; + +import java.io.*; + +public class TestReadArtifact { + @Test + public void testReadArtifactPositive() throws ArtifactProcessorException, IOException { + + String toscaArtifact = getFileContent("tosca/ReadArtifactPositiveInputTosca.yml"); + ArtifactProcessorImpl artifact = new ArtifactProcessorImpl(); + PropertyDefinition ouptPD = artifact.readArtifact(toscaArtifact); + Assert.assertEquals(ouptPD.getKind(),"Property Definition"); + Assert.assertEquals(ouptPD.getVersion(),"V1"); + + Assert.assertEquals(ouptPD.getParameters().get(0).getDefaultValue(),"0.0.0.0"); + Assert.assertEquals(ouptPD.getParameters().get(0).getName(),"abc"); + Assert.assertEquals(ouptPD.getParameters().get(0).getSource(),"source"); + Assert.assertEquals(ouptPD.getParameters().get(0).getRuleType(),"interface-ip-address"); + Assert.assertEquals(ouptPD.getParameters().get(0).getDescription(),"param_desc"); + Assert.assertEquals(ouptPD.getParameters().get(0).getType(),"param1_type"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); + Assert.assertEquals(ouptPD.getParameters().get(0).getResponseKeys().get(0).getUniqueKeyName(),"address-0"); + Assert.assertEquals(ouptPD.getParameters().get(0).getResponseKeys().get(0).getFieldKeyName(),"0"); + + Assert.assertEquals(ouptPD.getParameters().get(1).getDefaultValue(),"value"); + Assert.assertEquals(ouptPD.getParameters().get(1).getName(),"param 2"); + Assert.assertEquals(ouptPD.getParameters().get(1).getSource(),"source"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRuleType(),"interface-ip-address"); + Assert.assertEquals(ouptPD.getParameters().get(1).getDescription(),"param2"); + Assert.assertEquals(ouptPD.getParameters().get(1).getType(),"param2 type"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(1).getKeyName(),"address_type"); + Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(1).getKeyValue(),"v4"); + Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getUniqueKeyName(),"address-0"); + Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getUniqueKeyValue(),"0"); + Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getFieldKeyName(),"0"); + + } + + @Test + public void testReadArtifactNegetive() throws IOException { + + String toscaArtifact = getFileContent("tosca/ReadArtifactNegetiveInputTosca.yml"); + ArtifactProcessorImpl artifact = new ArtifactProcessorImpl(); + try { + PropertyDefinition ouptPD = artifact.readArtifact(toscaArtifact); + } catch (ArtifactProcessorException e) { + Assert.assertNotNull(e); + Assert.assertEquals(e.getMessage(),"Invalid input found <> source1 "); + } + } + + private String getFileContent(String fileName) throws IOException + { + ClassLoader classLoader = new TestReadArtifact().getClass().getClassLoader(); + InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); + BufferedReader buf = new BufferedReader(new InputStreamReader(is)); + String line = buf.readLine(); + StringBuilder sb = new StringBuilder(); + + while (line != null) { + sb.append(line).append("\n"); + line = buf.readLine(); + } + String fileString = sb.toString(); + is.close(); + return fileString; + } + +} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/parser/TestPropertyDefinitionNode.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/parser/TestPropertyDefinitionNode.java deleted file mode 100644 index be11384c4..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/parser/TestPropertyDefinitionNode.java +++ /dev/null @@ -1,116 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.parser; - -import static org.junit.Assert.assertEquals; - -import java.io.File; -import java.nio.charset.Charset; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.nio.file.attribute.BasicFileAttributes; -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.TimeUnit; - -import org.apache.commons.io.IOUtils; -import org.junit.Test; -import org.junit.Ignore; -import org.openecomp.sdnc.config.params.ParamsHandlerConstant; -import org.openecomp.sdnc.config.params.data.PropertyDefinition; -import org.openecomp.sdnc.config.params.parser.PropertyDefinitionNode; -import org.openecomp.sdnc.config.params.transformer.ArtificatTransformer; - -import org.onap.ccsdk.sli.core.sli.SvcLogicContext; - -import com.fasterxml.jackson.databind.ObjectMapper; - -public class TestPropertyDefinitionNode { - - @Ignore - public void testProcessMissingParamKeys() throws Exception { - PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); - Map inParams = new HashMap(); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); - - String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_PD_CONTENT, yamlData); - - String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); - - SvcLogicContext ctx = new SvcLogicContext(); - propertyDefinitionNode.processMissingParamKeys(inParams, ctx); - assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); - - } - - @Test - public void testProcessExternalSystemParamKeys() throws Exception { - PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); - Map inParams = new HashMap(); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); - - String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_PD_CONTENT, yamlData); - - String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); - - inParams.put(ParamsHandlerConstant.INPUT_PARAM_SYSTEM_NAME, "SOURCE"); - - SvcLogicContext ctx = new SvcLogicContext(); - propertyDefinitionNode.processExternalSystemParamKeys(inParams, ctx); - assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); -} - - @Test - public void mergeJsonData() throws Exception { - PropertyDefinitionNode propertyDefinitionNode = new PropertyDefinitionNode(); - Map inParams = new HashMap(); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test"); - - String jsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/request-param.json"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_JSON_DATA, jsonData); - - String mergeJsonData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/merge-param.json"), Charset.defaultCharset()); - inParams.put(ParamsHandlerConstant.INPUT_PARAM_MERGE__JSON_DATA, mergeJsonData); - - SvcLogicContext ctx = new SvcLogicContext(); - propertyDefinitionNode.mergeJsonData(inParams, ctx); - assertEquals(ctx.getAttribute("test."+ParamsHandlerConstant.OUTPUT_PARAM_STATUS), ParamsHandlerConstant.OUTPUT_STATUS_SUCCESS); - } - - @Test - public void testArtificatTransformer() throws Exception { - ArtificatTransformer transformer = new ArtificatTransformer(); - String yamlData = IOUtils.toString(TestPropertyDefinitionNode.class.getClassLoader().getResourceAsStream("parser/pd.yaml"), Charset.defaultCharset()); - - PropertyDefinition propertyDefinition = transformer.convertYAMLToPD(yamlData); - String yaml = transformer.convertPDToYaml(propertyDefinition); - } - -} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java deleted file mode 100644 index 33845ddca..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestArtifactProcessor.java +++ /dev/null @@ -1,105 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.transformer.tosca; - -import org.junit.Assert; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; - -import java.io.*; - -public class TestArtifactProcessor{ - @Rule - public TemporaryFolder temporaryFolder = new TemporaryFolder(); - - @Test - public void testArtifactProcessor() throws IOException, ArtifactProcessorException { - - ArtifactProcessor arp = ArtifactProcessorFactory.getArtifactProcessor(); - - String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); - OutputStream outstream=null; - - File tempFile = temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(tempFile); - arp.generateArtifact(pdString,outstream); - outstream.flush(); - outstream.close(); - - String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); - String toscaString = getFileContent(tempFile); - Assert.assertEquals(expectedTosca,toscaString); - } - - @Test - public void testArtifactProcessorWithStringOutput() throws IOException, ArtifactProcessorException { - - ArtifactProcessor arp = ArtifactProcessorFactory.getArtifactProcessor(); - - String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); - OutputStream outstream=null; - - outstream = new ByteArrayOutputStream(); - arp.generateArtifact(pdString,outstream); - outstream.flush(); - outstream.close(); - - String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); - String toscaString = outstream.toString(); - } - - private String getFileContent(String fileName) throws IOException{ - ClassLoader classLoader = new TestArtifactProcessor().getClass().getClassLoader(); - InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } - - private String getFileContent(File file) throws IOException{ - InputStream is = new FileInputStream(file); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } -} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java deleted file mode 100644 index 950180262..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactObject.java +++ /dev/null @@ -1,254 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.transformer.tosca; - -import org.junit.Assert; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.openecomp.sdnc.config.params.data.Parameter; -import org.openecomp.sdnc.config.params.data.PropertyDefinition; -import org.openecomp.sdnc.config.params.data.RequestKey; -import org.openecomp.sdnc.config.params.data.ResponseKey; -import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; - -import java.io.*; -import java.util.ArrayList; -import java.util.List; - -public class TestGenerateArtifactObject -{ - @Rule - public TemporaryFolder temporaryFolder = new TemporaryFolder(); - - @Test - public void testObjectArtifactProcessor() throws IOException, ArtifactProcessorException { - - String expectedTosca="node_types:\n" + - " VNF:\n" + - " derived_from: org.openecomp.genericvnf\n" + - " version: V1\n" + - " description: ''\n" + - " properties:\n" + - " LOCAL_ACCESS_IP_ADDR:\n" + - " type: string\n" + - " required: false\n" + - " default: 0.0.0.0\n" + - " status: SUPPORTED\n" + - " LOCAL_CORE_ALT_IP_ADDR:\n" + - " type: String\n" + - " required: false\n" + - " default: value\n" + - " status: SUPPORTED\n" + - "topology_template:\n" + - " node_templates:\n" + - " VNF_Template:\n" + - " type: VNF\n" + - " properties:\n" + - " LOCAL_ACCESS_IP_ADDR: \n" + - " LOCAL_CORE_ALT_IP_ADDR: \n"; - //Create object - PropertyDefinition pd = new PropertyDefinition(); - pd.setKind("VNF"); - pd.setVersion("V1"); - pd.setParameters(createParameters()); - - //Call ArtifactProcessor - OutputStream outstream=null; - - File toscaFile =temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(toscaFile); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - arp.generateArtifact(pd,outstream); - outstream.flush(); - outstream.close(); - - String toscaString = getFileContent(toscaFile); - Assert.assertEquals(expectedTosca,toscaString); - - } - - @Test - public void testPDpropertiesSetNull() throws IOException, ArtifactProcessorException { - String expectedTosca = "node_types:\n" + - " PropertyDefinition:\n" + - " derived_from: org.openecomp.genericvnf\n" + - " version: V1\n" + - " description: ''\n" + - "topology_template:\n" + - " node_templates:\n" + - " PropertyDefinition_Template:\n" + - " type: PropertyDefinition\n"; - //Create object - PropertyDefinition pd = new PropertyDefinition(); - pd.setKind("PropertyDefinition"); - pd.setVersion("V1"); - OutputStream outstream=null; - - File toscaFile =temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(toscaFile); - - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - arp.generateArtifact(pd,outstream); - outstream.flush(); - outstream.close(); - - String toscaString = getFileContent(toscaFile); - Assert.assertEquals(expectedTosca,toscaString); - } - - @Test - public void testArtifactGeneratorInvalidStream() throws IOException { - String expectedMsg = "java.io.IOException: Stream Closed"; - PropertyDefinition pd = new PropertyDefinition(); - pd.setKind("VNF"); - pd.setVersion("V1"); - pd.setParameters(createParameters()); - - //Call ArtifactProcessor - OutputStream outstream=null; - try { - File toscaFile =temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(toscaFile); - outstream.close(); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - arp.generateArtifact(pd,outstream); - Assert.fail(); - } - catch (ArtifactProcessorException e) - { - Assert.assertEquals(expectedMsg,e.getMessage()); - } - } - - private List createParameters() - { - //Create single Parameter object 1 - Parameter singleParameter1 = new Parameter(); - singleParameter1.setName("LOCAL_ACCESS_IP_ADDR"); - singleParameter1.setRequired(false); - singleParameter1.setSource("source"); - singleParameter1.setDefaultValue("0.0.0.0"); - singleParameter1.setRuleType("myRule1"); - singleParameter1.setRequestKeys(createRequestKeys()); - - //Create single Parameter object 2 - Parameter singleParameter2 = new Parameter(); - singleParameter2.setName("LOCAL_CORE_ALT_IP_ADDR"); - singleParameter2.setType("String"); - singleParameter2.setRequired(false); - singleParameter2.setSource("source"); - singleParameter2.setDefaultValue("value"); - singleParameter2.setRuleType("myRule2"); - singleParameter2.setResponseKeys(createResponseKeys()); - - //Add the Parameter objects to the List - List parameterList = new ArrayList(); - parameterList.add(singleParameter1); - parameterList.add(singleParameter2); - return parameterList; - } - - private List createRequestKeys() - { - //Create RequestKey object 1 - RequestKey requestKey1 = new RequestKey(); - requestKey1.setKeyName("class-type"); - requestKey1.setKeyValue("interface-ip-address"); - - //Create RequestKey object 2 - RequestKey requestKey2 = new RequestKey(); - requestKey2.setKeyName("address_fqdn"); - requestKey2.setKeyValue("someVal"); - - //Create RequestKey object 3 - RequestKey requestKey3 = new RequestKey(); - requestKey3.setKeyName("address_type"); - requestKey3.setKeyValue("v4"); - - //Add the RequestKey Objects to the List - List requestKeyList = new ArrayList(); - requestKeyList.add(requestKey1); - requestKeyList.add(requestKey2); - requestKeyList.add(requestKey3); - return requestKeyList; - } - - private List createResponseKeys() - { - //Create RequestKey object 1 - ResponseKey responseKey1 = new ResponseKey(); - - responseKey1.setUniqueKeyName("name1"); - responseKey1.setUniqueKeyValue("value1"); - responseKey1.setFieldKeyName("field1"); - - //Add the RequestKey Objects to the List - List responseKeyList = new ArrayList(); - responseKeyList.add(responseKey1); - - return responseKeyList; - } - - private Parameter createParameter() - { - Parameter singleParameter1 = new Parameter(); - singleParameter1.setName("LOCAL_ACCESS_IP_ADDR"); - singleParameter1.setRequired(false); - singleParameter1.setSource("source"); - singleParameter1.setDefaultValue("0.0.0.0"); - singleParameter1.setRequestKeys(createRequestKeys()); - singleParameter1.setResponseKeys(createResponseKeys()); - return singleParameter1; - } - - @Test(expected =Exception.class) - public void testPDnull() throws IOException, ArtifactProcessorException { - PropertyDefinition pd = null; - OutputStream outstream=null; - - outstream = new FileOutputStream(".\\TestTosca.yml"); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - arp.generateArtifact(pd,outstream); - outstream.flush(); - outstream.close(); - } - - private String getFileContent(File file) throws IOException - { - InputStream is = new FileInputStream(file); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } -} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java deleted file mode 100644 index 4ffbe5298..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestGenerateArtifactString.java +++ /dev/null @@ -1,155 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.transformer.tosca; - -import org.junit.Assert; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; - -import java.io.*; -import java.net.URL; - -public class TestGenerateArtifactString{ - - @Rule - public TemporaryFolder temporaryFolder = new TemporaryFolder(); - - @Test - public void testStringArtifactGenerator() throws IOException, ArtifactProcessorException { - - String pdString = getFileContent("tosca/ExamplePropertyDefinition.yml"); - OutputStream outstream=null; - - File tempFile = temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(tempFile); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - arp.generateArtifact(pdString,outstream); - outstream.flush(); - outstream.close(); - - String expectedTosca = getFileContent("tosca/ExpectedTosca.yml"); - String toscaString = getFileContent(tempFile); - Assert.assertEquals(expectedTosca,toscaString); - - } - - @Test - public void testArtifactGeneratorWithParameterNameBlank() throws IOException, ArtifactProcessorException { - - String pdString = getFileContent("tosca/ExamplePropertyDefinition2.yml"); - OutputStream outstream=null; - String expectedMsg ="Parameter name is empty,null or contains whitespace"; - - File tempFile = temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(tempFile); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - try { - arp.generateArtifact(pdString, outstream); - } - catch (ArtifactProcessorException e) - { - Assert.assertEquals(expectedMsg,e.getMessage()); - } - outstream.flush(); - outstream.close(); - } - - @Test - public void testArtifactGeneratorWithParameterNameNull() throws IOException, ArtifactProcessorException { - - String pdString = getFileContent("tosca/ExamplePropertyDefinition3.yml"); - OutputStream outstream=null; - String expectedMsg ="Parameter name is empty,null or contains whitespace"; - - File tempFile = temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(tempFile); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - try { - arp.generateArtifact(pdString, outstream); - } - catch (ArtifactProcessorException e) - { - Assert.assertEquals(expectedMsg,e.getMessage()); - } - outstream.flush(); - outstream.close(); - } - - @Test - public void testArtifactGeneratorWithKindNull() throws IOException, ArtifactProcessorException { - - String pdString = getFileContent("tosca/ExamplePropertyDefinition4.yml"); - OutputStream outstream=null; - String expectedMsg ="Kind in PropertyDefinition is blank or null"; - - File tempFile = temporaryFolder.newFile("TestTosca.yml"); - outstream = new FileOutputStream(tempFile); - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - try { - arp.generateArtifact(pdString, outstream); - } - catch (ArtifactProcessorException e) - { - Assert.assertEquals(expectedMsg,e.getMessage()); - } - outstream.flush(); - outstream.close(); - } - - private String getFileContent(String fileName) throws IOException - { - ClassLoader classLoader = new TestGenerateArtifactString().getClass().getClassLoader(); - InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } - - private String getFileContent(File file) throws IOException - { - InputStream is = new FileInputStream(file); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } -} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java deleted file mode 100644 index 3eb231ae9..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestPropertyQueryString.java +++ /dev/null @@ -1,171 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.transformer.tosca; - -import org.junit.Assert; -import org.junit.Test; -import org.openecomp.sdnc.config.params.data.RequestKey; -import org.openecomp.sdnc.config.params.data.ResponseKey; - -import java.util.ArrayList; -import java.util.List; - -public class TestPropertyQueryString -{ - @Test - public void testBuildResponseKeys() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - String properties= arp.buildResponseKeyExpression(createResponseKeys()); - Assert.assertEquals("",properties); - } - - @Test - public void testBuildRequestKeys() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - String properties= arp.buildRequestKeyExpression(createRequestKeys()); - Assert.assertEquals("",properties); - } - - @Test - public void testEncoding() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - - String expected1 = "<class-type>"; - String encoded1 = arp.encode(""); - Assert.assertEquals(expected1,encoded1); - - String expected2 = "<<<metallica<>iron_maiden>>>"; - String encoded2 = arp.encode("<<iron_maiden>>>"); - Assert.assertEquals(expected2,encoded2); - - String expected3 = "band-list:metallica,ironmaiden"; - String encoded3 = arp.encode("band-list:metallica,ironmaiden"); - Assert.assertEquals(expected3,encoded3); - - String expected4 = "motorhead=lemmy"; - String encoded4 = arp.encode("motorhead=lemmy"); - Assert.assertEquals(expected4,encoded4); - - String expected5 = "DreamTheater"; - String encoded5 = arp.encode(" DreamTheater "); - Assert.assertEquals(expected5,encoded5); - } - - @Test - public void testBuildRuleType() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - String input = "IPV4"; - String expected = ""; - Assert.assertEquals(expected,arp.buildRuleType(input)); - } - - @Test - public void testRuleTypeSetNull() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - String expected = ""; - Assert.assertEquals(expected,arp.buildRuleType(null)); - } - - @Test - public void testBuildRequestKeysWithKeyNull() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - List requestKeyList = new ArrayList(); - requestKeyList.add(null); - String properties= arp.buildRequestKeyExpression(requestKeyList); - Assert.assertEquals("",properties); - } - - @Test - public void testBuildResponseKeysWithKeyNull() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - List responseKeyList = new ArrayList(); - responseKeyList.add(null); - String properties= arp.buildResponseKeyExpression(responseKeyList); - Assert.assertEquals("",properties); - } - - @Test - public void testBuildSourceSystem() - { - ArtifactProcessorImpl arp = new ArtifactProcessorImpl(); - Assert.assertEquals("",arp.buildSourceSystem("source")); - } - - //@Test - private List createRequestKeys() - { - //Create RequestKey object 1 - RequestKey requestKey1 = new RequestKey(); - requestKey1.setKeyName("class-type"); - requestKey1.setKeyValue("interface-ip-address"); - - //Create RequestKey object 2 - RequestKey requestKey2 = new RequestKey(); - requestKey2.setKeyName("address_fqdn"); - requestKey2.setKeyValue("00000000000000"); - - //Create RequestKey object 3 - RequestKey requestKey3 = new RequestKey(); - requestKey3.setKeyName("address_type"); - requestKey3.setKeyValue("v4"); - - //Add the RequestKey Objects to the List - List requestKeyList = new ArrayList(); - requestKeyList.add(requestKey1); - requestKeyList.add(requestKey2); - requestKeyList.add(requestKey3); - return requestKeyList; - } - - //@Test - private List createResponseKeys() - { - //Create RequestKey object 1 - ResponseKey responseKey1 = new ResponseKey(); - - responseKey1.setUniqueKeyName("address-fqdn"); - responseKey1.setUniqueKeyValue("0000000000000"); - responseKey1.setFieldKeyName("ipaddress-v4"); - - ResponseKey responseKey2 = new ResponseKey(); - responseKey2.setUniqueKeyName("key2"); - responseKey2.setUniqueKeyValue("value2"); - responseKey2.setFieldKeyName("field2"); - - //Add the RequestKey Objects to the List - List responseKeyList = new ArrayList(); - responseKeyList.add(responseKey1); - responseKeyList.add(responseKey2); - - return responseKeyList; - } -} diff --git a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestReadArtifact.java b/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestReadArtifact.java deleted file mode 100644 index 1b65a21f6..000000000 --- a/appc-config/appc-config-params/provider/src/test/java/org/openecomp/sdnc/config/params/transformer/tosca/TestReadArtifact.java +++ /dev/null @@ -1,103 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdnc.config.params.transformer.tosca; - -import org.junit.Assert; -import org.junit.Test; -import org.openecomp.sdnc.config.params.data.PropertyDefinition; -import org.openecomp.sdnc.config.params.transformer.tosca.exceptions.ArtifactProcessorException; - -import java.io.*; - -public class TestReadArtifact { - @Test - public void testReadArtifactPositive() throws ArtifactProcessorException, IOException { - - String toscaArtifact = getFileContent("tosca/ReadArtifactPositiveInputTosca.yml"); - ArtifactProcessorImpl artifact = new ArtifactProcessorImpl(); - PropertyDefinition ouptPD = artifact.readArtifact(toscaArtifact); - Assert.assertEquals(ouptPD.getKind(),"Property Definition"); - Assert.assertEquals(ouptPD.getVersion(),"V1"); - - Assert.assertEquals(ouptPD.getParameters().get(0).getDefaultValue(),"0.0.0.0"); - Assert.assertEquals(ouptPD.getParameters().get(0).getName(),"abc"); - Assert.assertEquals(ouptPD.getParameters().get(0).getSource(),"source"); - Assert.assertEquals(ouptPD.getParameters().get(0).getRuleType(),"interface-ip-address"); - Assert.assertEquals(ouptPD.getParameters().get(0).getDescription(),"param_desc"); - Assert.assertEquals(ouptPD.getParameters().get(0).getType(),"param1_type"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); - Assert.assertEquals(ouptPD.getParameters().get(0).getResponseKeys().get(0).getUniqueKeyName(),"address-0"); - Assert.assertEquals(ouptPD.getParameters().get(0).getResponseKeys().get(0).getFieldKeyName(),"0"); - - Assert.assertEquals(ouptPD.getParameters().get(1).getDefaultValue(),"value"); - Assert.assertEquals(ouptPD.getParameters().get(1).getName(),"param 2"); - Assert.assertEquals(ouptPD.getParameters().get(1).getSource(),"source"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRuleType(),"interface-ip-address"); - Assert.assertEquals(ouptPD.getParameters().get(1).getDescription(),"param2"); - Assert.assertEquals(ouptPD.getParameters().get(1).getType(),"param2 type"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyName(),"address_fqdn"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(0).getKeyValue(),"0"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(1).getKeyName(),"address_type"); - Assert.assertEquals(ouptPD.getParameters().get(1).getRequestKeys().get(1).getKeyValue(),"v4"); - Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getUniqueKeyName(),"address-0"); - Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getUniqueKeyValue(),"0"); - Assert.assertEquals(ouptPD.getParameters().get(1).getResponseKeys().get(0).getFieldKeyName(),"0"); - - } - - @Test - public void testReadArtifactNegetive() throws IOException { - - String toscaArtifact = getFileContent("tosca/ReadArtifactNegetiveInputTosca.yml"); - ArtifactProcessorImpl artifact = new ArtifactProcessorImpl(); - try { - PropertyDefinition ouptPD = artifact.readArtifact(toscaArtifact); - } catch (ArtifactProcessorException e) { - Assert.assertNotNull(e); - Assert.assertEquals(e.getMessage(),"Invalid input found <> source1 "); - } - } - - private String getFileContent(String fileName) throws IOException - { - ClassLoader classLoader = new TestReadArtifact().getClass().getClassLoader(); - InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile()); - BufferedReader buf = new BufferedReader(new InputStreamReader(is)); - String line = buf.readLine(); - StringBuilder sb = new StringBuilder(); - - while (line != null) { - sb.append(line).append("\n"); - line = buf.readLine(); - } - String fileString = sb.toString(); - is.close(); - return fileString; - } - -} -- cgit 1.2.3-korg