From 505c338d1a59e97ce4489dcf60037ff90abdbba5 Mon Sep 17 00:00:00 2001 From: Jozsef Csongvai Date: Thu, 28 May 2020 13:57:06 -0400 Subject: Add ResourceResolutionResult to ResourceResolutionService In order to ensure consistent behavior for assignment-map, supporting occurences and multiple artifact-prefixes, ResourceResolutionService needs to return assignment-map alongside generated template content. Issue-ID: CCSDK-2389 Signed-off-by: Jozsef Csongvai Change-Id: I54c1991d23d65217f3492b08a2170a6d41b6482d --- .../resolution/ResourceResolutionComponentTest.kt | 2 +- .../resolution/ResourceResolutionServiceTest.kt | 29 ++++++++++++++++------ .../utils/ResourceAssignmentUtilsTest.kt | 15 ----------- 3 files changed, 23 insertions(+), 23 deletions(-) (limited to 'ms/blueprintsprocessor/functions/resource-resolution/src/test') diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponentTest.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponentTest.kt index 83dd0ce34..ab1efcdc8 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponentTest.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponentTest.kt @@ -147,7 +147,7 @@ class ResourceResolutionComponentTest { any>(), any>() ) - } returns mutableMapOf() + } returns ResourceResolutionResult(mutableMapOf(), mutableMapOf()) runBlocking { resourceResolutionComponent.processNB(executionRequest) diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionServiceTest.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionServiceTest.kt index d5c43184e..d6fc52230 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionServiceTest.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionServiceTest.kt @@ -33,6 +33,7 @@ import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintConstants import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintError import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintTypes import org.onap.ccsdk.cds.controllerblueprints.core.asJsonPrimitive +import org.onap.ccsdk.cds.controllerblueprints.core.asJsonType import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintContext import org.onap.ccsdk.cds.controllerblueprints.core.utils.BluePrintMetadataUtils import org.onap.ccsdk.cds.controllerblueprints.core.utils.JacksonUtils @@ -135,12 +136,22 @@ class ResourceResolutionServiceTest { "baseconfig", props ) + }.let { (templateMap, assignmentMap) -> + assertEquals("This is Sample Velocity Template", templateMap) + + val expectedAssignmentMap = hashMapOf( + "service-instance-id" to "siid_1234", + "vnf-id" to "vnf_1234", + "vnf_name" to "temp_vnf" + ).asJsonType() + assertEquals(expectedAssignmentMap, assignmentMap) } } @Test @Throws(Exception::class) fun testResolveResources() { + val artifactNames = listOf("baseconfig", "another") runBlocking { Assert.assertNotNull("failed to create ResourceResolutionService", resourceResolutionService) @@ -155,8 +166,6 @@ class ResourceResolutionServiceTest { ExecutionServiceInput::class.java )!! - val artefactNames = listOf("baseconfig", "another") - // Prepare Inputs PayloadUtils.prepareInputsFromWorkflowPayload( bluePrintRuntimeService, @@ -167,9 +176,15 @@ class ResourceResolutionServiceTest { resourceResolutionService.resolveResources( bluePrintRuntimeService, "resource-assignment", - artefactNames, + artifactNames, props ) + }.let { + assertEquals(artifactNames.toSet(), it.templateMap.keys) + assertEquals(artifactNames.toSet(), it.assignmentMap.keys) + + assertEquals("This is Sample Velocity Template", it.templateMap["another"]) + assertEquals("vnf_1234", it.assignmentMap["another"]!!["vnf-id"]!!.asText()) } } @@ -256,7 +271,7 @@ class ResourceResolutionServiceTest { props ) }.let { - val summaries = JacksonUtils.jsonNode(it)["resolution-summary"] + val summaries = JacksonUtils.jsonNode(it.first)["resolution-summary"] val list = JacksonUtils.getListFromJsonNode(summaries, ResolutionSummary::class.java) assertEquals(list.size, 3) } @@ -265,6 +280,7 @@ class ResourceResolutionServiceTest { @Test @Throws(Exception::class) fun testResolveResourcesWithoutTemplate() { + val artifactPrefix = "notemplate" runBlocking { Assert.assertNotNull("failed to create ResourceResolutionService", resourceResolutionService) @@ -285,8 +301,6 @@ class ResourceResolutionServiceTest { "testResolveResourcesWithMappingAndTemplate" ) - val artifactPrefix = "notemplate" - // Prepare Inputs PayloadUtils.prepareInputsFromWorkflowPayload( bluePrintRuntimeService, @@ -307,7 +321,8 @@ class ResourceResolutionServiceTest { "vnf-id" : "vnf_1234", "vnf_name" : "temp_vnf" } - """.trimIndent(), it) + """.trimIndent(), it.first) + assertEquals("siid_1234", it.second["service-instance-id"].asText()) } } diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/utils/ResourceAssignmentUtilsTest.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/utils/ResourceAssignmentUtilsTest.kt index 6734613fc..59be79568 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/utils/ResourceAssignmentUtilsTest.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/utils/ResourceAssignmentUtilsTest.kt @@ -22,7 +22,6 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.utils import com.fasterxml.jackson.databind.JsonNode -import com.fasterxml.jackson.databind.node.ObjectNode import com.fasterxml.jackson.databind.node.TextNode import io.mockk.every import io.mockk.spyk @@ -207,20 +206,6 @@ class ResourceAssignmentUtilsTest { """.replace("\n|\\s".toRegex(), ""), result) } - @Test - fun generateAssignmentMapTest() { - val artifactPrefix = "vdns" - val resourceAssignments = mutableListOf( - createResourceAssignmentForTest("abc-123", "vnf-id"), - createResourceAssignmentForTest(null, "vf-module-name") - ) - - val result: ObjectNode = ResourceAssignmentUtils.generateAssignmentMap(artifactPrefix, resourceAssignments) - - assertEquals("abc-123", result["vdns"]["vnf-id"].textValue()) - assertEquals(JacksonUtils.getJsonNode(null), result["vdns"]["vf-module-name"]) - } - private fun createResourceAssignmentForTest(resourceValue: String?, resourceName: String = "pnf-id"): ResourceAssignment { val valueForTest = if (resourceValue == null) null else TextNode(resourceValue) val resourceAssignmentForTest = ResourceAssignment().apply { -- cgit 1.2.3-korg