Centralize TOSCA function validation
[sdc.git] / catalog-be / src / test / java / org / openecomp / sdc / be / components / impl / ComponentInstanceBusinessLogicTest.java
index 96c6762..3a5f40c 100644 (file)
@@ -49,13 +49,9 @@ import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Map.Entry;
 import java.util.Optional;
 import java.util.Set;
-import java.util.stream.Stream;
 import mockit.Deencapsulation;
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.tuple.ImmutablePair;
 import org.apache.commons.lang3.tuple.Pair;
 import org.assertj.core.util.Lists;
@@ -64,17 +60,12 @@ import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.DynamicTest;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.TestFactory;
-import org.junit.jupiter.params.ParameterizedTest;
-import org.junit.jupiter.params.provider.Arguments;
-import org.junit.jupiter.params.provider.MethodSource;
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
 import org.openecomp.sdc.be.components.impl.exceptions.ByActionStatusComponentException;
 import org.openecomp.sdc.be.components.impl.exceptions.ByResponseFormatComponentException;
 import org.openecomp.sdc.be.components.impl.exceptions.ComponentException;
-import org.openecomp.sdc.be.components.impl.exceptions.ToscaFunctionExceptionSupplier;
-import org.openecomp.sdc.be.components.impl.exceptions.ToscaGetFunctionExceptionSupplier;
 import org.openecomp.sdc.be.components.validation.UserValidations;
 import org.openecomp.sdc.be.config.ConfigurationManager;
 import org.openecomp.sdc.be.dao.api.ActionStatus;
@@ -129,6 +120,7 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.operations.exception.OperationE
 import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
 import org.openecomp.sdc.be.model.operations.impl.GraphLockOperation;
 import org.openecomp.sdc.be.model.operations.impl.PropertyOperation;
+import org.openecomp.sdc.be.model.validation.ToscaFunctionValidator;
 import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum;
 import org.openecomp.sdc.common.api.ArtifactTypeEnum;
 import org.openecomp.sdc.common.api.ConfigurationSource;
