aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfranciscovila <javier.paradela.vila@est.tech>2022-09-27 15:20:55 +0100
committerfranciscovila <javier.paradela.vila@est.tech>2022-09-27 15:27:12 +0100
commitb98438ba7b85ca3e384cf5579daa5be9144f9dc4 (patch)
tree67acd92d81b5de257610634be5d75606a0fdfe08
parent6fa01940a1dec7a323f87f7a141dbef04d8af3d3 (diff)
Error in update of Component Inputs
Fix error preventing constraints validations Issue-ID: SDC-4191 Signed-off-by: franciscovila <javier.paradela.vila@est.tech> Change-Id: I19190a071fe45cf5ac30c7ec44fbf0fbb2b46c03
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogic.java8
-rw-r--r--catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogicTest.java9
2 files changed, 12 insertions, 5 deletions
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogic.java b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogic.java
index bca901ee8b..21327ea29d 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogic.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogic.java
@@ -338,13 +338,13 @@ public class InputsBusinessLogic extends BaseBusinessLogic {
List<InputDefinition> inputDefinitions = new ArrayList<>();
for (InputDefinition inputDefinition : inputs) {
InputDefinition inputDef = new InputDefinition();
- inputDefinition.setDefaultValue(inputDefinition.getDefaultValue());
- inputDefinition.setInputPath(inputDefinition.getSubPropertyInputPath());
- inputDefinition.setType(inputDefinition.getType());
+ inputDef.setDefaultValue(inputDefinition.getDefaultValue());
+ inputDef.setInputPath(inputDefinition.getSubPropertyInputPath());
+ inputDef.setType(inputDefinition.getType());
if (Objects.nonNull(inputDefinition.getParentPropertyType())) {
ComponentInstanceProperty propertyDefinition = new ComponentInstanceProperty();
propertyDefinition.setType(inputDefinition.getParentPropertyType());
- inputDefinition.setProperties(Collections.singletonList(propertyDefinition));
+ inputDef.setProperties(Collections.singletonList(propertyDefinition));
}
inputDefinitions.add(inputDef);
}
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogicTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogicTest.java
index f09f90b4ed..953cc3b801 100644
--- a/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogicTest.java
+++ b/catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/InputsBusinessLogicTest.java
@@ -100,6 +100,7 @@ public class InputsBusinessLogicTest {
private static final String LISTINPUT_PROP2_TYPE = "integer";
private static final String OLD_VALUE = "old value";
private static final String NEW_VALUE = "new value";
+ private static final String TEST_MODEL = "testModel";
static ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(), "src/test/resources/config/catalog-be");
static ConfigurationManager configurationManager = new ConfigurationManager(configurationSource);
@@ -770,11 +771,16 @@ public class InputsBusinessLogicTest {
oldInputDef.setMetadata(oldMetadata);
oldInputDefs.add(oldInputDef);
service.setInputs(oldInputDefs);
+ service.setModel(TEST_MODEL);
+
+ DataTypeDefinition testType = new DataTypeDefinition();
+ testType.setName(INPUT_TYPE);
+ Map<String, DataTypeDefinition> dataTypes = Collections.singletonMap(testType.getName(), testType);
List<InputDefinition> newInputDefs = new ArrayList<>();
InputDefinition inputDef = new InputDefinition();
inputDef.setUniqueId(INPUT_ID);
- inputDef.setType(INPUT_TYPE);
+ inputDef.setType(testType.getName());
inputDef.setDefaultValue(NEW_VALUE); // update value
inputDef.setRequired(Boolean.TRUE); // update value
Map<String, String> newMetadata = new HashMap<>();
@@ -795,6 +801,7 @@ public class InputsBusinessLogicTest {
.thenReturn(Either.left(NEW_VALUE));
when(toscaOperationFacadeMock.updateInputOfComponent(service, oldInputDef))
.thenReturn(Either.left(inputDef));
+ when(applicationDataTypeCache.getAll(TEST_MODEL)).thenReturn(Either.left(dataTypes));
Either<List<InputDefinition>, ResponseFormat> result =
testInstance.updateInputsValue(service.getComponentType(), COMPONENT_ID, newInputDefs, USER_ID, true);