summaryrefslogtreecommitdiffstats
path: root/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java')
-rw-r--r--catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java97
1 files changed, 97 insertions, 0 deletions
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java
new file mode 100644
index 0000000000..309689af45
--- /dev/null
+++ b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/generic/GenericTypeBusinessLogicTest.java
@@ -0,0 +1,97 @@
+package org.openecomp.sdc.be.components.impl.generic;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.when;
+
+import java.util.Arrays;
+import java.util.List;
+
+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.enums.ResourceTypeEnum;
+import org.openecomp.sdc.be.model.InputDefinition;
+import org.openecomp.sdc.be.model.PropertyDefinition;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.jsontitan.operations.ToscaOperationFacade;
+import org.openecomp.sdc.exception.ResponseFormat;
+
+import fj.data.Either;
+
+public class GenericTypeBusinessLogicTest {
+
+ @InjectMocks
+ private GenericTypeBusinessLogic testInstance;
+
+ @Mock
+ private ToscaOperationFacade toscaOperationFacadeMock;
+
+ @Before
+ public void setUp() throws Exception {
+ testInstance = new GenericTypeBusinessLogic();
+ MockitoAnnotations.initMocks(this);
+
+ }
+
+ @Test
+ public void fetchDerivedFromGenericType_cvfv_getGenericResourceTypeFromDerivedFrom() throws Exception {
+ Resource cvfc = new Resource();
+ cvfc.setResourceType(ResourceTypeEnum.CVFC);
+ cvfc.setDerivedFrom(Arrays.asList("genericType", "someOtherType"));
+ Resource genericResource = new Resource();
+ when(toscaOperationFacadeMock.getLatestCertifiedNodeTypeByToscaResourceName("genericType")).thenReturn(Either.left(genericResource));
+ Either<Resource, ResponseFormat> fetchedGenericType = testInstance.fetchDerivedFromGenericType(cvfc);
+ assertEquals(genericResource, fetchedGenericType.left().value());
+ }
+
+ @Test
+ public void fetchDerivedFromGenericType_getGenericResourceTypeFromConfiguration() throws Exception {
+ Resource resource = Mockito.mock(Resource.class);
+ when(resource.getResourceType()).thenReturn(ResourceTypeEnum.VF);
+ when(resource.fetchGenericTypeToscaNameFromConfig()).thenReturn("genericType");
+ Resource genericResource = new Resource();
+ when(toscaOperationFacadeMock.getLatestCertifiedNodeTypeByToscaResourceName("genericType")).thenReturn(Either.left(genericResource));
+ Either<Resource, ResponseFormat> fetchedGenericType = testInstance.fetchDerivedFromGenericType(resource);
+ assertEquals(genericResource, fetchedGenericType.left().value());
+ }
+
+ @Test
+ public void generateInputsFromGenericTypeProperties() throws Exception {
+ Resource genericNodeType = new Resource();
+ genericNodeType.setUniqueId("genericUid");
+ PropertyDefinition propertyDefinition = generatePropDefinition("prop1");
+ PropertyDefinition propertyDefinition2 = generatePropDefinition("prop2");
+
+ genericNodeType.setProperties(Arrays.asList(propertyDefinition, propertyDefinition2));
+
+ List<InputDefinition> genericInputs = testInstance.generateInputsFromGenericTypeProperties(genericNodeType);
+ assertEquals(2, genericInputs.size());
+ assertInput(genericInputs.get(0), propertyDefinition);
+ assertInput(genericInputs.get(1), propertyDefinition2);
+ }
+
+ @Test
+ public void generateInputsFromGenericTypeProperties_genericHasNoProps() throws Exception {
+ Resource genericNodeType = new Resource();
+ assertTrue(testInstance.generateInputsFromGenericTypeProperties(genericNodeType).isEmpty());
+ }
+
+ private void assertInput(InputDefinition inputDefinition, PropertyDefinition propertyDefinition) {
+ assertEquals(inputDefinition.getOwnerId(), "genericUid");
+ assertEquals(inputDefinition.getValue(), propertyDefinition.getValue());
+ assertEquals(inputDefinition.getName(), propertyDefinition.getName());
+ }
+
+ private PropertyDefinition generatePropDefinition(String name) {
+ PropertyDefinition propertyDefinition = new PropertyDefinition();
+ propertyDefinition.setName(name);
+ propertyDefinition.setValue(name + "value");
+ return propertyDefinition;
+ }
+
+
+} \ No newline at end of file