aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java')
-rw-r--r--catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java
index 5752ae272e..fd61133714 100644
--- a/catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java
+++ b/catalog-be/src/test/java/org/openecomp/sdc/be/components/property/ComponentInstancePropertyDeclaratorTest.java
@@ -1,6 +1,7 @@
package org.openecomp.sdc.be.components.property;
import fj.data.Either;
+import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
@@ -9,25 +10,32 @@ import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
import org.openecomp.sdc.be.components.utils.PropertyDataDefinitionBuilder;
+import org.openecomp.sdc.be.components.utils.ResourceBuilder;
import org.openecomp.sdc.be.dao.utils.MapUtil;
import org.openecomp.sdc.be.datatypes.elements.GetInputValueDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.model.*;
import org.openecomp.sdc.be.model.jsontitan.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.UniqueIdBuilder;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verifyZeroInteractions;
import static org.mockito.Mockito.when;
+import static org.openecomp.sdc.be.components.property.CapabilityTestUtils.createCapabilityDefinition;
+import static org.openecomp.sdc.be.components.property.CapabilityTestUtils.createProperties;
@RunWith(MockitoJUnitRunner.class)
@@ -61,6 +69,64 @@ public class ComponentInstancePropertyDeclaratorTest extends PropertyDeclaratorT
}
@Test
+ public void declareCapabilitiesPropertiesAsInputs() {
+ prop1.setParentUniqueId("capUniqueId");
+ List<PropertyDataDefinition> properties = Collections.singletonList(prop1);
+ List<ComponentInstancePropInput> propsToDeclare = createInstancePropInputList(properties);
+ when(toscaOperationFacade.addComponentInstancePropertiesToComponent(eq(resource), instancePropertiesCaptor
+ .capture())).thenReturn(Either.left(Collections.emptyMap()));
+
+ CapabilityDefinition capabilityDefinition = createCapabilityDefinition();
+
+ List<ComponentInstanceProperty> capPropList = new ArrayList<>();
+ ComponentInstanceProperty instanceProperty = createProperties();
+ capPropList.add(instanceProperty);
+ capabilityDefinition.setProperties(capPropList);
+
+ capabilityDefinition.setPath(Collections.singletonList("path"));
+ Map<String, List<CapabilityDefinition>> capabilityMap = new HashMap<>();
+ capabilityMap.put(capabilityDefinition.getType(), Collections.singletonList(capabilityDefinition));
+ resource.setCapabilities(capabilityMap);
+
+ Either<List<InputDefinition>, StorageOperationStatus> createdInputs = testInstance
+ .declarePropertiesAsInputs(resource, "inst1", propsToDeclare);
+ Assert.assertTrue(createdInputs.isLeft());
+ }
+
+ @Test
+ public void testUnDeclarePropertiesAsInputs() throws Exception {
+ Component component = new ResourceBuilder().setComponentType(ComponentTypeEnum.RESOURCE).setUniqueId("resourceId")
+ .setName("resourceName").build();
+ InputDefinition input = new InputDefinition();
+ input.setUniqueId("ComponentInput1_uniqueId");
+ input.setPropertyId("ComponentInput1_uniqueId");
+
+ CapabilityDefinition capabilityDefinition = createCapabilityDefinition();
+
+ List<ComponentInstanceProperty> properties = new ArrayList<>();
+ ComponentInstanceProperty instanceProperty = createProperties();
+
+ List<GetInputValueDataDefinition> valueDataDefinitionList = new ArrayList<>();
+ GetInputValueDataDefinition getInputValueDataDefinition = new GetInputValueDataDefinition();
+ getInputValueDataDefinition.setInputId("ComponentInput1_uniqueId");
+ getInputValueDataDefinition.setPropName("prop_name");
+ valueDataDefinitionList.add(getInputValueDataDefinition);
+
+ instanceProperty.setGetInputValues(valueDataDefinitionList);
+ properties.add(instanceProperty);
+ capabilityDefinition.setProperties(properties);
+ Map<String, List<CapabilityDefinition>> capabilityMap = new HashMap<>();
+ capabilityMap.put(capabilityDefinition.getType(), Collections.singletonList(capabilityDefinition));
+ component.setCapabilities(capabilityMap);
+ component.setInputs(Collections.singletonList(input));
+ when(toscaOperationFacade.updateInstanceCapabilityProperty(any(Resource.class), any(),
+ any(ComponentInstanceProperty.class), any(CapabilityDefinition.class))).thenReturn(StorageOperationStatus.OK);
+
+ StorageOperationStatus result = testInstance.unDeclarePropertiesAsInputs(component, input);
+ Assert.assertEquals(StorageOperationStatus.OK, result);
+ }
+
+ @Test
public void declarePropertiesAsInputs_multipleNonComplexProperty() {
List<PropertyDataDefinition> properties = Arrays.asList(prop1, prop2);
List<ComponentInstancePropInput> propsToDeclare = createInstancePropInputList(properties);