package org.openecomp.sdc.be.tosca;
-import static java.util.Arrays.asList;
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.doReturn;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
import org.junit.Before;
import org.junit.Test;
import org.mockito.InjectMocks;
import org.openecomp.sdc.be.model.Resource;
import org.openecomp.sdc.be.model.jsontitan.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
-import org.openecomp.sdc.be.tosca.ToscaUtils.SubstituitionEntry;
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;
-public class CapabiltyRequirementConvertorTest {
+import java.util.*;
+import java.util.stream.Collectors;
+
+import static java.util.Arrays.asList;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.doReturn;
+
+public class CapabilityRequirementConverterTest {
@InjectMocks
- CapabiltyRequirementConvertor testSubject;
+ CapabilityRequirementConverter testSubject;
@Mock
ToscaOperationFacade toscaOperationFacade;
- CapabiltyRequirementConvertor capabiltyRequirementConvertor = Mockito.spy(new CapabiltyRequirementConvertor());
+ CapabilityRequirementConverter capabiltyRequirementConvertor = Mockito.spy(new CapabilityRequirementConverter());
ComponentInstance instanceProxy = Mockito.spy(new ComponentInstance());
ComponentInstance vfInstance = Mockito.spy(new ComponentInstance());
Component vfComponent = Mockito.spy(new Resource());
@Test
public void testGetInstance() {
- CapabiltyRequirementConvertor.getInstance();
+ CapabilityRequirementConverter.getInstance();
}
@Test
Map<String, DataTypeDefinition> testDataTypes = new HashMap<String, DataTypeDefinition>();
capabilities.get("att.Node").clear();
- testSubject.convertComponentInstanceCapabilties(vfInstance, testDataTypes, nodeTemplate);
+ testSubject.convertComponentInstanceCapabilities(vfInstance, testDataTypes, nodeTemplate);
capabilities = newCapabilities("port");
vfInstance.setCapabilities(capabilities);
Mockito.any(ComponentParametersView.class)))
.thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
- testSubject.convertComponentInstanceCapabilties(vfInstance, testDataTypes, nodeTemplate);
+ testSubject.convertComponentInstanceCapabilities(vfInstance, testDataTypes, nodeTemplate);
}
Mockito.any(ComponentParametersView.class)))
.thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
- testSubject.convertComponentInstanceCapabilties(vfInstance, testDataTypes, nodeTemplate);
+ testSubject.convertComponentInstanceCapabilities(vfInstance, testDataTypes, nodeTemplate);
}
- @Test
- public void testConvertOverridenProperty() {
- ComponentInstance instance = new ComponentInstance();
- Map<String, DataTypeDefinition> testDataTypes = new HashMap<String, DataTypeDefinition>();
- Map<String, ToscaTemplateCapability> capabilities = new HashMap<>();
- ComponentInstanceProperty p = new ComponentInstanceProperty();
- SchemaDefinition entrySchema = new SchemaDefinition();
- entrySchema.setProperty(new PropertyDataDefinition());
- p.setSchema(entrySchema);
-
- Deencapsulation.invoke(testSubject, "convertOverridenProperty", instance, testDataTypes, capabilities, p,
- "port");
- }
-
- @Test
- public void testConvertRequirements() {
- ToscaNodeType nodeType = new ToscaNodeType();
-
- testSubject.convertRequirements(vfComponent, nodeType);
-
- }
-
- @Test
- public void testConvertRequirements_1() {
- ToscaNodeType nodeType = new ToscaNodeType();
- Map<String, List<RequirementDefinition>> requirementsMap = new HashMap<String, List<RequirementDefinition>>();
-
- List<RequirementDefinition> requirementsArray = new ArrayList<RequirementDefinition>();
- RequirementDefinition definition = new RequirementDefinition();
- definition.setOwnerId("id");
- requirementsArray.add(definition);
- requirementsMap.put("key", requirementsArray);
- vfComponent.setRequirements(requirementsMap);
- vfComponent.setUniqueId("id");
- testSubject.convertRequirements(vfComponent, nodeType);
-
- }
@Test
public void testConvertSubstitutionMappingRequirements() {
capabilitiesMap);
}
- @Test
- public void testBuildSubstitutedNamePerInstance() {
- Map<String, Component> componentsCache = new HashMap<>();
- String name = "name";
- String ownerId = "id";
- List<String> path = new ArrayList<>();
- path.add("id");
- SubstituitionEntry entry = new SubstituitionEntry();
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- instance.setComponentUid("uid");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Mockito.when(toscaOperationFacade.getToscaElement(Mockito.any(String.class),
- Mockito.any(ComponentParametersView.class)))
- .thenReturn(Either.right(StorageOperationStatus.BAD_REQUEST));
-
- Deencapsulation.invoke(testSubject, "buildSubstitutedNamePerInstance", componentsCache, vfComponent, name, path,
- ownerId, entry);
- }
-
- @Test
- public void testConvertRequirement() {
- RequirementDefinition definition = new RequirementDefinition();
- List<String> path = new ArrayList<>();
- path.add("value");
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Deencapsulation.invoke(testSubject, "convertRequirement", vfComponent, false, definition);
- }
-
- @Test
- public void testConvertRequirement_1() {
- RequirementDefinition definition = new RequirementDefinition();
- List<String> path = new ArrayList<>();
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Deencapsulation.invoke(testSubject, "convertRequirement", vfComponent, false, definition);
- }
-
- @Test
- public void testConvertRequirement_2() {
- RequirementDefinition definition = new RequirementDefinition();
- List<String> path = new ArrayList<>();
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- path.add("value");
- definition.setPath(path);
- definition.setMaxOccurrences("1000");
-
- Deencapsulation.invoke(testSubject, "convertRequirement", vfComponent, false, definition);
- }
-
- @Test
- public void testConvertCapabilities() {
- Map<String, DataTypeDefinition> dataTypes = new HashMap<>();
-
- testSubject.convertCapabilities(vfComponent, dataTypes);
-
- Map<String, List<CapabilityDefinition>> capabilitiesMap = new HashMap<String, List<CapabilityDefinition>>();
- List<CapabilityDefinition> capabilitiesArray = new ArrayList<CapabilityDefinition>();
- CapabilityDefinition definition = new CapabilityDefinition();
- definition.setOwnerId("id");
- capabilitiesArray.add(definition);
- capabilitiesMap.put("key", capabilitiesArray);
- vfComponent.setUniqueId("id");
- vfComponent.setCapabilities(capabilitiesMap);
-
- testSubject.convertCapabilities(vfComponent, dataTypes);
- }
-
@Test
public void testConvertProxyCapabilities() {
Map<String, Component> componentsCache = new HashMap<>();
testSubject.convertSubstitutionMappingCapabilities(componentsCache, vfComponent);
}
- @Test
- public void testGetCapabilityPath() {
- CapabilityDefinition definition = new CapabilityDefinition();
- List<String> path = new ArrayList<>();
- path.add("value");
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Deencapsulation.invoke(testSubject, "getCapabilityPath", definition, vfComponent);
- }
-
- @Test
- public void testGetCapabilityPath_1() {
- CapabilityDefinition definition = new CapabilityDefinition();
- List<String> path = new ArrayList<>();
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Deencapsulation.invoke(testSubject, "getCapabilityPath", definition, vfComponent);
- }
-
- @Test
- public void testGetCapabilityPath_2() {
- CapabilityDefinition definition = new CapabilityDefinition();
- List<String> path = new ArrayList<>();
- path.add("id");
- definition.setName("name");
- definition.setPath(path);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- path.add("value");
- definition.setPath(path);
-
- Deencapsulation.invoke(testSubject, "getCapabilityPath", definition, vfComponent);
- }
-
- @Test
- public void testConvertCapability_1() {
- Map<String, DataTypeDefinition> dataTypes = new HashMap<>();
-
- Map<String, List<CapabilityDefinition>> capabilitiesMap = new HashMap<String, List<CapabilityDefinition>>();
- List<CapabilityDefinition> capabilitiesArray = new ArrayList<CapabilityDefinition>();
- CapabilityDefinition definition = new CapabilityDefinition();
- List<ComponentInstanceProperty> properties = new ArrayList<>();
- properties.add(new ComponentInstanceProperty());
- definition.setOwnerId("id");
- definition.setName("name");
- definition.setProperties(properties);
- definition.setMaxOccurrences("1000");
- List<String> path = new ArrayList<>();
- path.add("value");
- path.add("id");
- definition.setPath(path);
- capabilitiesArray.add(definition);
- capabilitiesMap.put("key", capabilitiesArray);
- vfComponent.setUniqueId("id");
- vfComponent.setCapabilities(capabilitiesMap);
-
- List<ComponentInstance> componentInstances = new ArrayList<>();
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- componentInstances.add(instance);
-
- vfComponent.setComponentInstances(componentInstances);
-
- Deencapsulation.invoke(testSubject, "convertCapabilty", vfComponent, new HashMap<>(), false, definition,
- dataTypes, "name");
- }
-
- @Test
- public void testBuildSubstitutedName() {
- ComponentInstance instance = new ComponentInstance();
- instance.setUniqueId("id");
- List<ComponentInstance> resourceInstances = new ArrayList<>();
- resourceInstances.add(instance);
- vfComponent.setComponentInstances(resourceInstances);
-
- List<String> path = new ArrayList<>();
- path.add("notId");
-
- Deencapsulation.invoke(testSubject, "buildSubstitutedName", new HashMap<>(), vfComponent, path, "name");
- }
@Test
public void testAppendNameRecursively() {
pathList.add("5f172af9-1588-443e-8897-1432b19aad8c.2cb7514a-1e50-4280-8457-baacb97b50bf.vepdgtp4837vf0");
pathList.add("86ae128e-3d0a-41f7-a957-db1df9fe598c.9cc8f8ac-6869-4dd6-a6e1-74ecb9570dc4.vepdgtp4837svc_proxy0");
- List<String> reducedMap = new CapabiltyRequirementConvertor().getReducedPathByOwner(pathList, uniqueId);
+ List<String> reducedMap = new CapabilityRequirementConverter().getReducedPathByOwner( pathList , uniqueId );
assertThat(reducedMap).isNotNull().doesNotContain(exerpt).containsOnlyOnce(duplicate).hasSize(4);