summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-tosca-lib/src/test/java
diff options
context:
space:
mode:
authorshiria <shiri.amichai@amdocs.com>2018-07-02 11:10:56 +0300
committerAvi Gaffa <avi.gaffa@amdocs.com>2018-07-02 09:10:51 +0000
commit6d7284b5bcbbf6f57b843c5f30a50e9387b5ece8 (patch)
treea3e1b2e8af332d1472e81392f421e59f4d0ef37d /openecomp-be/lib/openecomp-tosca-lib/src/test/java
parent82fa3004cc68ef367e4f210900619743eb9abc95 (diff)
Fix getFlat for datatype
Fix getFlat when we driven from primitive type like string Adding support for service filter as tosca extension Issue-ID: SDC-1455 Change-Id: I57f05af13b394239ca55b71a946d69f56675bf19 Signed-off-by: shiria <shiri.amichai@amdocs.com>
Diffstat (limited to 'openecomp-be/lib/openecomp-tosca-lib/src/test/java')
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java37
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java71
2 files changed, 69 insertions, 39 deletions
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
index 6fb10ac1e0..3938d8f427 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
@@ -60,7 +60,11 @@ import org.openecomp.sdc.tosca.services.ToscaConstants;
public class ToscaModelTest {
+ public static final String FIRST_NODE_TEMPLATE = "firstNodeTemplate";
+ public static final String REQ1 = "req1";
+ public static final String REQ2 = "req2";
private YamlUtil yamlUtil = new YamlUtil();
+ private ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
private static final String INTERFACE_ID = "inter_1";
private static final String NODE_TEMPLATE_ID = "firstNodeTemplate";
private static final String NODE_TYPE_ID = "compute_node_type";
@@ -77,6 +81,7 @@ public class ToscaModelTest {
private static final String PRIMARY_IMPL = "myImpl.yaml";
private static final String DEPENDENCY_NAME = "script1.sh";
private static final String STRING_TYPE = "string";
+ private static final String ST_WITH_SERVICE_FILTER = "/serviceTemplateWithServiceFilter.yaml";
@Test
public void testServiceTemplateJavaToYaml() {
@@ -254,8 +259,8 @@ public class ToscaModelTest {
reqAssignment2.setRelationship("relationB");
Map<String, RequirementAssignment> nodeTemplateRequirement1 = new HashMap<>();
Map<String, RequirementAssignment> nodeTemplateRequirement2 = new HashMap<>();
- nodeTemplateRequirement1.put("req1", reqAssignment1);
- nodeTemplateRequirement2.put("req2", reqAssignment2);
+ nodeTemplateRequirement1.put(REQ1, reqAssignment1);
+ nodeTemplateRequirement2.put(REQ2, reqAssignment2);
nodeTemplate.setRequirements(new ArrayList<>());
nodeTemplate.getRequirements().add(nodeTemplateRequirement1);
nodeTemplate.getRequirements().add(nodeTemplateRequirement2);
@@ -419,12 +424,40 @@ public class ToscaModelTest {
}
}
+ @Test
+ public void testServiceFilter() throws IOException {
+ ServiceTemplate serviceTemplateWithServiceFilter = getServiceTemplateExt(BASE_DIR + ST_WITH_SERVICE_FILTER);
+
+ NodeTemplate firstNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplateWithServiceFilter, FIRST_NODE_TEMPLATE);
+ Map<String, RequirementAssignment> nodeTemplateRequirements =
+ DataModelUtil.getNodeTemplateRequirements(firstNodeTemplate);
+
+ Object req1 = nodeTemplateRequirements.get(REQ1);
+ Assert.assertEquals(true, req1 instanceof org.onap.sdc.tosca.datatypes.model.extension.RequirementAssignment);
+ Assert.assertNotNull(((org.onap.sdc.tosca.datatypes.model.extension.RequirementAssignment)req1).getService_filter());
+
+ Object req2 = nodeTemplateRequirements.get(REQ2);
+ Assert.assertEquals(true, req2 instanceof org.onap.sdc.tosca.datatypes.model.extension.RequirementAssignment);
+ Assert.assertNotNull(((org.onap.sdc.tosca.datatypes.model.extension.RequirementAssignment)req2).getService_filter());
+
+ String serviceTemplateYaml = toscaExtensionYamlUtil.objectToYaml(serviceTemplateWithServiceFilter);
+ Assert.assertNotNull(serviceTemplateYaml);
+
+ }
+
private ServiceTemplate getServiceTemplate(String inputPath) throws IOException {
try (InputStream yamlFile = yamlUtil.loadYamlFileIs(inputPath)) {
return yamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
}
}
+ private ServiceTemplate getServiceTemplateExt(String inputPath) throws IOException {
+ try (InputStream yamlFile = toscaExtensionYamlUtil.loadYamlFileIs(inputPath)) {
+ return toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+ }
+ }
+
private InterfaceType createInterfaceType() {
OperationDefinition operationDefinition = createOperationDefinition();
InterfaceType interfaceType = new InterfaceType();
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
index 71647a68a2..d9e77e1f84 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
@@ -16,57 +16,30 @@
package org.openecomp.sdc.tosca.services.impl;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Rule;
-import org.junit.Test;
+import org.junit.*;
import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.runners.MockitoJUnitRunner;
-import org.onap.sdc.tosca.datatypes.model.OperationDefinitionType;
+import org.onap.sdc.tosca.datatypes.model.*;
+import org.onap.sdc.tosca.services.ToscaExtensionYamlUtil;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.tosca.TestUtil;
import org.openecomp.sdc.tosca.datatypes.ToscaElementTypes;
import org.openecomp.sdc.tosca.datatypes.ToscaFlatData;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
-import org.onap.sdc.tosca.datatypes.model.NodeType;
-import org.onap.sdc.tosca.datatypes.model.ParameterDefinition;
-import org.onap.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.onap.sdc.tosca.datatypes.model.RequirementAssignment;
-import org.onap.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.onap.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.onap.sdc.tosca.datatypes.model.SubstitutionMapping;
-import org.onap.sdc.tosca.datatypes.model.TopologyTemplate;
-import org.onap.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.onap.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.onap.sdc.tosca.datatypes.model.InterfaceType;
-import org.onap.sdc.tosca.datatypes.model.InterfaceDefinitionType;
-import org.onap.sdc.tosca.datatypes.model.DataType;
import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.onap.sdc.tosca.datatypes.model.DefinitionOfDataType;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
import java.io.IOException;
+import java.io.InputStream;
+import java.util.*;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
import static org.mockito.Mockito.when;
-import static org.junit.Assert.assertEquals;
-
-import org.onap.sdc.tosca.services.ToscaExtensionYamlUtil;
@RunWith(MockitoJUnitRunner.class)
@@ -249,6 +222,32 @@ public class ToscaAnalyzerServiceImplTest {
}
@Test
+ public void testGetFlatEntityDataTypeDerivedFromPrimitive() throws Exception {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ try (InputStream yamlFile = toscaExtensionYamlUtil.loadYamlFileIs(
+ "/mock/analyzerService/ServiceTemplateDatatypeFlatTest.yaml")) {
+
+ ServiceTemplate serviceTemplateFromYaml =
+ toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+
+ ToscaFlatData flatData = toscaAnalyzerService.getFlatEntity(ToscaElementTypes.DATA_TYPE,
+ "org.openecomp.datatypes.heat.network.MyNewString", serviceTemplateFromYaml, toscaServiceModel);
+
+ Assert.assertNotNull(flatData);
+ Assert.assertNotNull(flatData.getFlatEntity());
+ DataType flatEntity = (DataType) flatData.getFlatEntity();
+ Assert.assertEquals("org.openecomp.datatypes.heat.network.MyString", flatEntity.getDerived_from());
+ Assert.assertEquals(2, flatEntity.getConstraints().size());
+ Assert.assertNotNull(flatEntity.getConstraints().get(0).getValid_values());
+ Assert.assertNotNull(flatEntity.getConstraints().get(1).getMax_length());
+
+ List<String> inheritanceHierarchyType = flatData.getInheritanceHierarchyType();
+ Assert.assertNotNull(inheritanceHierarchyType);
+ Assert.assertEquals(2, inheritanceHierarchyType.size());
+ }
+ }
+
+ @Test
public void testCalculateExposedRequirements() throws Exception {
RequirementDefinition rd = new RequirementDefinition();
rd.setCapability("tosca.capabilities.Node");
@@ -360,8 +359,7 @@ public class ToscaAnalyzerServiceImplTest {
ra.setNode("server_cmaui");
ra.setRelationship("tosca.relationships.network.BindsTo");
- NodeTemplate port0 =
- serviceTemplateFromYaml.getTopology_template().getNode_templates().get("cmaui_port_0");
+ NodeTemplate port0 = serviceTemplateFromYaml.getTopology_template().getNode_templates().get("cmaui_port_0");
//Test With Empty requirementId
Assert.assertEquals(false, toscaAnalyzerService.isRequirementExistInNodeTemplate(port0, "", ra));
@@ -386,8 +384,7 @@ public class ToscaAnalyzerServiceImplTest {
ServiceTemplate serviceTemplateFromYaml =
toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
- NodeTemplate port0 =
- serviceTemplateFromYaml.getTopology_template().getNode_templates().get("cmaui_port_0");
+ NodeTemplate port0 = serviceTemplateFromYaml.getTopology_template().getNode_templates().get("cmaui_port_0");
List<RequirementAssignment> reqList =
toscaAnalyzerService.getRequirements(port0, ToscaConstants.BINDING_REQUIREMENT_ID);
assertEquals(1, reqList.size());