From bb8c570ba261dedbfc9972bfb08efccd41d130d2 Mon Sep 17 00:00:00 2001 From: rameshiyer27 Date: Tue, 3 Oct 2023 14:28:09 +0100 Subject: Add unit tests for tosca element type validation Issue-ID: POLICY-4830 Signed-off-by: rameshiyer27 Change-Id: I4357204daddf256298351bbd3d35ffa9e640e7bf --- .../provider/AcDefinitionProviderTest.java | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'models/src/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 2d0803a8a..78095c907 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 @@ -53,7 +53,9 @@ class AcDefinitionProviderTest { "clamp/acm/test/tosca-template-additional-properties.yaml"; private static final String ELEMENT_NAME = "org.onap.policy.clamp.acm.AutomationCompositionElement"; + private static final String INVALID_ELEMENT_NAME = "dummyElement"; private static final String NODE_TYPE = "org.onap.policy.clamp.acm.AutomationComposition"; + private static final String INVALID_NODE_TYPE = "dummyNodeTypeName"; private static ToscaServiceTemplate inputServiceTemplate; @@ -97,6 +99,32 @@ class AcDefinitionProviderTest { assertThat(result.getServiceTemplate().getMetadata()).isNotNull(); } + @Test + void testToscaWithInvalidElement() { + var docServiceTemplate = new DocToscaServiceTemplate(inputServiceTemplate); + var acmDefinition = getAcDefinition(docServiceTemplate); + var acmDefinitionRepository = mock(AutomationCompositionDefinitionRepository.class); + + var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository); + + assertThatThrownBy(() -> acDefinitionProvider + .createAutomationCompositionDefinition(inputServiceTemplate, INVALID_ELEMENT_NAME, NODE_TYPE)) + .hasMessage("NodeTemplate with element type " + INVALID_ELEMENT_NAME + " must exist!"); + } + + @Test + void testToscaWithInvalidNodeType() { + var docServiceTemplate = new DocToscaServiceTemplate(inputServiceTemplate); + var acmDefinition = getAcDefinition(docServiceTemplate); + var acmDefinitionRepository = mock(AutomationCompositionDefinitionRepository.class); + + var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository); + + assertThatThrownBy(() -> acDefinitionProvider + .createAutomationCompositionDefinition(inputServiceTemplate, ELEMENT_NAME, INVALID_NODE_TYPE)) + .hasMessageContaining("NodeTemplate with type " + INVALID_NODE_TYPE + " must exist!"); + } + @Test void testCreateServiceTemplateWithMetadata() { inputServiceTemplate.setMetadata(new HashMap<>()); -- cgit 1.2.3-korg