diff options
Diffstat (limited to 'bpmn/so-bpmn-tasks')
11 files changed, 111 insertions, 23 deletions
diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBB.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBB.java index d78b7c3af0..1fae5ce06c 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBB.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBB.java @@ -84,7 +84,7 @@ public class GenericCDSProcessingBB implements ControllerRunnable<BuildingBlockE @Override public void run(ControllerContext<BuildingBlockExecution> context) { BuildingBlockExecution obj = context.getExecution(); - cdsDispather.constructExecutionServiceInputObject(obj); - cdsDispather.sendRequestToCDSClient(obj); + cdsDispather.constructExecutionServiceInputObjectBB(obj); + cdsDispather.sendRequestToCDSClientBB(obj); } } diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericPnfCDSControllerRunnableBB.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericPnfCDSControllerRunnableBB.java index 3b81d52703..fe6d9de199 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericPnfCDSControllerRunnableBB.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericPnfCDSControllerRunnableBB.java @@ -94,8 +94,8 @@ public class GenericPnfCDSControllerRunnableBB implements ControllerRunnable<Bui @Override public void run(ControllerContext<BuildingBlockExecution> controllerContext) { BuildingBlockExecution buildingBlockExecution = controllerContext.getExecution(); - abstractCDSProcessingBBUtils.constructExecutionServiceInputObject(buildingBlockExecution); - abstractCDSProcessingBBUtils.sendRequestToCDSClient(buildingBlockExecution); + abstractCDSProcessingBBUtils.constructExecutionServiceInputObjectBB(buildingBlockExecution); + abstractCDSProcessingBBUtils.sendRequestToCDSClientBB(buildingBlockExecution); } private AbstractCDSPropertiesBean prepareAndSetCdsPropertyBean(BuildingBlockExecution buildingBlockExecution) { diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java index f7c42b97e9..b706be92cb 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/vfmodule/CreateVFModule.java @@ -44,7 +44,11 @@ public class CreateVFModule { CloudInformation cloudInformation = new CloudInformation(); cloudInformation.setOwner(gBBInput.getCloudRegion().getCloudOwner()); cloudInformation.setRegionId(gBBInput.getCloudRegion().getLcpCloudRegionId()); - cloudInformation.setTenantId(gBBInput.getTenant().getTenantId()); + String tenantId = gBBInput.getTenant().getTenantId(); + if (tenantId == null) { + tenantId = gBBInput.getCloudRegion().getTenantId(); + } + cloudInformation.setTenantId(tenantId); cloudInformation.setTenantName(gBBInput.getTenant().getTenantName()); cloudInformation.setTenantContext(gBBInput.getTenant().getTenantContext()); cloudInformation.setTemplateInstanceId(execution.getVariable("heatStackId")); diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java index 0f955e2851..7c4f735577 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; +import java.util.Comparator; import java.util.List; import java.util.Map; import java.util.Optional; @@ -88,6 +89,7 @@ import org.onap.so.serviceinstancebeans.ModelType; import org.onap.so.serviceinstancebeans.Networks; import org.onap.so.serviceinstancebeans.Pnfs; import org.onap.so.serviceinstancebeans.RelatedInstance; +import org.onap.so.serviceinstancebeans.RelatedInstanceList; import org.onap.so.serviceinstancebeans.RequestDetails; import org.onap.so.serviceinstancebeans.Service; import org.onap.so.serviceinstancebeans.ServiceInstancesRequest; @@ -566,6 +568,20 @@ public class WorkflowAction { } else { vfModuleCustomizationUUID = aaiVfModule.getModelCustomizationId(); } + String replaceVfModuleCustomizationUUID = ""; + String replaceVnfModuleCustomizationUUID = ""; + boolean isReplace = false; + if (dataObj.getRequestAction().equalsIgnoreCase("replaceInstance") + || dataObj.getRequestAction().equalsIgnoreCase("replaceInstanceRetainAssignments")) { + for (RelatedInstanceList relatedInstList : dataObj.getRequestDetails().getRelatedInstanceList()) { + RelatedInstance relatedInstance = relatedInstList.getRelatedInstance(); + if (relatedInstance.getModelInfo().getModelType().equals(ModelType.vnf)) { + replaceVnfModuleCustomizationUUID = relatedInstance.getModelInfo().getModelCustomizationId(); + } + } + replaceVfModuleCustomizationUUID = dataObj.getRequestDetails().getModelInfo().getModelCustomizationId(); + isReplace = true; + } List<org.onap.aai.domain.yang.Vnfc> vnfcs = getRelatedResourcesInVfModule(vnfId, vfModuleId, org.onap.aai.domain.yang.Vnfc.class, Types.VNFC); @@ -579,9 +595,19 @@ public class WorkflowAction { } workflowIdsCopy.setConfigurationId(configuration.getConfigurationId()); for (OrchestrationFlow orchFlow : result) { - dataObj.getResourceKey().setVfModuleCustomizationId(vfModuleCustomizationUUID); + if (!isReplace) { + dataObj.getResourceKey().setVfModuleCustomizationId(vfModuleCustomizationUUID); + dataObj.getResourceKey().setVnfCustomizationId(vnfCustomizationUUID); + } else { + if (orchFlow.getFlowName().contains("Delete")) { + dataObj.getResourceKey().setVfModuleCustomizationId(vfModuleCustomizationUUID); + dataObj.getResourceKey().setVnfCustomizationId(vnfCustomizationUUID); + } else { + dataObj.getResourceKey().setVfModuleCustomizationId(replaceVfModuleCustomizationUUID); + dataObj.getResourceKey().setVnfCustomizationId(replaceVnfModuleCustomizationUUID); + } + } dataObj.getResourceKey().setCvnfModuleCustomizationId(vnfc.getModelCustomizationId()); - dataObj.getResourceKey().setVnfCustomizationId(vnfCustomizationUUID); String vnfcName = vnfc.getVnfcName(); if (vnfcName == null || vnfcName.isEmpty()) { buildAndThrowException(dataObj.getExecution(), "Exception in create execution list " @@ -1638,8 +1664,11 @@ public class WorkflowAction { execution.setVariable(BBConstants.G_ISTOPLEVELFLOW, northBoundRequest.getIsToplevelflow()); } List<OrchestrationFlow> flows = northBoundRequest.getOrchestrationFlowList(); - if (flows == null) + if (flows == null) { flows = new ArrayList<>(); + } else { + flows.sort(Comparator.comparingInt(OrchestrationFlow::getSequenceNumber)); + } for (OrchestrationFlow flow : flows) { if (!flow.getFlowName().contains("BB") && !flow.getFlowName().contains("Activity")) { List<OrchestrationFlow> macroQueryFlows = diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java index f0898ace81..0cb8fb2ccd 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java @@ -103,7 +103,6 @@ public class WorkflowActionBBTasks { (List<ExecuteBuildingBlock>) execution.getVariable("flowsToExecute"); execution.setVariable("MacroRollback", false); - flowManipulatorListenerRunner.modifyFlows(flowsToExecute, new DelegateExecutionImpl(execution)); int currentSequence = (int) execution.getVariable(G_CURRENT_SEQUENCE); ExecuteBuildingBlock ebb = flowsToExecute.get(currentSequence); @@ -114,6 +113,12 @@ public class WorkflowActionBBTasks { execution.setVariable(G_CURRENT_SEQUENCE, currentSequence); } + public void runFlowManipulator(DelegateExecution execution) { + List<ExecuteBuildingBlock> flowsToExecute = + (List<ExecuteBuildingBlock>) execution.getVariable("flowsToExecute"); + flowManipulatorListenerRunner.modifyFlows(flowsToExecute, new DelegateExecutionImpl(execution)); + } + public void updateFlowStatistics(DelegateExecution execution) { try { int currentSequence = (int) execution.getVariable(G_CURRENT_SEQUENCE); @@ -414,9 +419,12 @@ public class WorkflowActionBBTasks { String handlingCode = (String) execution.getVariable(HANDLINGCODE); final boolean aLaCarte = (boolean) execution.getVariable(G_ALACARTE); int currentSequence = (int) execution.getVariable(G_CURRENT_SEQUENCE); + String requestAction = (String) execution.getVariable(G_ACTION); ExecuteBuildingBlock ebb = flowsToExecute.get(currentSequence - 1); String bbFlowName = ebb.getBuildingBlock().getBpmnFlowName(); - if ("ActivateVfModuleBB".equalsIgnoreCase(bbFlowName) && aLaCarte && "Success".equalsIgnoreCase(handlingCode)) { + if ("ActivateVfModuleBB".equalsIgnoreCase(bbFlowName) && aLaCarte && "Success".equalsIgnoreCase(handlingCode) + && !(requestAction.equalsIgnoreCase("replaceInstance") + || requestAction.equalsIgnoreCase("replaceInstanceRetainAssignments"))) { postProcessingExecuteBBActivateVfModule(execution, ebb, flowsToExecute); } } diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListener.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListener.java index 2119ced951..42aab4c16e 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListener.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListener.java @@ -52,6 +52,8 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { private Set<String> pnfActions = new HashSet<>(Arrays.asList("config-assign", "config-deploy", "PnfConfigAssign", "PnfConfigDeploy")); + private static final String COMPLETED = "completed"; + @Override public boolean shouldRunFor(String currentBBName, boolean isFirst, BuildingBlockExecution execution) { @@ -70,6 +72,7 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { public void run(List<ExecuteBuildingBlock> flowsToExecute, ExecuteBuildingBlock currentBB, BuildingBlockExecution execution) { String customizationUUID = currentBB.getBuildingBlock().getKey(); + int flowsToExecuteSize = flowsToExecute.size(); if (Strings.isEmpty(customizationUUID)) { return; @@ -85,7 +88,7 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { vnfResourceCustomizations); if (null != vrc) { boolean skipConfigVNF = vrc.isSkipPostInstConf(); - currentSequenceSkipCheck(execution, skipConfigVNF); + currentSequenceSkipCheck(execution, skipConfigVNF, flowsToExecuteSize); } } @@ -97,7 +100,7 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { if (null != vfc) { boolean skipVfModule = vfc.isSkipPostInstConf(); - currentSequenceSkipCheck(execution, skipVfModule); + currentSequenceSkipCheck(execution, skipVfModule, flowsToExecuteSize); } } else if (currentBB.getBuildingBlock().getBpmnScope().equalsIgnoreCase("PNF") @@ -107,7 +110,7 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { if (null != pnfResourceCustomization) { boolean skipConfigPNF = pnfResourceCustomization.isSkipPostInstConf(); - currentSequenceSkipCheck(execution, skipConfigPNF); + currentSequenceSkipCheck(execution, skipConfigPNF, flowsToExecuteSize); } } } @@ -118,10 +121,16 @@ public class SkipCDSBuildingBlockListener implements FlowManipulator { } - private void currentSequenceSkipCheck(BuildingBlockExecution execution, boolean skipModule) { + private void currentSequenceSkipCheck(BuildingBlockExecution execution, boolean skipModule, + int flowsToExecuteSize) { if (skipModule) { int currentSequence = execution.getVariable(BBConstants.G_CURRENT_SEQUENCE); - execution.setVariable(BBConstants.G_CURRENT_SEQUENCE, currentSequence + 1); + currentSequence++; + if (currentSequence >= flowsToExecuteSize) { + execution.setVariable(COMPLETED, true); + } else { + execution.setVariable(BBConstants.G_CURRENT_SEQUENCE, currentSequence); + } } } diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/aai/mapper/AAIObjectMapper.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/aai/mapper/AAIObjectMapper.java index 614401d32a..9899d89b5e 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/aai/mapper/AAIObjectMapper.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/aai/mapper/AAIObjectMapper.java @@ -52,7 +52,7 @@ import org.springframework.stereotype.Component; @Component public class AAIObjectMapper { - private static final ModelMapper modelMapper = new ModelMapper(); + private final ModelMapper modelMapper = new ModelMapper(); public org.onap.aai.domain.yang.ServiceInstance mapServiceInstance(ServiceInstance serviceInstance) { if (modelMapper.getTypeMap(ServiceInstance.class, org.onap.aai.domain.yang.ServiceInstance.class) == null) { diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBBTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBBTest.java index 24bbc78afb..e360dc7c42 100644 --- a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBBTest.java +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/flowspecific/tasks/GenericCDSProcessingBBTest.java @@ -102,8 +102,8 @@ public class GenericCDSProcessingBBTest extends BaseTaskTest { AbstractCDSPropertiesBean cdsBean = prepareCDSBean(); doReturn(cdsBean).when(generatePayloadForCds).buildCdsPropertiesBean(buildingBlockExecution); - doNothing().when(cdsDispather).constructExecutionServiceInputObject(buildingBlockExecution); - doNothing().when(cdsDispather).sendRequestToCDSClient(buildingBlockExecution); + doNothing().when(cdsDispather).constructExecutionServiceInputObjectBB(buildingBlockExecution); + doNothing().when(cdsDispather).sendRequestToCDSClientBB(buildingBlockExecution); // when Boolean isUnderstandable = controllerRunnable.understand(controllerContext); diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasksTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasksTest.java index 3290bb3dce..b0358c51f0 100644 --- a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasksTest.java +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasksTest.java @@ -41,7 +41,6 @@ import org.onap.aai.domain.yang.ServiceInstance; import org.onap.aai.domain.yang.VfModule; import org.onap.aai.domain.yang.VolumeGroup; import org.onap.so.bpmn.BaseTaskTest; -import org.onap.so.bpmn.common.listener.flowmanipulator.FlowManipulatorListenerRunner; import org.onap.so.bpmn.core.WorkflowException; import org.onap.so.bpmn.servicedecomposition.entities.BuildingBlock; import org.onap.so.bpmn.servicedecomposition.entities.ConfigurationResourceKeys; @@ -90,9 +89,6 @@ public class WorkflowActionBBTasksTest extends BaseTaskTest { @Mock protected Environment environment; - @Mock - private FlowManipulatorListenerRunner flowManipulatorListenerRunner; - @Rule public ExpectedException thrown = ExpectedException.none(); diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionTest.java index 53d1bea1f2..50ff074866 100644 --- a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionTest.java +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionTest.java @@ -3110,9 +3110,11 @@ public class WorkflowActionTest extends BaseTaskTest { private List<OrchestrationFlow> createFlowList(String... flowNames) { List<OrchestrationFlow> result = new ArrayList<>(); + int sequenceNumber = 1; for (String flowName : flowNames) { OrchestrationFlow orchFlow = new OrchestrationFlow(); orchFlow.setFlowName(flowName); + orchFlow.setSequenceNumber(sequenceNumber++); result.add(orchFlow); } return result; diff --git a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListenerTest.java b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListenerTest.java index fdf4d36c89..1d68cf0adb 100644 --- a/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListenerTest.java +++ b/bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/listeners/SkipCDSBuildingBlockListenerTest.java @@ -55,10 +55,10 @@ public class SkipCDSBuildingBlockListenerTest { private static final String PNFModule_TEST_ACTION = "config-assign"; private static final String MODELCUSTOMIZATIONUUID = "123456789"; private static final String BBNAME = "ControllerExecutionBB"; + private static final String COMPLETED = "completed"; private static final boolean ISFIRST = true; private int actual; - private List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); private List<VnfResourceCustomization> vnfResourceCustomization; private List<VfModuleCustomization> vfModuleCustomization; private ExecuteBuildingBlock executeBuildingBlock = new ExecuteBuildingBlock(); @@ -91,6 +91,9 @@ public class SkipCDSBuildingBlockListenerTest { @Test public void testProcessForVNFToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(VNF_SCOPE, VNF_TEST_ACTION, 0); vnfResourceCustomization = getVnfResourceCustomizationList(true); @@ -112,6 +115,9 @@ public class SkipCDSBuildingBlockListenerTest { @Test public void testProcessForVNFNotToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(VNF_SCOPE, VNF_TEST_ACTION, 0); vnfResourceCustomization = getVnfResourceCustomizationList(false); @@ -134,6 +140,9 @@ public class SkipCDSBuildingBlockListenerTest { @Test public void testProcessForVFToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(VF_SCOPE, VFModule_TEST_ACTION, 0); vfModuleCustomization = getVfModuleCustomizationList(true); @@ -153,6 +162,9 @@ public class SkipCDSBuildingBlockListenerTest { @Test public void testProcessForVFNotToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(VF_SCOPE, VFModule_TEST_ACTION, 0); vfModuleCustomization = getVfModuleCustomizationList(false); @@ -172,6 +184,9 @@ public class SkipCDSBuildingBlockListenerTest { @Test public void testProcessForPNFToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(PNF_SCOPE, PNFModule_TEST_ACTION, 0); pnfResourceCustomization = getPnfResourceCustomization(true); @@ -190,7 +205,32 @@ public class SkipCDSBuildingBlockListenerTest { } @Test + public void testProcessForPNFToSkipCDSBBLastBBInList() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + // given + setBuildingBlockAndCurrentSequence(PNF_SCOPE, PNFModule_TEST_ACTION, 0); + pnfResourceCustomization = getPnfResourceCustomization(true); + + when(catalogDbClient + .getPnfResourceCustomizationByModelCustomizationUUID(executeBuildingBlock.getBuildingBlock().getKey())) + .thenReturn(pnfResourceCustomization); + + // when + skipCDSBuildingBlockListener.run(flowsToExecute, executeBuildingBlock, buildingBlockExecution); + + // then + actual = buildingBlockExecution.getVariable(BBConstants.G_CURRENT_SEQUENCE); + boolean isCompleted = buildingBlockExecution.getVariable(COMPLETED); + assertEquals(true, isCompleted); + assertEquals(0, actual); + } + + @Test public void testProcessForPNFNotToSkipCDSBB() { + List<ExecuteBuildingBlock> flowsToExecute = new ArrayList<>(); + flowsToExecute.add(executeBuildingBlock); + flowsToExecute.add(new ExecuteBuildingBlock()); // given setBuildingBlockAndCurrentSequence(PNF_SCOPE, PNFModule_TEST_ACTION, 0); pnfResourceCustomization = getPnfResourceCustomization(false); |