X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fonap%2Fclamp%2Floop%2Fdeploy%2FBlueprintInputParametersTest.java;h=a580a6ac8c9863d563049c67c1e96270e592eb1f;hb=3c327c1fe313cb31dcc914dcaee7f38255240099;hp=75ca25cff8c666fa48f9fe11fd3ce8a754c6212b;hpb=c405a83ec84c2bc1c090f06f9ac6207469e09cbb;p=clamp.git diff --git a/src/test/java/org/onap/clamp/loop/deploy/BlueprintInputParametersTest.java b/src/test/java/org/onap/clamp/loop/deploy/BlueprintInputParametersTest.java index 75ca25cf..a580a6ac 100644 --- a/src/test/java/org/onap/clamp/loop/deploy/BlueprintInputParametersTest.java +++ b/src/test/java/org/onap/clamp/loop/deploy/BlueprintInputParametersTest.java @@ -34,52 +34,79 @@ import java.util.LinkedHashSet; import org.junit.Assert; import org.junit.Test; import org.mockito.Mockito; -import org.onap.clamp.clds.sdc.controller.installer.BlueprintArtifact; import org.onap.clamp.clds.util.JsonUtils; import org.onap.clamp.clds.util.ResourceFileUtil; import org.onap.clamp.loop.Loop; +import org.onap.clamp.loop.template.LoopElementModel; +import org.onap.clamp.loop.template.LoopTemplate; import org.onap.clamp.policy.microservice.MicroServicePolicy; import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException; public class BlueprintInputParametersTest { - private BlueprintArtifact buildFakeBuildprintArtifact(String blueprintFilePath) throws IOException { - BlueprintArtifact blueprintArtifact = Mockito.mock(BlueprintArtifact.class); - Mockito.when(blueprintArtifact.getDcaeBlueprint()) - .thenReturn(ResourceFileUtil.getResourceAsString(blueprintFilePath)); - return blueprintArtifact; - } + @Test + public void getDeploymentParametersinJsonMultiBlueprintsTest() throws IOException, SdcToscaParserException { + Loop loop = Mockito.mock(Loop.class); + + MicroServicePolicy umService1 = Mockito.mock(MicroServicePolicy.class); + Mockito.when(umService1.getName()).thenReturn("testName1"); + + LoopElementModel loopElement = Mockito.mock(LoopElementModel.class); + String blueprint1 = ResourceFileUtil.getResourceAsString("example/sdc/blueprint-dcae/tca.yaml"); + Mockito.when(loopElement.getBlueprint()).thenReturn(blueprint1); + Mockito.when(umService1.getLoopElementModel()).thenReturn(loopElement); + + MicroServicePolicy umService2 = Mockito.mock(MicroServicePolicy.class); + Mockito.when(umService2.getName()).thenReturn("testName2"); - private LinkedHashSet buildFakeCsarHandler() throws IOException, SdcToscaParserException { + LoopElementModel loopElement2 = Mockito.mock(LoopElementModel.class); + String blueprint2 = ResourceFileUtil.getResourceAsString("example/sdc/blueprint-dcae/tca_2.yaml"); + Mockito.when(loopElement2.getBlueprint()).thenReturn(blueprint2); + Mockito.when(umService2.getLoopElementModel()).thenReturn(loopElement2); - LinkedHashSet blueprintSet = new LinkedHashSet(); + MicroServicePolicy umService3 = Mockito.mock(MicroServicePolicy.class); + Mockito.when(umService3.getName()).thenReturn("testName3"); - BlueprintArtifact blueprintArtifact = buildFakeBuildprintArtifact("example/sdc/blueprint-dcae/tca.yaml"); + LoopElementModel loopElement3 = Mockito.mock(LoopElementModel.class); + String blueprint3 = ResourceFileUtil.getResourceAsString("example/sdc/blueprint-dcae/tca_3.yaml"); + Mockito.when(loopElement3.getBlueprint()).thenReturn(blueprint3); + Mockito.when(umService3.getLoopElementModel()).thenReturn(loopElement3); - blueprintSet.add(blueprintArtifact); - // Create fake blueprint artifact 2 on resource2 - blueprintArtifact = buildFakeBuildprintArtifact("example/sdc/blueprint-dcae/tca_2.yaml"); - blueprintSet.add(blueprintArtifact); + LinkedHashSet umServiceSet = new LinkedHashSet(); + umServiceSet.add(umService1); + umServiceSet.add(umService2); + umServiceSet.add(umService3); + Mockito.when(loop.getMicroServicePolicies()).thenReturn(umServiceSet); + + LoopTemplate template = Mockito.mock(LoopTemplate.class); + Mockito.when(template.getUniqueBlueprint()).thenReturn(false); + Mockito.when(loop.getLoopTemplate()).thenReturn(template); - // Create fake blueprint artifact 3 on resource 1 so that it's possible to - // test multiple CL deployment per Service/vnf - blueprintArtifact = buildFakeBuildprintArtifact("example/sdc/blueprint-dcae/tca_3.yaml"); - blueprintSet.add(blueprintArtifact); - return blueprintSet; + JsonObject paramJson = DcaeDeployParameters.getDcaeDeploymentParametersInJson(loop); + + Assert.assertEquals(JsonUtils.GSON_JPA_MODEL.toJson(paramJson), + ResourceFileUtil.getResourceAsString("example/sdc/expected-result/deployment-parameters-multi-blueprints.json")); } @Test - public void getDeploymentParametersinJsonTest() throws IOException, SdcToscaParserException { + public void getDeploymentParametersinJsonSingleBlueprintTest() throws IOException, SdcToscaParserException { Loop loop = Mockito.mock(Loop.class); - MicroServicePolicy umService = Mockito.mock(MicroServicePolicy.class); + + MicroServicePolicy umService1 = Mockito.mock(MicroServicePolicy.class); + Mockito.when(umService1.getName()).thenReturn("testName1"); LinkedHashSet umServiceSet = new LinkedHashSet(); - Mockito.when(umService.getName()).thenReturn("testName"); - umServiceSet.add(umService); + umServiceSet.add(umService1); Mockito.when(loop.getMicroServicePolicies()).thenReturn(umServiceSet); - JsonObject paramJson = DcaeDeployParameters.getDcaeDeploymentParametersInJson(buildFakeCsarHandler(), loop); + LoopTemplate template = Mockito.mock(LoopTemplate.class); + Mockito.when(template.getUniqueBlueprint()).thenReturn(true); + String blueprint = ResourceFileUtil.getResourceAsString("example/sdc/blueprint-dcae/tca.yaml"); + Mockito.when(template.getBlueprint()).thenReturn(blueprint); + Mockito.when(loop.getLoopTemplate()).thenReturn(template); + + JsonObject paramJson = DcaeDeployParameters.getDcaeDeploymentParametersInJson(loop); - Assert.assertEquals(JsonUtils.GSON_JPA_MODEL.toJson(paramJson), - ResourceFileUtil.getResourceAsString("example/sdc/expected-result/deployment-parameters.json")); + Assert.assertEquals(JsonUtils.GSON_JPA_MODEL.toJson(paramJson), + ResourceFileUtil.getResourceAsString("example/sdc/expected-result/deployment-parameters-single-blueprint.json")); } }