diff options
Diffstat (limited to 'catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java')
-rw-r--r-- | catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java | 235 |
1 files changed, 195 insertions, 40 deletions
diff --git a/catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java b/catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java index 71d54bca73..971ebcca2b 100644 --- a/catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java +++ b/catalog-model/src/test/java/org/openecomp/sdc/be/model/jsontitan/operations/NodeTemplateOperationTest.java @@ -5,8 +5,13 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.when; import java.util.HashMap; +import java.util.List; import java.util.Map; +import java.util.function.BiPredicate; +import org.apache.commons.lang3.tuple.ImmutablePair; +import org.apache.tinkerpop.gremlin.structure.T; +import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; import org.mockito.Mockito; @@ -14,22 +19,47 @@ import org.openecomp.sdc.be.dao.jsongraph.GraphVertex; import org.openecomp.sdc.be.dao.jsongraph.TitanDao; import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum; import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum; +import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum; import org.openecomp.sdc.be.dao.titan.TitanOperationStatus; +import org.openecomp.sdc.be.datatypes.elements.ArtifactDataDefinition; import org.openecomp.sdc.be.datatypes.elements.CapabilityDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.ComponentInstanceDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.CompositionDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.ListCapabilityDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.ListRequirementDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.MapArtifactDataDefinition; +import org.openecomp.sdc.be.datatypes.elements.MapCapabiltyProperty; import org.openecomp.sdc.be.datatypes.elements.MapListCapabiltyDataDefinition; import org.openecomp.sdc.be.datatypes.elements.MapListRequirementDataDefinition; import org.openecomp.sdc.be.datatypes.elements.RequirementDataDefinition; +import org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields; +import org.openecomp.sdc.be.datatypes.tosca.ToscaDataDefinition; +import org.openecomp.sdc.be.model.ArtifactDefinition; import org.openecomp.sdc.be.model.CapabilityRequirementRelationship; +import org.openecomp.sdc.be.model.Component; +import org.openecomp.sdc.be.model.ComponentInstance; +import org.openecomp.sdc.be.model.ComponentInstanceInput; +import org.openecomp.sdc.be.model.ComponentInstanceProperty; +import org.openecomp.sdc.be.model.ComponentParametersView; +import org.openecomp.sdc.be.model.GroupDefinition; +import org.openecomp.sdc.be.model.GroupInstance; import org.openecomp.sdc.be.model.ModelTestBase; import org.openecomp.sdc.be.model.RelationshipImpl; import org.openecomp.sdc.be.model.RelationshipInfo; import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; +import org.openecomp.sdc.be.model.Resource; +import org.openecomp.sdc.be.model.Service; +import org.openecomp.sdc.be.model.User; +import org.openecomp.sdc.be.model.jsontitan.datamodel.TopologyTemplate; +import org.openecomp.sdc.be.model.jsontitan.datamodel.ToscaElement; import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus; +import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum; + import com.google.common.collect.Lists; import fj.data.Either; -public class NodeTemplateOperationTest extends ModelTestBase{ +public class NodeTemplateOperationTest extends ModelTestBase { private final static String COMPONENT_ID = "componentId"; private final static String TO_INSTANCE_ID = "toInstanceId"; @@ -42,16 +72,16 @@ public class NodeTemplateOperationTest extends ModelTestBase{ private final static String REQUIREMENT_UID = "requirementUid"; private final static String REQUIREMENT_NAME = "requirementName"; private final static String RELATIONSHIP_TYPE = "relationshipType"; - + private static Map<String, MapListCapabiltyDataDefinition> fulfilledCapability; private static Map<String, MapListRequirementDataDefinition> fulfilledRequirement; private static CapabilityDataDefinition capability; private static RequirementDataDefinition requirement; private static RequirementCapabilityRelDef relation; - + private static TitanDao titanDao; private static NodeTemplateOperation operation; - + @BeforeClass public static void setup() { init(); @@ -60,7 +90,7 @@ public class NodeTemplateOperationTest extends ModelTestBase{ operation.setTitanDao(titanDao); buildDataDefinition(); } - + private static void buildDataDefinition() { buildCapabiltyDataDefinition(); buildRequirementDataDefinition(); @@ -68,68 +98,76 @@ public class NodeTemplateOperationTest extends ModelTestBase{ } @Test - public void testGetFulfilledCapabilityByRelationSuccess(){ + public void testGetFulfilledCapabilityByRelationSuccess() { GraphVertex vertex = Mockito.mock(GraphVertex.class); Either<GraphVertex, TitanOperationStatus> vertexRes = Either.left(vertex); when(titanDao.getVertexById(eq(COMPONENT_ID), eq(JsonParseFlagEnum.ParseAll))).thenReturn(vertexRes); - + GraphVertex dataVertex = new GraphVertex(); dataVertex.setJson(fulfilledCapability); Either<GraphVertex, TitanOperationStatus> childVertexRes = Either.left(dataVertex); - when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_CAPABILITIES), eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); - Either<CapabilityDataDefinition, StorageOperationStatus> result = operation.getFulfilledCapabilityByRelation(COMPONENT_ID, TO_INSTANCE_ID, relation, (rel, cap)->isBelongingCapability(rel, cap)); + when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_CAPABILITIES), + eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); + Either<CapabilityDataDefinition, StorageOperationStatus> result = operation.getFulfilledCapabilityByRelation( + COMPONENT_ID, TO_INSTANCE_ID, relation, (rel, cap) -> isBelongingCapability(rel, cap)); assertTrue(result.isLeft()); assertTrue(result.left().value().equals(capability)); } - + @Test - public void testGetFulfilledRequirementByRelationSuccess(){ + public void testGetFulfilledRequirementByRelationSuccess() { GraphVertex vertex = Mockito.mock(GraphVertex.class); Either<GraphVertex, TitanOperationStatus> vertexRes = Either.left(vertex); when(titanDao.getVertexById(eq(COMPONENT_ID), eq(JsonParseFlagEnum.ParseAll))).thenReturn(vertexRes); - + GraphVertex dataVertex = new GraphVertex(); dataVertex.setJson(fulfilledRequirement); Either<GraphVertex, TitanOperationStatus> childVertexRes = Either.left(dataVertex); - when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_REQUIREMENTS), eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); - Either<RequirementDataDefinition, StorageOperationStatus> result = operation.getFulfilledRequirementByRelation(COMPONENT_ID, FROM_INSTANCE_ID, relation, (rel, req)->isBelongingRequirement(rel, req)); + when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_REQUIREMENTS), + eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); + Either<RequirementDataDefinition, StorageOperationStatus> result = operation.getFulfilledRequirementByRelation( + COMPONENT_ID, FROM_INSTANCE_ID, relation, (rel, req) -> isBelongingRequirement(rel, req)); assertTrue(result.isLeft()); assertTrue(result.left().value().equals(requirement)); } - + @Test - public void testGetFulfilledCapabilityByRelationNotFoundFailure(){ + public void testGetFulfilledCapabilityByRelationNotFoundFailure() { GraphVertex vertex = Mockito.mock(GraphVertex.class); Either<GraphVertex, TitanOperationStatus> vertexRes = Either.left(vertex); when(titanDao.getVertexById(eq(COMPONENT_ID), eq(JsonParseFlagEnum.ParseAll))).thenReturn(vertexRes); - + Either<GraphVertex, TitanOperationStatus> childVertexRes = Either.right(TitanOperationStatus.NOT_FOUND); - when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_CAPABILITIES), eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); - Either<CapabilityDataDefinition, StorageOperationStatus> result = operation.getFulfilledCapabilityByRelation(COMPONENT_ID, TO_INSTANCE_ID, relation, (rel, cap)->isBelongingCapability(rel, cap)); + when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_CAPABILITIES), + eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); + Either<CapabilityDataDefinition, StorageOperationStatus> result = operation.getFulfilledCapabilityByRelation( + COMPONENT_ID, TO_INSTANCE_ID, relation, (rel, cap) -> isBelongingCapability(rel, cap)); assertTrue(result.isRight()); assertTrue(result.right().value() == StorageOperationStatus.NOT_FOUND); } - + @Test - public void testGetFulfilledRequirementByRelationNotFoundFailure(){ + public void testGetFulfilledRequirementByRelationNotFoundFailure() { GraphVertex vertex = Mockito.mock(GraphVertex.class); Either<GraphVertex, TitanOperationStatus> vertexRes = Either.left(vertex); when(titanDao.getVertexById(eq(COMPONENT_ID), eq(JsonParseFlagEnum.ParseAll))).thenReturn(vertexRes); - + Either<GraphVertex, TitanOperationStatus> childVertexRes = Either.right(TitanOperationStatus.NOT_FOUND); - when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_REQUIREMENTS), eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); - Either<RequirementDataDefinition, StorageOperationStatus> result = operation.getFulfilledRequirementByRelation(COMPONENT_ID, FROM_INSTANCE_ID, relation,(rel, req)->isBelongingRequirement(rel, req)); + when(titanDao.getChildVertex(eq(vertex), eq(EdgeLabelEnum.FULLFILLED_REQUIREMENTS), + eq(JsonParseFlagEnum.ParseJson))).thenReturn(childVertexRes); + Either<RequirementDataDefinition, StorageOperationStatus> result = operation.getFulfilledRequirementByRelation( + COMPONENT_ID, FROM_INSTANCE_ID, relation, (rel, req) -> isBelongingRequirement(rel, req)); assertTrue(result.isRight()); assertTrue(result.right().value() == StorageOperationStatus.NOT_FOUND); } - + private static void buildRequirementDataDefinition() { buildRequirement(); fulfilledRequirement = new HashMap<>(); MapListRequirementDataDefinition mapListRequirementDataDefinition = new MapListRequirementDataDefinition(); mapListRequirementDataDefinition.add(requirement.getCapability(), requirement); fulfilledRequirement.put(FROM_INSTANCE_ID, mapListRequirementDataDefinition); - + } private static void buildRequirement() { @@ -154,40 +192,157 @@ public class NodeTemplateOperationTest extends ModelTestBase{ capability.setUniqueId(CAPABILITY_UID); capability.setName(CAPABILITY_NAME); } - + private static void buildRelation() { - + relation = new RequirementCapabilityRelDef(); CapabilityRequirementRelationship relationship = new CapabilityRequirementRelationship(); RelationshipInfo relationInfo = new RelationshipInfo(); relationInfo.setId(RELATION_ID); relationship.setRelation(relationInfo); - + relation.setRelationships(Lists.newArrayList(relationship)); relation.setToNode(TO_INSTANCE_ID); relation.setFromNode(FROM_INSTANCE_ID); - + relationInfo.setCapabilityOwnerId(CAPABILITY_OWNER_ID); relationInfo.setCapabilityUid(CAPABILITY_UID); relationInfo.setCapability(CAPABILITY_NAME); relationInfo.setRequirementOwnerId(REQUIREMENT_OWNER_ID); relationInfo.setRequirementUid(REQUIREMENT_UID); relationInfo.setRequirement(REQUIREMENT_NAME); - RelationshipImpl relationshipImpl = new RelationshipImpl(); + RelationshipImpl relationshipImpl = new RelationshipImpl(); relationshipImpl.setType(RELATIONSHIP_TYPE); relationInfo.setRelationships(relationshipImpl); } - + private boolean isBelongingRequirement(RelationshipInfo relationshipInfo, RequirementDataDefinition req) { - return req.getRelationship().equals(relationshipInfo.getRelationship().getType()) && - req.getName().equals(relationshipInfo.getRequirement()) && - req.getUniqueId().equals(relationshipInfo.getRequirementUid()) && - req.getOwnerId().equals(relationshipInfo.getRequirementOwnerId()); + return req.getRelationship().equals(relationshipInfo.getRelationship().getType()) + && req.getName().equals(relationshipInfo.getRequirement()) + && req.getUniqueId().equals(relationshipInfo.getRequirementUid()) + && req.getOwnerId().equals(relationshipInfo.getRequirementOwnerId()); } - + private boolean isBelongingCapability(RelationshipInfo relationshipInfo, CapabilityDataDefinition cap) { - return cap.getName().equals(relationshipInfo.getCapability()) && - cap.getUniqueId().equals(relationshipInfo.getCapabilityUid()) && - cap.getOwnerId().equals(relationshipInfo.getCapabilityOwnerId()); + return cap.getName().equals(relationshipInfo.getCapability()) + && cap.getUniqueId().equals(relationshipInfo.getCapabilityUid()) + && cap.getOwnerId().equals(relationshipInfo.getCapabilityOwnerId()); + } + + private NodeTemplateOperation createTestSubject() { + return operation; + } + + + @Test + public void testGetDefaultHeatTimeout() throws Exception { + Integer result; + + // default test + result = NodeTemplateOperation.getDefaultHeatTimeout(); } + + + + + + + + + + + + + @Test + public void testPrepareInstDeploymentArtifactPerInstance() throws Exception { + NodeTemplateOperation testSubject; + Map<String, ArtifactDataDefinition> deploymentArtifacts = null; + String componentInstanceId = ""; + User user = null; + String envType = ""; + MapArtifactDataDefinition result; + + // test 1 + testSubject = createTestSubject(); + deploymentArtifacts = null; + result = testSubject.prepareInstDeploymentArtifactPerInstance(deploymentArtifacts, componentInstanceId, user, + envType); + Assert.assertEquals(null, result); + } + + + + @Test + public void testCreateCapPropertyKey() throws Exception { + String key = ""; + String instanceId = ""; + String result; + + // default test + result = NodeTemplateOperation.createCapPropertyKey(key, instanceId); + } + + + @Test + public void testPrepareCalculatedCapabiltyForNodeType() throws Exception { + NodeTemplateOperation testSubject; + Map<String, ListCapabilityDataDefinition> capabilities = null; + ComponentInstanceDataDefinition componentInstance = null; + MapListCapabiltyDataDefinition result; + + // test 1 + testSubject = createTestSubject(); + capabilities = null; + result = testSubject.prepareCalculatedCapabiltyForNodeType(capabilities, componentInstance); + Assert.assertEquals(null, result); + } + + + @Test + public void testPrepareCalculatedRequirementForNodeType() throws Exception { + NodeTemplateOperation testSubject; + Map<String, ListRequirementDataDefinition> requirements = null; + ComponentInstanceDataDefinition componentInstance = null; + MapListRequirementDataDefinition result; + + // test 1 + testSubject = createTestSubject(); + requirements = null; + result = testSubject.prepareCalculatedRequirementForNodeType(requirements, componentInstance); + Assert.assertEquals(null, result); + } + + + @Test + public void testAddGroupInstancesToComponentInstance() throws Exception { + NodeTemplateOperation testSubject; + Component containerComponent = null; + ComponentInstanceDataDefinition componentInstance = null; + List<GroupDefinition> groups = null; + Map<String, List<ArtifactDefinition>> groupInstancesArtifacts = null; + StorageOperationStatus result; + + // test 1 + testSubject = createTestSubject(); + groupInstancesArtifacts = null; + result = testSubject.addGroupInstancesToComponentInstance(containerComponent, componentInstance, groups, + groupInstancesArtifacts); + Assert.assertEquals(StorageOperationStatus.OK, result); + } + + @Test + public void testGenerateCustomizationUUIDOnInstanceGroup() throws Exception { + NodeTemplateOperation testSubject; + String componentId = ""; + String instanceId = ""; + List<String> groupInstances = null; + StorageOperationStatus result; + + // test 1 + testSubject = createTestSubject(); + groupInstances = null; + result = testSubject.generateCustomizationUUIDOnInstanceGroup(componentId, instanceId, groupInstances); + Assert.assertEquals(StorageOperationStatus.OK, result); + } + } |