@@ -196,6 +188,8 @@ class ComponentInstanceBusinessLogicTest {
     private ContainerInstanceTypesData containerInstanceTypeData;
     @Mock
     private CompositionBusinessLogic compositionBusinessLogic;
+    @Mock
+    private ToscaFunctionValidator toscaFunctionValidator;
 
     private Component service;
     private Component resource;
@@ -222,7 +216,7 @@ class ComponentInstanceBusinessLogicTest {
     void init() {
         MockitoAnnotations.openMocks(this);
         componentInstanceBusinessLogic = new ComponentInstanceBusinessLogic(null, null, null, null, null, null, null, artifactsBusinessLogic, null,
-            null, forwardingPathOperation, null, null);
+            null, forwardingPathOperation, null, null, toscaFunctionValidator);
         componentInstanceBusinessLogic.setComponentsUtils(componentsUtils);
         componentInstanceBusinessLogic.setToscaOperationFacade(toscaOperationFacade);
         componentInstanceBusinessLogic.setUserValidations(userValidations);
@@ -369,408 +363,7 @@ class ComponentInstanceBusinessLogicTest {
         assertThat(responseFormatEither.left().value()).isEqualTo(properties);
     }
 
-    @Test
-    void testToscaGetFunctionValidation() {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String resourceInstanceId = "resourceInstanceId";
-        final String inputName = "myInputToGet";
-        final String inputId = String.format("%s.%s", containerComponentId, inputName);
-        final String schemaType = "string";
-        //creating instance list of string property with get_input value
-        final ComponentInstanceProperty propertyGetInput = new ComponentInstanceProperty();
-        propertyGetInput.setName("getInputProperty");
-        propertyGetInput.setPropertyId(String.format("%s.%s", containerComponentId, "getInputProperty"));
-        propertyGetInput.setValue(String.format("get_input: [\"%s\"]", inputName));
-        propertyGetInput.setType("list");
-        final SchemaDefinition listStringPropertySchema = createSchema(schemaType);
-        propertyGetInput.setSchema(listStringPropertySchema);
-        propertyGetInput.setToscaFunction(
-            createGetToscaFunction(inputName, inputId, List.of(propertyGetInput.getName()), PropertySource.SELF, ToscaGetFunctionType.GET_INPUT,
-                containerComponentId, containerComponentName)
-        );
-        //creating instance map of string property with get_input value to a second level property:
-        // get_input: ["property1", "subProperty1", "subProperty2"]
-        final String getPropertyPropertyName = "getPropertyProperty";
-        final List<String> containerPropertyPath = List.of("property1", "subProperty1", "subProperty2");
-        final String containerPropertyId = String.format("%s.%s", containerComponentId, containerPropertyPath.get(0));
-        final String mapToscaType = "map";
-        final ComponentInstanceProperty propertyGetProperty = createComponentInstanceProperty(
-            String.format("%s.%s", containerComponentId, getPropertyPropertyName),
-            getPropertyPropertyName,
-            mapToscaType,
-            "string",
-            String.format("\"get_property\": [\"%s\", \"%s\"]", PropertySource.SELF, String.join("\", \"", containerPropertyPath)),
-            createGetToscaFunction(containerPropertyPath.get(containerPropertyPath.size() - 1), containerPropertyId,
-                containerPropertyPath, PropertySource.SELF, ToscaGetFunctionType.GET_PROPERTY, containerComponentId, containerComponentName)
-        );
-
-        //creating component that has the instance properties
-        final Component component = new Service();
-        component.setUniqueId(containerComponentId);
-        component.setName(containerComponentName);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-        //adding instance properties to the component
-        final List<ComponentInstanceProperty> resourceInstanceProperties = List.of(propertyGetInput, propertyGetProperty);
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(resourceInstanceId, resourceInstanceProperties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        //creating component input that will be gotten by the get_input instance property
-        final var inputDefinition = new InputDefinition();
-        inputDefinition.setName(inputName);
-        inputDefinition.setUniqueId(inputId);
-        inputDefinition.setType(propertyGetInput.getType());
-        inputDefinition.setSchema(listStringPropertySchema);
-        component.setInputs(List.of(inputDefinition));
-
-        //creating component property that contains the sub property that will be gotten by the get_property instance property
-        final var propertyDefinition = new PropertyDefinition();
-        propertyDefinition.setName(containerPropertyPath.get(0));
-        propertyDefinition.setUniqueId(containerPropertyId);
-        final String property1Type = "property1.datatype";
-        propertyDefinition.setType(property1Type);
-        component.setProperties(List.of(propertyDefinition));
-        //creating resource instance to be added to the component
-        final ComponentInstance resourceInstance = createComponentInstance("resourceInstance");
-        resourceInstance.setUniqueId(resourceInstanceId);
-        component.setComponentInstances(List.of(resourceInstance));
-
-        mockComponentForToscaGetFunctionValidation(component);
-
-        //creating data types for "map", and sub properties
-        final Map<String, DataTypeDefinition> allDataTypesMap = new HashMap<>();
-        allDataTypesMap.put(mapToscaType, new DataTypeDefinition());
-
-        final String subProperty1Type = "subProperty1.datatype";
-        allDataTypesMap.put(property1Type, createDataType(property1Type, Map.of(containerPropertyPath.get(1), subProperty1Type)));
-
-        final var subProperty2Property = new PropertyDefinition();
-        subProperty2Property.setName(containerPropertyPath.get(2));
-        subProperty2Property.setType(propertyGetProperty.getType());
-        subProperty2Property.setSchema(propertyGetProperty.getSchema());
-        allDataTypesMap.put(subProperty1Type, createDataType(subProperty1Type, List.of(subProperty2Property)));
-
-        when(applicationDataTypeCache.getAll(component.getModel())).thenReturn(Either.left(allDataTypesMap));
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> actualResponseFormat = componentInstanceBusinessLogic
-            .createOrUpdatePropertiesValues(
-                ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, resourceInstanceId, resourceInstanceProperties, userId);
-        //then
-        assertTrue(actualResponseFormat.isLeft());
-        assertThat(actualResponseFormat.left().value()).isEqualTo(resourceInstanceProperties);
-    }
-
-    @Test
-    void testToscaGetPropertyOnInstanceValidation() {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String instanceUniqueId = String.format("%s.%s", containerComponentId, "instanceId");
-
-        final List<String> parentPropertyPath = List.of("property1");
-        final String containerPropertyId = String.format("%s.%s", containerComponentId, parentPropertyPath.get(0));
-        final ComponentInstanceProperty getPropertyOnInstanceProperty = createComponentInstanceProperty(
-            String.format("%s.%s", containerComponentId, "getPropertyOnInstanceProperty"),
-            "getPropertyOnInstanceProperty",
-            "string",
-            null,
-            String.format("\"get_property\": [\"%s\", \"%s\"]", PropertySource.INSTANCE, parentPropertyPath.get(0)),
-            createGetToscaFunction(parentPropertyPath.get(0), containerPropertyId, parentPropertyPath, PropertySource.INSTANCE,
-                ToscaGetFunctionType.GET_PROPERTY, instanceUniqueId, containerComponentName)
-        );
-
-        //creating component that has the instance properties
-        final Component component = new Service();
-        component.setUniqueId(containerComponentId);
-        component.setName(containerComponentName);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-        //adding instance properties to the component
-        final List<ComponentInstanceProperty> resourceInstanceProperties = List.of(getPropertyOnInstanceProperty);
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(instanceUniqueId, resourceInstanceProperties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        //creating resource property that will be get
-        final var propertyDefinition = new PropertyDefinition();
-        propertyDefinition.setName(parentPropertyPath.get(0));
-        propertyDefinition.setUniqueId(containerPropertyId);
-        final String property1Type = "string";
-        propertyDefinition.setType(property1Type);
-        //creating resource instance to be added to the component
-        final ComponentInstance resourceInstance = createComponentInstance("resourceInstance");
-        resourceInstance.setUniqueId(instanceUniqueId);
-        resourceInstance.setProperties(List.of(propertyDefinition));
-        component.setComponentInstances(List.of(resourceInstance));
-
-        mockComponentForToscaGetFunctionValidation(component);
-
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> actualResponseFormat = componentInstanceBusinessLogic
-            .createOrUpdatePropertiesValues(
-                ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, instanceUniqueId, resourceInstanceProperties, userId);
-        //then
-        assertTrue(actualResponseFormat.isLeft());
-        assertThat(actualResponseFormat.left().value()).isEqualTo(resourceInstanceProperties);
-    }
-
-    private DataTypeDefinition createDataType(final String name, final Map<String, String> propertyNameAndTypeMap) {
-        final var dataTypeDefinition = new DataTypeDefinition();
-        dataTypeDefinition.setName(name);
-        if (MapUtils.isNotEmpty(propertyNameAndTypeMap)) {
-            for (final Entry<String, String> propertyEntry : propertyNameAndTypeMap.entrySet()) {
-                final var propertyDefinition = new PropertyDefinition();
-                propertyDefinition.setName(propertyEntry.getKey());
-                propertyDefinition.setType(propertyEntry.getValue());
-                dataTypeDefinition.setProperties(List.of(propertyDefinition));
-            }
-        }
-        return dataTypeDefinition;
-    }
-
-    private DataTypeDefinition createDataType(final String name, final List<PropertyDefinition> propertyList) {
-        final var dataTypeDefinition = new DataTypeDefinition();
-        dataTypeDefinition.setName(name);
-        if (CollectionUtils.isNotEmpty(propertyList)) {
-            dataTypeDefinition.setProperties(propertyList);
-        }
-        return dataTypeDefinition;
-    }
-
-    private ComponentInstanceProperty createComponentInstanceProperty(final String uniqueId, final String name, final String type,
-                                                                      final String schemaType, final String value,
-                                                                      final ToscaGetFunctionDataDefinition toscaGetFunction) {
-        final var componentInstanceProperty = new ComponentInstanceProperty();
-        componentInstanceProperty.setName(name);
-        componentInstanceProperty.setUniqueId(uniqueId);
-        componentInstanceProperty.setType(type);
-        componentInstanceProperty.setValue(value);
-        if (schemaType != null) {
-            final SchemaDefinition schemaDefinition = createSchema(schemaType);
-            componentInstanceProperty.setSchema(schemaDefinition);
-        }
-        if (toscaGetFunction != null) {
-            componentInstanceProperty.setToscaFunction(toscaGetFunction);
-        }
-
-        return componentInstanceProperty;
-    }
-
-    @Test
-    void testToscaGetFunctionValidation_schemaDivergeTest() {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String resourceInstanceId = "resourceInstanceId";
-        final String inputName = "myInputToGet";
-        final String inputId = String.format("%s.%s", containerComponentId, inputName);
-        final String propertyName = "getInputProperty";
-        final String propertyId = String.format("%s.%s", containerComponentId, propertyName);
-        final String propertyType = "list";
-        final List<ComponentInstanceProperty> properties = new ArrayList<>();
-        final ComponentInstanceProperty propertyGetInput = createComponentInstanceProperty(
-            propertyId,
-            "getInputProperty",
-            propertyType,
-            "string",
-            String.format("get_input: [\"%s\"]", inputName),
-            createGetToscaFunction(inputName, inputId, List.of(propertyName), PropertySource.SELF, ToscaGetFunctionType.GET_INPUT,
-                containerComponentId, containerComponentName)
-        );
-        properties.add(propertyGetInput);
-
-        final Component component = new Service();
-        component.setUniqueId(containerComponentId);
-        component.setName(containerComponentName);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-
-        var inputDefinition = new InputDefinition();
-        inputDefinition.setName(inputName);
-        inputDefinition.setUniqueId(inputId);
-        inputDefinition.setType(propertyType);
-        inputDefinition.setSchema(createSchema("integer"));
-        component.setInputs(List.of(inputDefinition));
-
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(resourceInstanceId, properties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        final ComponentInstance resourceInstance = createComponentInstance("componentInstance1");
-        resourceInstance.setUniqueId(resourceInstanceId);
-        component.setComponentInstances(List.of(resourceInstance));
-
-        mockComponentForToscaGetFunctionValidation(component);
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> responseFormatEither =
-            componentInstanceBusinessLogic
-                .createOrUpdatePropertiesValues(ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, resourceInstanceId, properties, userId);
-        //then
-        assertTrue(responseFormatEither.isRight(), "Expecting an error");
-        final ResponseFormat actualResponse = responseFormatEither.right().value();
-        final ResponseFormat expectedResponse =
-            ToscaGetFunctionExceptionSupplier
-                .propertySchemaDiverge(propertyGetInput.getToscaFunction().getType(), inputDefinition.getSchemaType(),
-                    propertyGetInput.getSchemaType())
-                .get().getResponseFormat();
-        assertEquals(expectedResponse.getFormattedMessage(), actualResponse.getFormattedMessage());
-        assertEquals(expectedResponse.getStatus(), actualResponse.getStatus());
-    }
-
-    @Test
-    void testToscaGetFunctionValidation_propertyTypeDivergeTest() {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String resourceInstanceId = "resourceInstanceId";
-        final String inputName = "myInputToGet";
-        final String inputId = String.format("%s.%s", containerComponentId, inputName);
-        final String propertyName = "getInputProperty";
-        final String propertyId = String.format("%s.%s", containerComponentId, propertyName);
-        final String propertyType = "string";
-        final List<ComponentInstanceProperty> properties = new ArrayList<>();
-        final ComponentInstanceProperty propertyGetInput = createComponentInstanceProperty(
-            propertyId,
-            "getInputProperty",
-            propertyType,
-            "string",
-            String.format("get_input: [\"%s\"]", inputName),
-            createGetToscaFunction(inputName, inputId, List.of(propertyName), PropertySource.SELF, ToscaGetFunctionType.GET_INPUT,
-                containerComponentId, containerComponentName)
-        );
-        properties.add(propertyGetInput);
-
-        final Component component = new Service();
-        component.setName(containerComponentName);
-        component.setUniqueId(containerComponentId);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-
-        var inputDefinition = new InputDefinition();
-        inputDefinition.setName(inputName);
-        inputDefinition.setUniqueId(inputId);
-        inputDefinition.setType("integer");
-        component.setInputs(List.of(inputDefinition));
-
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(resourceInstanceId, properties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        final ComponentInstance resourceInstance = createComponentInstance("componentInstance1");
-        resourceInstance.setUniqueId(resourceInstanceId);
-        component.setComponentInstances(List.of(resourceInstance));
-
-        mockComponentForToscaGetFunctionValidation(component);
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> responseFormatEither =
-            componentInstanceBusinessLogic
-                .createOrUpdatePropertiesValues(ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, resourceInstanceId, properties, userId);
-        //then
-        assertTrue(responseFormatEither.isRight(), "Expecting an error");
-        final ResponseFormat actualResponse = responseFormatEither.right().value();
-        final ResponseFormat expectedResponse =
-            ToscaGetFunctionExceptionSupplier
-                .propertyTypeDiverge(propertyGetInput.getToscaFunction().getType(), inputDefinition.getType(), propertyGetInput.getType())
-                .get().getResponseFormat();
-        assertEquals(expectedResponse.getFormattedMessage(), actualResponse.getFormattedMessage());
-        assertEquals(expectedResponse.getStatus(), actualResponse.getStatus());
-    }
-
-    @ParameterizedTest
-    @MethodSource("getToscaFunctionForValidation")
-    void testToscaGetFunctionValidation_AttributesNotFoundTest(final ToscaGetFunctionDataDefinition toscaGetFunction,
-                                                               final ResponseFormat expectedValidationResponse) {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String resourceInstanceId = "resourceInstanceId";
-        final List<ComponentInstanceProperty> properties = new ArrayList<>();
-        final ComponentInstanceProperty propertyGetInput = new ComponentInstanceProperty();
-        propertyGetInput.setName("anyName");
-        propertyGetInput.setToscaFunction(toscaGetFunction);
-        properties.add(propertyGetInput);
-
-        final Component component = new Service();
-        component.setName(containerComponentName);
-        component.setUniqueId(containerComponentId);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(resourceInstanceId, properties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        final ComponentInstance resourceInstance = createComponentInstance("componentInstance1");
-        resourceInstance.setUniqueId(resourceInstanceId);
-        component.setComponentInstances(List.of(resourceInstance));
-
-        mockComponentForToscaGetFunctionValidation(component);
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> responseFormatEither =
-            componentInstanceBusinessLogic
-                .createOrUpdatePropertiesValues(ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, resourceInstanceId, properties, userId);
-        //then
-        assertTrue(responseFormatEither.isRight(), "Expecting an error");
-        final ResponseFormat actualResponse = responseFormatEither.right().value();
-        assertEquals(expectedValidationResponse.getFormattedMessage(), actualResponse.getFormattedMessage());
-        assertEquals(expectedValidationResponse.getStatus(), actualResponse.getStatus());
-    }
-
-    @Test
-    void testToscaGetFunctionValidation_propertyNotFoundTest() {
-        final String userId = "userId";
-        final String containerComponentId = "containerComponentId";
-        final String containerComponentName = "containerComponentName";
-        final String resourceInstanceId = "resourceInstanceId";
-        final String inputName = "myInputToGet";
-        final String inputId = String.format("%s.%s", containerComponentId, inputName);
-        final String propertyName = "getInputProperty";
-        final String propertyId = String.format("%s.%s", containerComponentId, propertyName);
-        final String propertyType = "string";
-        final List<ComponentInstanceProperty> properties = new ArrayList<>();
-        final ComponentInstanceProperty propertyGetInput = createComponentInstanceProperty(
-            propertyId,
-            "getInputProperty",
-            propertyType,
-            "string",
-            String.format("get_input: [\"%s\"]", inputName),
-            createGetToscaFunction(inputName, inputId, List.of(propertyName), PropertySource.SELF, ToscaGetFunctionType.GET_INPUT,
-                containerComponentId, containerComponentName)
-        );
-        properties.add(propertyGetInput);
-
-        final Component component = new Service();
-        component.setName(containerComponentName);
-        component.setUniqueId(containerComponentId);
-        component.setLastUpdaterUserId(userId);
-        component.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT);
-
-        final Map<String, List<ComponentInstanceProperty>> componentInstanceProps = new HashMap<>();
-        componentInstanceProps.put(resourceInstanceId, properties);
-        component.setComponentInstancesProperties(componentInstanceProps);
-
-        final ComponentInstance resourceInstance = createComponentInstance("componentInstance1");
-        resourceInstance.setUniqueId(resourceInstanceId);
-        component.setComponentInstances(List.of(resourceInstance));
 
-        mockComponentForToscaGetFunctionValidation(component);
-        //when
-        final Either<List<ComponentInstanceProperty>, ResponseFormat> responseFormatEither =
-            componentInstanceBusinessLogic
-                .createOrUpdatePropertiesValues(ComponentTypeEnum.RESOURCE_INSTANCE, containerComponentId, resourceInstanceId, properties, userId);
-        //then
-        assertTrue(responseFormatEither.isRight(), "Expecting an error");
-        final ResponseFormat actualResponse = responseFormatEither.right().value();
-        final ResponseFormat expectedResponse =
-            ToscaGetFunctionExceptionSupplier
-                .propertyNotFoundOnTarget(inputName, PropertySource.SELF, ToscaGetFunctionType.GET_INPUT)
-                .get().getResponseFormat();
-        assertEquals(expectedResponse.getFormattedMessage(), actualResponse.getFormattedMessage());
-        assertEquals(expectedResponse.getStatus(), actualResponse.getStatus());
-    }
 
     @Test
     void testCreateOrUpdatePropertiesValuesPropertyNotExists() {
@@ -2622,102 +2215,5 @@ class ComponentInstanceBusinessLogicTest {
         return component;
     }
 
-    private void mockComponentForToscaGetFunctionValidation(final Component component) {
-        when(toscaOperationFacade.getToscaElement(component.getUniqueId(), JsonParseFlagEnum.ParseAll))
-            .thenReturn(Either.left(component));
-        when(graphLockOperation.lockComponent(component.getUniqueId(), NodeTypeEnum.ResourceInstance))
-            .thenReturn(StorageOperationStatus.OK);
-        when(toscaOperationFacade.updateComponentInstanceMetadataOfTopologyTemplate(component))
-            .thenReturn(Either.left(component));
-        when(janusGraphDao.commit()).thenReturn(JanusGraphOperationStatus.OK);
-        when(graphLockOperation.unlockComponent(component.getUniqueId(), NodeTypeEnum.ResourceInstance))
-            .thenReturn(StorageOperationStatus.OK);
-    }
-
-    private ToscaGetFunctionDataDefinition createGetToscaFunction(final String propertyName, final String propertyUniqueId,
-                                                                  final List<String> propertyPathFromSource,
-                                                                  final PropertySource propertySource, final ToscaGetFunctionType functionType,
-                                                                  final String sourceUniqueId,
-                                                                  final String sourceName) {
-        final var toscaGetFunction = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction.setFunctionType(functionType);
-        toscaGetFunction.setPropertyUniqueId(propertyUniqueId);
-        toscaGetFunction.setPropertyName(propertyName);
-        toscaGetFunction.setPropertyPathFromSource(propertyPathFromSource);
-        toscaGetFunction.setPropertySource(propertySource);
-        toscaGetFunction.setSourceName(sourceName);
-        toscaGetFunction.setSourceUniqueId(sourceUniqueId);
-        return toscaGetFunction;
-    }
-
-    private SchemaDefinition createSchema(final String schemaType) {
-        final var schemaDefinition = new SchemaDefinition();
-        final var schemaProperty = new PropertyDefinition();
-        schemaProperty.setType(schemaType);
-        schemaDefinition.setProperty(schemaProperty);
-        return schemaDefinition;
-    }
-
-    private static Stream<Arguments> getToscaFunctionForValidation() {
-        final var toscaGetFunction1 = new ToscaGetFunctionDataDefinition();
-        final ResponseFormat expectedResponse1 = ToscaFunctionExceptionSupplier
-            .missingFunctionType().get().getResponseFormat();
-
-        final var toscaGetFunction2 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction2.setFunctionType(ToscaGetFunctionType.GET_INPUT);
-        final ResponseFormat expectedResponse2 = ToscaGetFunctionExceptionSupplier
-            .targetPropertySourceNotFound(toscaGetFunction2.getFunctionType()).get().getResponseFormat();
-
-        final var toscaGetFunction3 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction3.setFunctionType(ToscaGetFunctionType.GET_INPUT);
-        toscaGetFunction3.setPropertySource(PropertySource.SELF);
-        final ResponseFormat expectedResponse3 = ToscaGetFunctionExceptionSupplier
-            .targetSourcePathNotFound(toscaGetFunction3.getFunctionType()).get().getResponseFormat();
-
-        final var toscaGetFunction4 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction4.setFunctionType(ToscaGetFunctionType.GET_INPUT);
-        toscaGetFunction4.setPropertySource(PropertySource.SELF);
-        toscaGetFunction4.setPropertyPathFromSource(List.of("sourcePath"));
-        final ResponseFormat expectedResponse4 = ToscaGetFunctionExceptionSupplier
-            .sourceNameNotFound(toscaGetFunction4.getPropertySource()).get().getResponseFormat();
-
-        final var toscaGetFunction5 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction5.setFunctionType(ToscaGetFunctionType.GET_INPUT);
-        toscaGetFunction5.setPropertySource(PropertySource.SELF);
-        toscaGetFunction5.setPropertyPathFromSource(List.of("sourcePath"));
-        toscaGetFunction5.setSourceName("sourceName");
-        final ResponseFormat expectedResponse5 = ToscaGetFunctionExceptionSupplier
-            .sourceIdNotFound(toscaGetFunction5.getPropertySource()).get().getResponseFormat();
-
-        final var toscaGetFunction6 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction6.setFunctionType(ToscaGetFunctionType.GET_PROPERTY);
-        toscaGetFunction6.setPropertySource(PropertySource.SELF);
-        toscaGetFunction6.setPropertyPathFromSource(List.of("sourcePath"));
-        toscaGetFunction6.setSourceName("sourceName");
-        toscaGetFunction6.setSourceUniqueId("sourceUniqueId");
-        final ResponseFormat expectedResponse6 = ToscaGetFunctionExceptionSupplier
-            .propertyNameNotFound(toscaGetFunction6.getPropertySource()).get().getResponseFormat();
-
-        final var toscaGetFunction7 = new ToscaGetFunctionDataDefinition();
-        toscaGetFunction7.setFunctionType(ToscaGetFunctionType.GET_PROPERTY);
-        toscaGetFunction7.setPropertySource(PropertySource.SELF);
-        toscaGetFunction7.setPropertyPathFromSource(List.of("sourcePath"));
-        toscaGetFunction7.setSourceName("sourceName");
-        toscaGetFunction7.setSourceUniqueId("sourceUniqueId");
-        toscaGetFunction7.setPropertyName("propertyName");
-        final ResponseFormat expectedResponse7 = ToscaGetFunctionExceptionSupplier
-            .propertyIdNotFound(toscaGetFunction7.getPropertySource()).get().getResponseFormat();
-
-        return Stream.of(
-            Arguments.of(toscaGetFunction1, expectedResponse1),
-            Arguments.of(toscaGetFunction2, expectedResponse2),
-            Arguments.of(toscaGetFunction3, expectedResponse3),
-            Arguments.of(toscaGetFunction4, expectedResponse4),
-            Arguments.of(toscaGetFunction5, expectedResponse5),
-            Arguments.of(toscaGetFunction6, expectedResponse6),
-            Arguments.of(toscaGetFunction7, expectedResponse7)
-        );
-    }
-
 }