aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xparticipant/participant-impl/participant-impl-a1pms/src/main/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AutomationCompositionElementHandler.java6
-rwxr-xr-xparticipant/participant-impl/participant-impl-a1pms/src/test/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AcElementHandlerTest.java31
-rw-r--r--pom.xml2
3 files changed, 33 insertions, 6 deletions
diff --git a/participant/participant-impl/participant-impl-a1pms/src/main/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AutomationCompositionElementHandler.java b/participant/participant-impl/participant-impl-a1pms/src/main/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AutomationCompositionElementHandler.java
index 072d14475..9b942b961 100755
--- a/participant/participant-impl/participant-impl-a1pms/src/main/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AutomationCompositionElementHandler.java
+++ b/participant/participant-impl/participant-impl-a1pms/src/main/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AutomationCompositionElementHandler.java
@@ -145,12 +145,8 @@ public class AutomationCompositionElementHandler implements AutomationCompositio
LOGGER.error("Violations found in the config request parameters: {}", violations);
throw new ValidationException("Constraint violations in the config request");
}
- } catch (ValidationException | CoderException e) {
- LOGGER.error("Error invoking the A1PMS request for the config ", e);
+ } catch (ValidationException | CoderException | A1PolicyServiceException e) {
throw new A1PolicyServiceException(HttpStatus.SC_BAD_REQUEST, "Invalid Configuration", e);
- } catch (A1PolicyServiceException e) {
- LOGGER.error("Error invoking the A1PMS request for the config ", e);
- throw e;
}
}
}
diff --git a/participant/participant-impl/participant-impl-a1pms/src/test/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AcElementHandlerTest.java b/participant/participant-impl/participant-impl-a1pms/src/test/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AcElementHandlerTest.java
index 690f5f2f4..635b77486 100755
--- a/participant/participant-impl/participant-impl-a1pms/src/test/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AcElementHandlerTest.java
+++ b/participant/participant-impl/participant-impl-a1pms/src/test/java/org/onap/policy/clamp/acm/participant/a1pms/handler/AcElementHandlerTest.java
@@ -21,6 +21,7 @@
package org.onap.policy.clamp.acm.participant.a1pms.handler;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
@@ -96,6 +97,12 @@ class AcElementHandlerTest {
assertDoesNotThrow(() -> automationCompositionElementHandler.automationCompositionElementStateChange(
automationCompositionId, automationCompositionElementId, AutomationCompositionState.PASSIVE,
AutomationCompositionOrderedState.RUNNING));
+
+ when(acA1PmsClient.isPmsHealthy()).thenReturn(Boolean.FALSE);
+ assertThrows(A1PolicyServiceException.class,
+ () -> automationCompositionElementHandler.automationCompositionElementStateChange(
+ automationCompositionId, automationCompositionElementId, AutomationCompositionState.PASSIVE,
+ AutomationCompositionOrderedState.UNINITIALISED));
}
@Test
@@ -107,4 +114,28 @@ class AcElementHandlerTest {
commonTestData.getAutomationCompositionId(), element,
nodeTemplatesMap.get(A1_AUTOMATION_COMPOSITION_ELEMENT)));
}
+
+ @Test
+ void test_AutomationCompositionElementUpdateWithUnhealthyA1pms() {
+ AutomationCompositionElement element = commonTestData.getAutomationCompositionElement();
+ when(acA1PmsClient.isPmsHealthy()).thenReturn(Boolean.FALSE);
+
+ Map<String, ToscaNodeTemplate> nodeTemplatesMap = serviceTemplate.getToscaTopologyTemplate().getNodeTemplates();
+ assertThrows(A1PolicyServiceException.class,
+ () -> automationCompositionElementHandler.automationCompositionElementUpdate(
+ commonTestData.getAutomationCompositionId(), element,
+ nodeTemplatesMap.get(A1_AUTOMATION_COMPOSITION_ELEMENT)));
+ }
+
+ @Test
+ void test_AutomationCompositionElementUpdateWithInvalidConfiguration() {
+ AutomationCompositionElement element = commonTestData.getAutomationCompositionElement();
+
+ Map<String, ToscaNodeTemplate> nodeTemplatesMap = serviceTemplate.getToscaTopologyTemplate().getNodeTemplates();
+ ToscaNodeTemplate toscaNodeTemplate = nodeTemplatesMap.get(A1_AUTOMATION_COMPOSITION_ELEMENT);
+ toscaNodeTemplate.setProperties(Map.of());
+ assertThrows(A1PolicyServiceException.class,
+ () -> automationCompositionElementHandler.automationCompositionElementUpdate(
+ commonTestData.getAutomationCompositionId(), element, toscaNodeTemplate));
+ }
}
diff --git a/pom.xml b/pom.xml
index 550919413..7ae8c7d1e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -49,7 +49,7 @@
o policy-clamp-participant-impl-policy: A standard participant for handling polcies for Policy Framework
o policy-clamp-acm-element-impl: ACM element implementation for integration testing
o policy-clamp-participant-impl-http: A standard participant for http configurations
- o policy-clamp-participant-impl-a1: A standard participant for accessing A1-Policy Management Service
+ o policy-clamp-participant-impl-a1pms: A standard participant for accessing A1-Policy Management Service
</description>
<properties>