aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java')
-rw-r--r--catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java124
1 files changed, 118 insertions, 6 deletions
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java
index 675c51d635..ff522e15c5 100644
--- a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java
+++ b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/CapabilityRequirementConverterTest.java
@@ -1,14 +1,31 @@
+/*
+ * Copyright © 2016-2019 European Support Limited
+ *
+ * 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.
+ */
+
package org.openecomp.sdc.be.tosca;
import java.util.Iterator;
+
+import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
-import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
-import org.openecomp.sdc.be.datatypes.elements.SchemaDefinition;
+import org.openecomp.sdc.be.datatypes.elements.RequirementDataDefinition;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.model.CapabilityDefinition;
import org.openecomp.sdc.be.model.Component;
@@ -22,12 +39,11 @@ import org.openecomp.sdc.be.model.jsontitan.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.tosca.model.SubstitutionMapping;
import org.openecomp.sdc.be.tosca.model.ToscaNodeTemplate;
-import org.openecomp.sdc.be.tosca.model.ToscaNodeType;
-import org.openecomp.sdc.be.tosca.model.ToscaTemplateCapability;
import fj.data.Either;
import mockit.Deencapsulation;
+import org.openecomp.sdc.be.tosca.model.ToscaRequirement;
import java.util.*;
import java.util.stream.Collectors;
@@ -242,7 +258,103 @@ public class CapabilityRequirementConverterTest {
vfComponent.setComponentInstances(componentInstances);
- testSubject.convertProxyCapabilities(componentsCache, vfComponent, vfComponent, instance, dataTypes);
+ testSubject.convertProxyCapabilities(componentsCache, instance, dataTypes);
+ }
+
+ @Test
+ public void testConvertProxyRequirementsNoRequirements() {
+ Map<String, Component> componentsCache = new HashMap<>();
+
+ List<ComponentInstance> componentInstances = new ArrayList<>();
+ ComponentInstance instance = new ComponentInstance();
+ instance.setUniqueId("id");
+ instance.setComponentUid("componentUid");
+ componentInstances.add(instance);
+
+ vfComponent.setComponentInstances(componentInstances);
+
+ Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class),
+ Mockito.any(ComponentParametersView.class)))
+ .thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
+
+ List<Map<String, ToscaRequirement>> proxyRequirements =
+ testSubject.convertProxyRequirements(componentsCache, instance);
+ Assert.assertEquals(0, proxyRequirements.size());
+ }
+
+ @Test
+ public void testConvertProxyRequirementsNotSubstitutedName() {
+ Map<String, Component> componentsCache = new HashMap<>();
+ RequirementDefinition r = new RequirementDefinition();
+ r.setName("port0.dependency");
+ r.setPreviousName("dependency");
+ r.setCapability("tosca.capabilities.Node");
+ r.setNode("tosca.nodes.Root");
+ r.setRelationship("tosca.relationships.DependsOn");
+ r.setMinOccurrences(RequirementDataDefinition.MIN_OCCURRENCES);
+ r.setMaxOccurrences(RequirementDataDefinition.MAX_OCCURRENCES);
+ r.setOwnerId("id");
+ r.setParentName("parentName");
+
+ Map<String, List<RequirementDefinition>> requirements = new HashMap<>();
+ List<RequirementDefinition> requirementDefinitions = new ArrayList<>();
+ requirementDefinitions.add(r);
+ requirements.put("dependency", requirementDefinitions);
+
+ List<ComponentInstance> componentInstances = new ArrayList<>();
+ ComponentInstance instance = new ComponentInstance();
+ instance.setUniqueId("id");
+ instance.setComponentUid("componentUid");
+ instance.setRequirements(requirements);
+ instance.setNormalizedName("port0");
+ componentInstances.add(instance);
+
+ vfComponent.setComponentInstances(componentInstances);
+
+ Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class),
+ Mockito.any(ComponentParametersView.class)))
+ .thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
+
+ List<Map<String, ToscaRequirement>> proxyRequirements =
+ testSubject.convertProxyRequirements(componentsCache, instance);
+ Map<String, ToscaRequirement> proxyRequirement = proxyRequirements.get(0);
+ Assert.assertEquals("dependency", proxyRequirement.keySet().iterator().next());
+ }
+
+ @Test
+ public void testConvertProxyRequirementsSubstitutedName() {
+ Map<String, Component> componentsCache = new HashMap<>();
+ RequirementDefinition r = new RequirementDefinition();
+ r.setName("dependency");
+ r.setPreviousName("dependency");
+ r.setCapability("tosca.capabilities.Node");
+ r.setNode("tosca.nodes.Root");
+ r.setRelationship("tosca.relationships.DependsOn");
+ r.setMinOccurrences(RequirementDataDefinition.MIN_OCCURRENCES);
+ r.setMaxOccurrences(RequirementDataDefinition.MAX_OCCURRENCES);
+ r.setOwnerId("id");
+ r.setParentName("parentName");
+
+ Map<String, List<RequirementDefinition>> requirements = new HashMap<>();
+ List<RequirementDefinition> requirementDefinitions = new ArrayList<>();
+ requirementDefinitions.add(r);
+ requirements.put("dependency", requirementDefinitions);
+
+ List<ComponentInstance> componentInstances = new ArrayList<>();
+ ComponentInstance instance = new ComponentInstance();
+ instance.setUniqueId("id");
+ instance.setComponentUid("componentUid");
+ instance.setRequirements(requirements);
+ instance.setNormalizedName("port0");
+ componentInstances.add(instance);
+
+ vfComponent.setComponentInstances(componentInstances);
+
+ Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class),
+ Mockito.any(ComponentParametersView.class)))
+ .thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
+
+ testSubject.convertProxyRequirements(componentsCache, instance);
}
@Test
@@ -272,7 +384,7 @@ public class CapabilityRequirementConverterTest {
Mockito.any(ComponentParametersView.class)))
.thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
- testSubject.convertProxyCapabilities(componentsCache, vfComponent, vfComponent, instance, dataTypes);
+ testSubject.convertProxyCapabilities(componentsCache, instance, dataTypes);
}
@Test