From 4dbd4fc629c4c3e8c491ed7fdd904e2ecfa4c0e0 Mon Sep 17 00:00:00 2001 From: aleemraja Date: Thu, 16 Jul 2020 21:46:19 +0530 Subject: Preparing the request payload for calling SO macro flow. - Added JUnit Test cases and Kararte test for service catalog. - Added test case for Execution Task for Macro Flow. - Modified RequestDetails and RequestInfo to match with SO Macro request payload. - Added k8s configuration in application.properties. Issue-ID: EXTAPI-368 Signed-off-by: aleemraja Change-Id: Ibbbbbd2d7021c16ea6291cc899e310ae26200833 Signed-off-by: aleemraja --- .../ServiceOrderExecutionTaskAssertions.java | 303 ++++++++++++++++++++- .../servicecatalog/ToscaInfosProcessorTest.java | 142 ++++++++++ .../java/org/onap/nbi/test/ExecutionTaskTest.java | 35 +++ 3 files changed, 479 insertions(+), 1 deletion(-) (limited to 'src/test/java') diff --git a/src/test/java/org/onap/nbi/apis/assertions/ServiceOrderExecutionTaskAssertions.java b/src/test/java/org/onap/nbi/apis/assertions/ServiceOrderExecutionTaskAssertions.java index b09cf1d..621a938 100644 --- a/src/test/java/org/onap/nbi/apis/assertions/ServiceOrderExecutionTaskAssertions.java +++ b/src/test/java/org/onap/nbi/apis/assertions/ServiceOrderExecutionTaskAssertions.java @@ -162,6 +162,76 @@ public class ServiceOrderExecutionTaskAssertions { } + public static ServiceOrder createTestServiceOrderForMacro(ActionType actionType) { + ServiceOrder serviceOrder = new ServiceOrder(); + serviceOrder.setExternalId("LudONAP001"); + serviceOrder.setPriority("1"); + serviceOrder.setDescription("Ludo first ONAP Order"); + serviceOrder.setCategory("Consumer"); + serviceOrder.setRequestedStartDate(new Date()); + serviceOrder.setRequestedCompletionDate(new Date()); + serviceOrder.setBaseType("toto"); + serviceOrder.setCompletionDateTime(new Date()); + serviceOrder.setExpectedCompletionDate(new Date()); + serviceOrder.setSchemaLocation("/tutu"); + + OrderRelationship orderRelationship = new OrderRelationship(); + orderRelationship.setId("test"); + orderRelationship.setHref("test"); + orderRelationship.setReferredType("test"); + orderRelationship.setType("type"); + List relationships = new ArrayList<>(); + serviceOrder.setOrderRelationship(relationships); + + RelatedParty party = new RelatedParty(); + party.setId("6490"); + party.setRole("ONAPcustomer"); + party.setReferredType("individual"); + party.setName("Jean Pontus"); + List relatedPartyList = new ArrayList<>(); + relatedPartyList.add(party); + serviceOrder.setRelatedParty(relatedPartyList); + + List items = new ArrayList<>(); + + ServiceOrderItem itemA = new ServiceOrderItem(); + itemA.id("A"); + itemA.action(actionType); + Service serviceA = new Service(); + if (actionType != ActionType.ADD) { + serviceA.setId("e4688e5f-61a0-4f8b-ae02-a2fbde623bcb"); + } + serviceA.setServiceState("active"); + ServiceSpecificationRef serviceSpecificationRefA = new ServiceSpecificationRef(); + serviceSpecificationRefA.setId("82c9fbb4-656c-4973-8c7f-172b22b5fa8f"); + serviceA.setServiceSpecification(serviceSpecificationRefA); + itemA.setService(serviceA); + items.add(itemA); + + ServiceOrderItem itemB = new ServiceOrderItem(); + itemB.id("B"); + itemB.action(actionType); + Service serviceB = new Service(); + if (actionType != ActionType.ADD) { + serviceB.setId("e4688e5f-61a0-4f8b-ae02-a2fbde623bcb"); + } + serviceB.setServiceState("active"); + ServiceSpecificationRef serviceSpecificationRefB = new ServiceSpecificationRef(); + serviceSpecificationRefB.setId("82c9fbb4-656c-4973-8c7f-172b22b5fa8f"); + serviceB.setServiceSpecification(serviceSpecificationRefB); + itemB.setService(serviceB); + List orderItemRelationships = new ArrayList<>(); + OrderItemRelationship orderItemRelationship = new OrderItemRelationship(); + orderItemRelationship.setId("A"); + orderItemRelationship.setType(RelationshipType.RELIESON); + orderItemRelationships.add(orderItemRelationship); + itemB.setOrderItemRelationship(orderItemRelationships); + items.add(itemB); + serviceOrder.setOrderItem(items); + return serviceOrder; + + } + public static ExecutionTask setUpBddForExecutionTaskSucess(ServiceOrderRepository serviceOrderRepository, ExecutionTaskRepository executionTaskRepository, ActionType actionType) { ServiceOrder testServiceOrder = createTestServiceOrder(actionType); @@ -437,4 +507,235 @@ public class ServiceOrderExecutionTaskAssertions { executionTaskRepository.save(executionTaskB); return executionTaskA; } -} + + public static ExecutionTask setUpBddForMacroExecutionTaskSucess(ServiceOrderRepository serviceOrderRepository, + ExecutionTaskRepository executionTaskRepository, ActionType actionType) { + + ServiceOrder testServiceOrder = createTestServiceOrderForMacro(actionType); + + for (ServiceOrderItem serviceOrderItem : testServiceOrder.getOrderItem()) { + serviceOrderItem.setState(StateType.ACKNOWLEDGED); + List serviceCharacteristics = new ArrayList(); + ServiceCharacteristic serviceCharacteristic1 = new ServiceCharacteristic(); + serviceCharacteristic1.setName("access-site-id"); + Value value1 = new Value(); + value1.setServiceCharacteristicValue("1234765"); + serviceCharacteristic1.setValue(value1); + serviceCharacteristics.add(serviceCharacteristic1); + ServiceCharacteristic serviceCharacteristic2 = new ServiceCharacteristic(); + serviceCharacteristic2.setName("provider-site-id"); + Value value2 = new Value(); + value2.setServiceCharacteristicValue("654321"); + serviceCharacteristic2.setValue(value2); + serviceCharacteristics.add(serviceCharacteristic2); + serviceOrderItem.getService().setServiceCharacteristic(serviceCharacteristics); + } + + testServiceOrder.setState(StateType.ACKNOWLEDGED); + testServiceOrder.setId("test"); + serviceOrderRepository.save(testServiceOrder); + + LinkedHashMap sdcResponse = new LinkedHashMap<>(); + sdcResponse.put("invariantUUID", "uuid"); + sdcResponse.put("name", "VLB_Service"); + sdcResponse.put("version", "1.0"); + sdcResponse.put("category", "Network Service"); + sdcResponse.put("instantiationType", "Macro"); + + List resourceSpecs = new ArrayList<>(); + ResourceSpecification resourceSpecificationA = new ResourceSpecification(); + resourceSpecificationA.setId("35d7887d-3c35-4fb4-aed1-d15b4d9f4ccc"); + resourceSpecificationA.setInstanceName("vLB_VSP"); + resourceSpecificationA.setName("vLB_VSP"); + resourceSpecificationA.setType("VF"); + resourceSpecificationA.setVersion("1.0"); + resourceSpecificationA.setResourceInvariantUUID("368371e6-1d2f-4f4a-b992-a9053c7c2f1e"); + resourceSpecs.add(resourceSpecificationA); + + sdcResponse.put("resourceSpecification", resourceSpecs); + + ServiceOrderInfo serviceOrderInfo = new ServiceOrderInfo(); + serviceOrderInfo.setServiceOrderId("test"); + SubscriberInfo subscriberInfo = new SubscriberInfo(); + subscriberInfo.setGlobalSubscriberId("6490"); + subscriberInfo.setSubscriberName("edgar"); + serviceOrderInfo.setSubscriberInfo(subscriberInfo); + + ServiceOrderItemInfo serviceOrderItemInfoA = new ServiceOrderItemInfo(); + serviceOrderItemInfoA.setId("A"); + serviceOrderItemInfoA.setCatalogResponse(sdcResponse); + + ServiceOrderItemInfo serviceOrderItemInfoB = new ServiceOrderItemInfo(); + serviceOrderItemInfoB.setId("B"); + serviceOrderItemInfoB.setCatalogResponse(sdcResponse); + serviceOrderInfo.addServiceOrderItemInfos("A", serviceOrderItemInfoA); + serviceOrderInfo.addServiceOrderItemInfos("B", serviceOrderItemInfoB); + + + + String json = JsonEntityConverter.convertServiceOrderInfoToJson(serviceOrderInfo); + + ExecutionTask executionTaskA = new ExecutionTask(); + executionTaskA.setCreateDate(new Date()); + executionTaskA.setOrderItemId("A"); + executionTaskA.setServiceOrderInfoJson(json); + executionTaskA = executionTaskRepository.save(executionTaskA); + ExecutionTask executionTaskB = new ExecutionTask(); + executionTaskB.setCreateDate(new Date()); + executionTaskB.setOrderItemId("B"); + executionTaskB.setReliedTasks(String.valueOf(executionTaskA.getInternalId())); + executionTaskB.setServiceOrderInfoJson(json); + executionTaskRepository.save(executionTaskB); + return executionTaskA; + } + + public static ExecutionTask setUpBddForMacroExecutionTaskSucessWithObject( + ServiceOrderRepository serviceOrderRepository, ExecutionTaskRepository executionTaskRepository, + ActionType actionType) { + ServiceOrder testServiceOrder = createTestServiceOrderForMacro(actionType); + + for (ServiceOrderItem serviceOrderItem : testServiceOrder.getOrderItem()) { + serviceOrderItem.setState(StateType.ACKNOWLEDGED); + List serviceCharacteristics = new ArrayList(); + ServiceCharacteristic serviceCharacteristic1 = new ServiceCharacteristic(); + serviceCharacteristic1.setName("ServiceCharacteristics"); + serviceCharacteristic1.setValueType("object"); + Value value1 = new Value(); + value1.setServiceCharacteristicValue("{ \"key1\":\"value1\", \"key2\":\"value2\"}"); + serviceCharacteristic1.setValue(value1); + serviceCharacteristics.add(serviceCharacteristic1); + serviceOrderItem.getService().setServiceCharacteristic(serviceCharacteristics); + } + + testServiceOrder.setState(StateType.ACKNOWLEDGED); + testServiceOrder.setId("test"); + serviceOrderRepository.save(testServiceOrder); + + LinkedHashMap sdcResponse = new LinkedHashMap<>(); + sdcResponse.put("invariantUUID", "uuid"); + sdcResponse.put("name", "VLB_Service"); + sdcResponse.put("version", "1"); + sdcResponse.put("category", "Network Service"); + sdcResponse.put("instantiationType", "Macro"); + + List resourceSpecs = new ArrayList<>(); + ResourceSpecification resourceSpecificationA = new ResourceSpecification(); + resourceSpecificationA.setId("35d7887d-3c35-4fb4-aed1-d15b4d9f4ccc"); + resourceSpecificationA.setInstanceName("vLB_VSP"); + resourceSpecificationA.setName("vFW-SINK"); + resourceSpecificationA.setType("ONAPresource"); + resourceSpecificationA.setVersion("2.0"); + resourceSpecificationA.setResourceInvariantUUID("368371e6-1d2f-4f4a-b992-a9053c7c2f1e"); + resourceSpecs.add(resourceSpecificationA); + + sdcResponse.put("resourceSpecification", resourceSpecs); + + ServiceOrderInfo serviceOrderInfo = new ServiceOrderInfo(); + serviceOrderInfo.setServiceOrderId("test"); + SubscriberInfo subscriberInfo = new SubscriberInfo(); + subscriberInfo.setGlobalSubscriberId("6490"); + subscriberInfo.setSubscriberName("edgar"); + serviceOrderInfo.setSubscriberInfo(subscriberInfo); + + ServiceOrderItemInfo serviceOrderItemInfoA = new ServiceOrderItemInfo(); + serviceOrderItemInfoA.setId("A"); + serviceOrderItemInfoA.setCatalogResponse(sdcResponse); + + ServiceOrderItemInfo serviceOrderItemInfoB = new ServiceOrderItemInfo(); + serviceOrderItemInfoB.setId("B"); + serviceOrderItemInfoB.setCatalogResponse(sdcResponse); + serviceOrderInfo.addServiceOrderItemInfos("A", serviceOrderItemInfoA); + serviceOrderInfo.addServiceOrderItemInfos("B", serviceOrderItemInfoB); + + String json = JsonEntityConverter.convertServiceOrderInfoToJson(serviceOrderInfo); + + ExecutionTask executionTaskA = new ExecutionTask(); + executionTaskA.setCreateDate(new Date()); + executionTaskA.setOrderItemId("A"); + executionTaskA.setServiceOrderInfoJson(json); + executionTaskA = executionTaskRepository.save(executionTaskA); + ExecutionTask executionTaskB = new ExecutionTask(); + executionTaskB.setCreateDate(new Date()); + executionTaskB.setOrderItemId("B"); + executionTaskB.setReliedTasks(String.valueOf(executionTaskA.getInternalId())); + executionTaskB.setServiceOrderInfoJson(json); + executionTaskRepository.save(executionTaskB); + return executionTaskA; + } + + public static ExecutionTask setUpBddForMacroExecutionTaskSucessWithComplexObject( + ServiceOrderRepository serviceOrderRepository, ExecutionTaskRepository executionTaskRepository, + ActionType actionType) { + ServiceOrder testServiceOrder = createTestServiceOrderForMacro(actionType); + + for (ServiceOrderItem serviceOrderItem : testServiceOrder.getOrderItem()) { + serviceOrderItem.setState(StateType.ACKNOWLEDGED); + List serviceCharacteristics = new ArrayList<>(); + ServiceCharacteristic serviceCharacteristic1 = new ServiceCharacteristic(); + serviceCharacteristic1.setName("ServiceCharacteristics"); + serviceCharacteristic1.setValueType("object"); + Value value1 = new Value(); + // Three parameters , one is an array of child objects + value1.setServiceCharacteristicValue( + "{\"key1\":\"value1\", \"key2\":\"value2\", \"key3\":[ {\"lat1\":\"value1\",\"lon1\":\"value1\"}, { \"lat2\":\"value2\", \"lon2\":\"value2\"}]}"); + serviceCharacteristic1.setValue(value1); + serviceCharacteristics.add(serviceCharacteristic1); + serviceOrderItem.getService().setServiceCharacteristic(serviceCharacteristics); + } + + testServiceOrder.setState(StateType.ACKNOWLEDGED); + testServiceOrder.setId("test"); + serviceOrderRepository.save(testServiceOrder); + + LinkedHashMap sdcResponse = new LinkedHashMap<>(); + sdcResponse.put("invariantUUID", "uuid"); + sdcResponse.put("name", "VLB_Service"); + sdcResponse.put("version", "1"); + sdcResponse.put("category", "Network Services"); + sdcResponse.put("instantiationType", "Macro"); + + List resourceSpecs = new ArrayList<>(); + ResourceSpecification resourceSpecificationA = new ResourceSpecification(); + resourceSpecificationA.setId("35d7887d-3c35-4fb4-aed1-d15b4d9f4ccc"); + resourceSpecificationA.setInstanceName("vLB_VSP"); + resourceSpecificationA.setName("vLB_VSP"); + resourceSpecificationA.setType("ONAPresource"); + resourceSpecificationA.setVersion("2.0"); + resourceSpecificationA.setResourceInvariantUUID("368371e6-1d2f-4f4a-b992-a9053c7c2f1e"); + resourceSpecs.add(resourceSpecificationA); + + sdcResponse.put("resourceSpecification", resourceSpecs); + + ServiceOrderInfo serviceOrderInfo = new ServiceOrderInfo(); + serviceOrderInfo.setServiceOrderId("test"); + SubscriberInfo subscriberInfo = new SubscriberInfo(); + subscriberInfo.setGlobalSubscriberId("6490"); + subscriberInfo.setSubscriberName("edgar"); + serviceOrderInfo.setSubscriberInfo(subscriberInfo); + + ServiceOrderItemInfo serviceOrderItemInfoA = new ServiceOrderItemInfo(); + serviceOrderItemInfoA.setId("A"); + serviceOrderItemInfoA.setCatalogResponse(sdcResponse); + + ServiceOrderItemInfo serviceOrderItemInfoB = new ServiceOrderItemInfo(); + serviceOrderItemInfoB.setId("B"); + serviceOrderItemInfoB.setCatalogResponse(sdcResponse); + serviceOrderInfo.addServiceOrderItemInfos("A", serviceOrderItemInfoA); + serviceOrderInfo.addServiceOrderItemInfos("B", serviceOrderItemInfoB); + + String json = JsonEntityConverter.convertServiceOrderInfoToJson(serviceOrderInfo); + + ExecutionTask executionTaskA = new ExecutionTask(); + executionTaskA.setCreateDate(new Date()); + executionTaskA.setOrderItemId("A"); + executionTaskA.setServiceOrderInfoJson(json); + executionTaskA = executionTaskRepository.save(executionTaskA); + ExecutionTask executionTaskB = new ExecutionTask(); + executionTaskB.setCreateDate(new Date()); + executionTaskB.setOrderItemId("B"); + executionTaskB.setReliedTasks(String.valueOf(executionTaskA.getInternalId())); + executionTaskB.setServiceOrderInfoJson(json); + executionTaskRepository.save(executionTaskB); + return executionTaskA; + } +} \ No newline at end of file diff --git a/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java b/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java index e02cdc0..026c81f 100644 --- a/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java +++ b/src/test/java/org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java @@ -18,10 +18,13 @@ import static org.assertj.core.api.Assertions.assertThat; import java.io.File; import java.nio.file.Path; import java.util.ArrayList; +import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import org.junit.Test; import org.junit.runner.RunWith; +import org.onap.nbi.apis.serviceorder.model.consumer.VFModelInfo; import org.onap.nbi.exceptions.TechnicalException; import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException; import org.springframework.beans.factory.annotation.Autowired; @@ -237,4 +240,143 @@ public class ToscaInfosProcessorTest { } assertThat(response.get("serviceSpecCharacteristic")).isEqualTo(serviceSpecCharacteristic); } + + + @Test + public void testBuildAndSaveResponseWithSdcToscaParserWithVFModule() { + + ClassLoader classLoader = getClass().getClassLoader(); + + // Adding Path to TOSCA File to provide as parameter + Path path = new File(classLoader.getResource("toscafile/service-VlbService-csar.csar").getFile()).toPath() + .toAbsolutePath(); + + // Preparing Response Data + LinkedHashMap response = new LinkedHashMap<>(); + response.put("version", "1.0"); + response.put("name", "VLB_Service"); + response.put("description", "VLB_Service"); + response.put("id", "82c9fbb4-656c-4973-8c7f-172b22b5fa8f"); + + // Resources + List> resources = new ArrayList<>(); + LinkedHashMap resource1 = new LinkedHashMap<>(); + resource1.put("id", "35d7887d-3c35-4fb4-aed1-d15b4d9f4ccc"); + resources.add(resource1); + + // Resources to put in response as resourceSpecification + response.put("resourceSpecification", resources); + + // Test Data for VFModule 1:: An object of vFModelInfo1 + VFModelInfo vFModelInfo1 = new VFModelInfo(); + vFModelInfo1.setModelName("VlbVsp..dnsscaling..module-1"); + vFModelInfo1.setModelUuid("9bfd197c-7e18-41bd-927d-57102a6fda7e"); + vFModelInfo1.setModelInvariantUuid("888b6342-8aea-4416-b485-e24726c1f964"); + vFModelInfo1.setModelVersion("1"); + vFModelInfo1.setModelCustomizationUuid("4c387136-2fa2-420f-94e9-3312f863a352"); + + // Test Data for VFModule 2:: An object of vFModelInfo2 + VFModelInfo vFModelInfo2 = new VFModelInfo(); + vFModelInfo2.setModelName("VlbVsp..base_vlb..module-0"); + vFModelInfo2.setModelUuid("d0325d26-43f2-4c6f-aff5-2832ac2d8ab0"); + vFModelInfo2.setModelInvariantUuid("bcbdfc80-4fb1-4c3e-b4e3-77721bac61db"); + vFModelInfo2.setModelVersion("1"); + vFModelInfo2.setModelCustomizationUuid("0895caa9-b7d3-4e02-9a3c-8337c4076948"); + + // Test data for list of vFModelInfo + List vfModelInfoListTestData = new ArrayList<>(); + vfModelInfoListTestData.add(vFModelInfo1); + vfModelInfoListTestData.add(vFModelInfo2); + + // Calling buildAndSaveResponseWithSdcToscaParser with tosca file and prepared + // response as parameter + try { + toscaInfosProcessor.buildAndSaveResponseWithSdcToscaParser(path, response); + } catch (SdcToscaParserException e) { + throw new TechnicalException("unable to build response from tosca csar using sdc-parser : " + + path.toString() + " " + e.getMessage()); + } + + // Getting resourceSpecifications from response + List resourceSpecifications = (List) response.get("resourceSpecification"); + + // Getting childResourceSpecifications from resourceSpecifications that we got + // from response + List childResourceSpecifications = (ArrayList) (resourceSpecifications.get(0)) + .get("childResourceSpecification"); + + // Asserting childResourceSpecifications with our vfModelInfoListTestData :: + // CSAR has two vfModules + + for (int i = 0; i < vfModelInfoListTestData.size(); i++) { + assertThat(childResourceSpecifications.get(i)).hasFieldOrPropertyWithValue("modelName", + vfModelInfoListTestData.get(i).getModelName()); + assertThat(childResourceSpecifications.get(i)).hasFieldOrPropertyWithValue("modelUuid", + vfModelInfoListTestData.get(i).getModelUuid()); + assertThat(childResourceSpecifications.get(i)).hasFieldOrPropertyWithValue("modelInvariantUuid", + vfModelInfoListTestData.get(i).getModelInvariantUuid()); + assertThat(childResourceSpecifications.get(i)).hasFieldOrPropertyWithValue("modelVersion", + vfModelInfoListTestData.get(i).getModelVersion()); + assertThat(childResourceSpecifications.get(i)).hasFieldOrPropertyWithValue("modelCustomizationUuid", + vfModelInfoListTestData.get(i).getModelCustomizationUuid()); + } + + } + + @Test + public void testBuildAndSaveResponseWithSdcToscaParserWithInstanceSpecification() { + + ClassLoader classLoader = getClass().getClassLoader(); + + // Adding Path to TOSCA File to provide as parameter + Path path = new File(classLoader.getResource("toscafile/service-VlbService-csar.csar").getFile()).toPath() + .toAbsolutePath(); + + // Creating response to provide as parameter + LinkedHashMap response = new LinkedHashMap(); + response.put("version", "1.0"); + response.put("name", "VLB_Service"); + response.put("description", "VLB_Service"); + response.put("id", "82c9fbb4-656c-4973-8c7f-172b22b5fa8f"); + + // Resources + List resources = new ArrayList<>(); + LinkedHashMap resource1 = new LinkedHashMap(); + resource1.put("id", "35d7887d-3c35-4fb4-aed1-d15b4d9f4ccc"); + resources.add(resource1); + + // instanceSpecification Test Data + Map instanceSpecificationTestData = new LinkedHashMap<>(); + instanceSpecificationTestData.put("cloud_env", "openstack"); + instanceSpecificationTestData.put("demo_artifacts_version", "1.2.1"); + instanceSpecificationTestData.put("install_script_version", "1.2.1"); + instanceSpecificationTestData.put("onap_private_net_id", "09407156-5e6e-45a7-b4aa-6eeb7ad4aba9"); + instanceSpecificationTestData.put("onap_private_subnet_id", "8c6df8fa-2735-49ad-ba04-24701d85ba79"); + instanceSpecificationTestData.put("pub_key", + "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/EnxIi7fcHMEi9VPtCGCOpQYblj9r0M/CaD5U15Cb5qHzcHiPtJpVsDMlPGzN9VHxWZG6FqQv1s6oE+PmG1xeahhb+ofrY6s8zvlUCcWGIo/bPexzb2ErvkGyd+1tQo9oLrxNdUG0xeWUX3oFkiw3RBRyxf9n4E5ajZr4cEFQ0sqJkslj87XViw/h555ydIYTY5cPNmIlsIXTObC/2z3muVWYUzaaZE8omfYJE442+UhYLHgb7Cl1JMk/SNu/r+bLrsXeBSPB+/bxVKqjpd659AQ7GRNXvBrgfq6EKNiVjrI76AbpeTM2D/LXbENuUUkvJBWptSd0gPAGkEyc9w2n"); + instanceSpecificationTestData.put("public_net_id", + "60dc8a1c-86b8-4cc4-b5c8-9b0272113c1f0f1c389d-e9db-4c14-b3a2-11dca2d104ed"); + + // Resources to put in response as resourceSpecification + response.put("resourceSpecification", resources); + + // List vfModelInfoListTestData = new ArrayList(); + + try { + toscaInfosProcessor.buildAndSaveResponseWithSdcToscaParser(path, response); + } catch (SdcToscaParserException e) { + throw new TechnicalException("unable to build response from tosca csar using sdc-parser : " + + path.toString() + " " + e.getMessage()); + } + + // Getting + List resourceSpecifications = (List) response.get("resourceSpecification"); + + Map instanceSpecification = (HashMap) (resourceSpecifications.get(0)).get("InstanceSpecification"); + + // Test against test data and returned response's data for instanceSpecification + // instanceSpecificationTestData = new HashMap(); + assertThat(instanceSpecificationTestData).isEqualTo(instanceSpecification); + + } } diff --git a/src/test/java/org/onap/nbi/test/ExecutionTaskTest.java b/src/test/java/org/onap/nbi/test/ExecutionTaskTest.java index 5b39600..2b28eff 100644 --- a/src/test/java/org/onap/nbi/test/ExecutionTaskTest.java +++ b/src/test/java/org/onap/nbi/test/ExecutionTaskTest.java @@ -330,7 +330,42 @@ public class ExecutionTaskTest { assertThat(executionTaskRepository.count()).isEqualTo(0); } + + // Macro Flow Execution Task + @Test + public void testMacroExecutionTaskSuccess() throws Exception { + + ExecutionTask executionTaskA = + ServiceOrderExecutionTaskAssertions.setUpBddForMacroExecutionTaskSucess( + serviceOrderRepository, executionTaskRepository, ActionType.ADD); + ExecutionTask executionTaskB; + + SoTaskProcessor.processOrderItem(executionTaskA); + ServiceOrder serviceOrderChecked = getServiceOrder("test"); + assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS); + for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) { + if (serviceOrderItem.getId().equals("A")) { + assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED); + } else { + assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED); + } + } + + executionTaskB = getExecutionTask("B"); + assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty(); + executionTaskA = getExecutionTask("A"); + assertThat(executionTaskA).isNull(); + SoTaskProcessor.processOrderItem(executionTaskB); + serviceOrderChecked = getServiceOrder("test"); + + assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED); + for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) { + assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED); + + } + } + @Test public void testExecutionTaskFailed() throws Exception { -- cgit 1.2.3-korg