From 8ff60789e080dd99c604d31a6e754be164fba11e Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Mon, 15 Apr 2019 00:05:05 -0700 Subject: add artifacts support in TOSCA exported yml file Change-Id: I56f8a6a1ce758876e83a7ee8318b79644ae7d5cb Issue-ID: SDC-1952 Signed-off-by: Liang Ding --- .../impl/utils/YamlTemplateParsingHandlerTest.java | 80 ++++++++++++++++++++++ .../sdc/be/tosca/ToscaExportHandlerTest.java | 17 +++++ 2 files changed, 97 insertions(+) (limited to 'catalog-be/src/test') diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/utils/YamlTemplateParsingHandlerTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/utils/YamlTemplateParsingHandlerTest.java index 347c95217d..19d1a17e84 100644 --- a/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/utils/YamlTemplateParsingHandlerTest.java +++ b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/utils/YamlTemplateParsingHandlerTest.java @@ -20,6 +20,8 @@ package org.openecomp.sdc.be.components.impl.utils; +import mockit.Deencapsulation; +import org.apache.commons.collections.MapUtils; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertNotNull; import static org.mockito.ArgumentMatchers.eq; @@ -31,10 +33,12 @@ import java.util.*; import java.util.stream.Collectors; import org.assertj.core.util.Lists; +import org.junit.Assert; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; @@ -49,6 +53,14 @@ import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition; import org.openecomp.sdc.be.model.*; import org.openecomp.sdc.be.model.operations.impl.AnnotationTypeOperations; +import java.io.File; +import java.io.IOException; +import java.io.StringReader; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +import static org.openecomp.sdc.be.utils.TypeUtils.ToscaTagNamesEnum.*; @RunWith(MockitoJUnitRunner.class) public class YamlTemplateParsingHandlerTest { @@ -87,6 +99,9 @@ public class YamlTemplateParsingHandlerTest { private static final String MAIN_GROUP_NAME = "x_group"; private static final String NESTED_GROUP_NAME = "nested_mg_vepdg_group"; + @InjectMocks + YamlTemplateParsingHandler testSubject; + @BeforeClass() public static void prepareData() throws IOException, URISyntaxException { csar = ZipUtil.readData(CSAR_FILE_PATH); @@ -249,4 +264,69 @@ public class YamlTemplateParsingHandlerTest { return property; } + @Test + public void testSetArtifacts() throws Exception { + UploadComponentInstanceInfo nodeTemplateInfo = new UploadComponentInstanceInfo(); + Map nodeTemplateJsonMap = new HashMap<>(); + Map nodeMap = new HashMap<>(); + nodeMap.put("name","test_name"); + nodeMap.put("type","test_type"); + nodeTemplateJsonMap.put(ARTIFACTS.getElementName(), nodeMap); + Deencapsulation.invoke(testSubject, "setArtifacts", nodeTemplateInfo, nodeTemplateJsonMap); + Assert.assertTrue(nodeTemplateInfo.getArtifacts() != null); + } + + @Test + public void testCreateArtifactsModuleFromYaml() throws Exception { + Map>> nodeTemplateJsonMap = new HashMap<>(); + Map> map0 = new HashMap<>(); + Map map1 = new HashMap<>(); + map1.put("file", "test_file"); + map1.put("type", "test_type"); + map0.put("test_art", map1); + nodeTemplateJsonMap.put(ARTIFACTS.getElementName(), map0); + Map> result; + result = Deencapsulation.invoke(testSubject, "createArtifactsModuleFromYaml", nodeTemplateJsonMap); + Assert.assertTrue(MapUtils.isNotEmpty(result)); + Assert.assertTrue(MapUtils.isNotEmpty(result.get(ARTIFACTS.getElementName()))); + Assert.assertTrue(result.get(ARTIFACTS.getElementName()).get("test_art").getFile().equals("test_file")); + Assert.assertTrue(result.get(ARTIFACTS.getElementName()).get("test_art").getType().equals("test_type")); + } + + @Test + public void testAddModuleNodeTemplateArtifacts() throws Exception { + Map> result = new HashMap<>(); + Map map1 = new HashMap<>(); + map1.put("file", "test_file"); + map1.put("type", "test_type"); + Deencapsulation.invoke(testSubject, "addModuleNodeTemplateArtifacts", result, map1, "test_art"); + Assert.assertTrue(MapUtils.isNotEmpty(result)); + Assert.assertTrue(MapUtils.isNotEmpty(result.get(ARTIFACTS.getElementName()))); + Assert.assertTrue(result.get(ARTIFACTS.getElementName()).get("test_art").getFile().equals("test_file")); + Assert.assertTrue(result.get(ARTIFACTS.getElementName()).get("test_art").getType().equals("test_type")); + } + + @Test + public void testBuildModuleNodeTemplateArtifact() throws Exception { + Map map1 = new HashMap<>(); + map1.put("file", "test_file"); + map1.put("type", "test_type"); + UploadArtifactInfo result; + result = Deencapsulation.invoke(testSubject, "buildModuleNodeTemplateArtifact", map1); + Assert.assertTrue(result != null); + Assert.assertTrue(result.getFile().equals("test_file")); + Assert.assertTrue(result.getType().equals("test_type")); + } + + @Test + public void testFillArtifact() throws Exception { + Map map1 = new HashMap<>(); + map1.put("file", "test_file"); + map1.put("type", "test_type"); + UploadArtifactInfo result = new UploadArtifactInfo(); + Deencapsulation.invoke(testSubject, "fillArtifact", result, map1); + Assert.assertTrue(result != null); + Assert.assertTrue(result.getFile().equals("test_file")); + Assert.assertTrue(result.getType().equals("test_type")); + } } diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/ToscaExportHandlerTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/ToscaExportHandlerTest.java index f319643fd6..5521f8683b 100644 --- a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/ToscaExportHandlerTest.java +++ b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/ToscaExportHandlerTest.java @@ -29,6 +29,7 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; import mockit.Deencapsulation; +import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.tuple.ImmutablePair; import org.apache.commons.lang3.tuple.Triple; import org.junit.Assert; @@ -47,6 +48,7 @@ import org.openecomp.sdc.be.datatypes.elements.ForwardingPathElementDataDefiniti import org.openecomp.sdc.be.datatypes.elements.ListDataDefinition; import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition; import org.openecomp.sdc.be.datatypes.elements.RequirementDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.ToscaArtifactDataDefinition; import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; import org.openecomp.sdc.be.datatypes.enums.OriginTypeEnum; import org.openecomp.sdc.be.model.ArtifactDefinition; @@ -81,6 +83,7 @@ import org.openecomp.sdc.be.tosca.model.ToscaNodeTemplate; import org.openecomp.sdc.be.tosca.model.ToscaNodeType; import org.openecomp.sdc.be.tosca.model.ToscaProperty; import org.openecomp.sdc.be.tosca.model.ToscaTemplate; +import org.openecomp.sdc.be.tosca.model.ToscaTemplateArtifact; import org.openecomp.sdc.be.tosca.model.ToscaTemplateRequirement; import org.openecomp.sdc.be.tosca.model.ToscaTopolgyTemplate; import org.openecomp.sdc.be.tosca.utils.InputConverter; @@ -1349,4 +1352,18 @@ public class ToscaExportHandlerTest extends BeConfDependentTest { // default test result = Deencapsulation.invoke(testSubject, "convertCapabilities", component, nodeType, dataTypes); } + + @Test + public void testConvertToNodeTemplateArtifacts() throws Exception { + Map container = new HashMap<>(); + ToscaArtifactDataDefinition art = new ToscaArtifactDataDefinition(); + art.setFile("test_file"); + art.setType("test_type"); + Map result; + container.put("test_art", art); + result = Deencapsulation.invoke(testSubject, "convertToNodeTemplateArtifacts", container); + Assert.assertTrue(MapUtils.isNotEmpty(result)); + Assert.assertTrue(result.get("test_art").getFile().equals("test_file")); + Assert.assertTrue(result.get("test_art").getType().equals("test_type")); + } } -- cgit 1.2.3-korg