summaryrefslogtreecommitdiffstats
path: root/models/src/test/java
diff options
context:
space:
mode:
authorsaul.gill <saul.gill@est.tech>2023-01-30 15:44:58 +0000
committersaul.gill <saul.gill@est.tech>2023-01-31 15:29:37 +0000
commite66b2e5e4202e0f19e1460d5856d04c9c4e2c065 (patch)
treef6f149179d019c83b83ecae05daf4cd598a310a8 /models/src/test/java
parent73d0c089fe3e3019e8caa54a60a4c76de5edd72a (diff)
Added deployState to Automation Composition
Added deployState and lockState Issue-ID: POLICY-4506 Change-Id: If7fa2cc1f3c729de5dc261e2b527b03c0009e99c Signed-off-by: saul.gill <saul.gill@est.tech>
Diffstat (limited to 'models/src/test/java')
-rw-r--r--models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElementTest.java41
-rw-r--r--models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionTest.java29
-rw-r--r--models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java47
3 files changed, 106 insertions, 11 deletions
diff --git a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElementTest.java b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElementTest.java
index 83e13c74a..3274833ca 100644
--- a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElementTest.java
+++ b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElementTest.java
@@ -35,6 +35,8 @@ import org.junit.jupiter.api.Test;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionElement;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionOrderedState;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionState;
+import org.onap.policy.clamp.models.acm.concepts.DeployState;
+import org.onap.policy.clamp.models.acm.concepts.LockState;
import org.onap.policy.clamp.models.acm.concepts.Participant;
import org.onap.policy.clamp.models.acm.utils.CommonTestData;
import org.onap.policy.common.utils.coder.CoderException;
@@ -56,6 +58,10 @@ class JpaAutomationCompositionElementTest {
@Test
void testJpaAutomationCompositionElementConstructor() {
assertThatThrownBy(() -> {
+ new JpaAutomationCompositionElement((AutomationCompositionElement) null);
+ }).hasMessageMatching("authorativeConcept is marked .*ull but is null");
+
+ assertThatThrownBy(() -> {
new JpaAutomationCompositionElement((JpaAutomationCompositionElement) null);
}).hasMessageMatching("copyConcept is marked .*ull but is null");
@@ -72,21 +78,38 @@ class JpaAutomationCompositionElementTest {
}).hasMessageMatching(NULL_ELEMENT_ID_ERROR);
assertThatThrownBy(() -> {
- new JpaAutomationCompositionElement(null, null, null, null);
+ new JpaAutomationCompositionElement(null, null, null, null, null, null);
}).hasMessageMatching(NULL_ELEMENT_ID_ERROR);
assertThatThrownBy(() -> {
- new JpaAutomationCompositionElement("key", null, null, AutomationCompositionState.UNINITIALISED);
+ new JpaAutomationCompositionElement("key", null, null,
+ AutomationCompositionState.UNINITIALISED, DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching(NULL_INSTANCE_ID_ERROR);
assertThatThrownBy(() -> {
- new JpaAutomationCompositionElement("key", "key", new PfConceptKey(), null);
+ new JpaAutomationCompositionElement("key", "key", null,
+ AutomationCompositionState.UNINITIALISED, DeployState.UNDEPLOYED, LockState.LOCKED);
+ }).hasMessageMatching("definition" + NULL_ERROR);
+
+ assertThatThrownBy(() -> {
+ new JpaAutomationCompositionElement("key", "key", new PfConceptKey(), null,
+ DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching("state" + NULL_ERROR);
+ assertThatThrownBy(() -> {
+ new JpaAutomationCompositionElement("key", "key", new PfConceptKey(),
+ AutomationCompositionState.UNINITIALISED, null, LockState.LOCKED);
+ }).hasMessageMatching("deployState" + NULL_ERROR);
+
+ assertThatThrownBy(() -> {
+ new JpaAutomationCompositionElement("key", "key", new PfConceptKey(),
+ AutomationCompositionState.UNINITIALISED, DeployState.UNDEPLOYED, null);
+ }).hasMessageMatching("lockState" + NULL_ERROR);
+
assertNotNull(new JpaAutomationCompositionElement());
assertNotNull(new JpaAutomationCompositionElement("key", "key"));
assertNotNull(new JpaAutomationCompositionElement("key", "key",
- new PfConceptKey(), AutomationCompositionState.UNINITIALISED));
+ new PfConceptKey(), AutomationCompositionState.UNINITIALISED, DeployState.UNDEPLOYED, LockState.LOCKED));
}
@Test
@@ -189,6 +212,16 @@ class JpaAutomationCompositionElementTest {
testJpaAutomationCompositionElement.setState(AutomationCompositionState.UNINITIALISED);
assertEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
+ testJpaAutomationCompositionElement.setDeployState(DeployState.DEPLOYED);
+ assertNotEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
+ testJpaAutomationCompositionElement.setDeployState(DeployState.UNDEPLOYED);
+ assertEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
+
+ testJpaAutomationCompositionElement.setLockState(LockState.UNLOCKED);
+ assertNotEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
+ testJpaAutomationCompositionElement.setLockState(LockState.LOCKED);
+ assertEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
+
assertEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
testJpaAutomationCompositionElement.setParticipantId(UUID.randomUUID().toString());
assertNotEquals(0, testJpaAutomationCompositionElement.compareTo(otherJpaAutomationCompositionElement));
diff --git a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionTest.java b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionTest.java
index 2164f5782..30e225995 100644
--- a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionTest.java
+++ b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionTest.java
@@ -1,6 +1,6 @@
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2021-2022 Nordix Foundation.
+ * Copyright (C) 2021-2023 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,8 @@ import org.onap.policy.clamp.models.acm.concepts.AutomationComposition;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionOrderedState;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionState;
import org.onap.policy.clamp.models.acm.concepts.AutomationCompositions;
+import org.onap.policy.clamp.models.acm.concepts.DeployState;
+import org.onap.policy.clamp.models.acm.concepts.LockState;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.models.base.PfConceptKey;
@@ -58,30 +60,43 @@ class JpaAutomationCompositionTest {
}).hasMessageMatching("copyConcept is marked .*ull but is null");
assertThatThrownBy(() -> {
- new JpaAutomationComposition(null, null, null, null, null);
+ new JpaAutomationComposition(null, null, null, null, null, null, null);
}).hasMessageMatching(NULL_INSTANCE_ID_ERROR);
assertThatThrownBy(() -> {
- new JpaAutomationComposition(INSTANCE_ID, null, null, null, new ArrayList<>());
+ new JpaAutomationComposition(INSTANCE_ID, null, null, null, new ArrayList<>(),
+ DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching("key" + NULL_TEXT_ERROR);
assertThatThrownBy(() -> {
new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), null,
- AutomationCompositionState.UNINITIALISED, null);
+ AutomationCompositionState.UNINITIALISED, new ArrayList<>(),
+ DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching("compositionId" + NULL_TEXT_ERROR);
assertThatThrownBy(() -> {
- new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(), null, null);
+ new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(), null,
+ new ArrayList<>(), DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching("state" + NULL_TEXT_ERROR);
assertThatThrownBy(() -> {
new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(),
- AutomationCompositionState.UNINITIALISED, null);
+ AutomationCompositionState.UNINITIALISED, null, DeployState.UNDEPLOYED, LockState.LOCKED);
}).hasMessageMatching("elements" + NULL_TEXT_ERROR);
+ assertThatThrownBy(() -> {
+ new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(),
+ AutomationCompositionState.UNINITIALISED, new ArrayList<>(), null, LockState.LOCKED);
+ }).hasMessageMatching("deployState" + NULL_TEXT_ERROR);
+
+ assertThatThrownBy(() -> {
+ new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(),
+ AutomationCompositionState.UNINITIALISED, new ArrayList<>(), DeployState.UNDEPLOYED, null);
+ }).hasMessageMatching("lockState" + NULL_TEXT_ERROR);
+
assertNotNull(new JpaAutomationComposition());
assertNotNull(new JpaAutomationComposition(INSTANCE_ID, new PfConceptKey(), COMPOSITION_ID.toString(),
- AutomationCompositionState.UNINITIALISED, new ArrayList<>()));
+ AutomationCompositionState.UNINITIALISED, new ArrayList<>(), DeployState.UNDEPLOYED, LockState.LOCKED));
}
@Test
diff --git a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java
index a27a74be4..392a696e1 100644
--- a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java
+++ b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java
@@ -27,6 +27,7 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -89,6 +90,24 @@ class AcDefinitionProviderTest {
var result = acDefinitionProvider.createAutomationCompositionDefinition(inputServiceTemplate);
assertThat(result.getServiceTemplate()).isEqualTo(docServiceTemplate.toAuthorative());
+ assertThat(result.getServiceTemplate().getMetadata() != null);
+ }
+
+ @Test
+ void testCreateServiceTemplateWithMetadata() {
+ var docServiceTemplate = new DocToscaServiceTemplate(inputServiceTemplate);
+ var acmDefinition = getAcDefinition(docServiceTemplate);
+
+ var acmDefinitionRepository = mock(AutomationCompositionDefinitionRepository.class);
+ when(acmDefinitionRepository.save(any(JpaAutomationCompositionDefinition.class)))
+ .thenReturn(new JpaAutomationCompositionDefinition(acmDefinition));
+
+ var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository);
+ inputServiceTemplate.setMetadata(new HashMap<>());
+ var result = acDefinitionProvider.createAutomationCompositionDefinition(inputServiceTemplate);
+
+ assertThat(result.getServiceTemplate()).isEqualTo(docServiceTemplate.toAuthorative());
+ assertThat(result.getServiceTemplate().getMetadata() != null);
}
@Test
@@ -191,6 +210,34 @@ class AcDefinitionProviderTest {
assertThat(result.get(0)).isEqualTo(acmDefinition.getServiceTemplate());
}
+ @Test
+ void testGetServiceTemplateNulls() {
+ var docServiceTemplate = new DocToscaServiceTemplate(inputServiceTemplate);
+ var acmDefinition = getAcDefinition(docServiceTemplate);
+ var acmDefinitionRepository = mock(AutomationCompositionDefinitionRepository.class);
+ when(acmDefinitionRepository.findAll(Mockito.<Example<JpaAutomationCompositionDefinition>>any()))
+ .thenReturn(List.of(new JpaAutomationCompositionDefinition(acmDefinition)));
+
+ var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository);
+ var result = acDefinitionProvider.getServiceTemplateList(null,
+ inputServiceTemplate.getVersion());
+
+ assertThat(result).hasSize(1);
+ assertThat(result.get(0)).isEqualTo(acmDefinition.getServiceTemplate());
+
+ result = acDefinitionProvider.getServiceTemplateList(inputServiceTemplate.getName(),
+ null);
+
+ assertThat(result).hasSize(1);
+ assertThat(result.get(0)).isEqualTo(acmDefinition.getServiceTemplate());
+
+ result = acDefinitionProvider.getServiceTemplateList(null,
+ null);
+
+ assertThat(result).hasSize(0);
+ assertThat(result.isEmpty());
+ }
+
private AutomationCompositionDefinition getAcDefinition(DocToscaServiceTemplate docServiceTemplate) {
var acmDefinition = new AutomationCompositionDefinition();
acmDefinition.setCompositionId(UUID.randomUUID());