Skip to content

Commit

Permalink
SNI-5921 disallow upload additional event to create wa task (#1045)
Browse files Browse the repository at this point in the history
Co-authored-by: kdaHMCTS <[email protected]>
  • Loading branch information
rishikrsharma and kdaHMCTS authored Aug 13, 2024
1 parent bc33230 commit d19ac57
Show file tree
Hide file tree
Showing 4 changed files with 65 additions and 4 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:modeler="http://camunda.org/schema/modeler/1.0" id="Definitions_0yui333" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.20.0" modeler:executionPlatform="Camunda Platform" modeler:executionPlatformVersion="7.15.0">
<bpmn:collaboration id="terminateDocUploadGeneralApplicationBusinessProcess">
<bpmn:participant id="EndDocUploadBusinessProcessGASpecTaskId" name="Termination phase" processRef="GA_DocUploadEndBusinessProcess" />
</bpmn:collaboration>
<bpmn:process id="GA_DocUploadEndBusinessProcess" name="GA doc upload end business process" isExecutable="true">
<bpmn:serviceTask id="EndDocUploadGeneralApplicationBusinessProcessTaskId" name="End Doc Upload General Application Business Process" camunda:type="external" camunda:topic="END_DOC_UPLOAD_BUSINESS_PROCESS_GASPEC">
<bpmn:incoming>Flow_0nhnyjm</bpmn:incoming>
<bpmn:outgoing>Flow_1jw9p2g</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:startEvent id="Event_1dagxjy">
<bpmn:outgoing>Flow_0nhnyjm</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:sequenceFlow id="Flow_0nhnyjm" sourceRef="Event_1dagxjy" targetRef="EndDocUploadGeneralApplicationBusinessProcessTaskId" />
<bpmn:sequenceFlow id="Flow_1jw9p2g" sourceRef="EndDocUploadGeneralApplicationBusinessProcessTaskId" targetRef="Event_1ppqfy0" />
<bpmn:endEvent id="Event_1ppqfy0">
<bpmn:incoming>Flow_1jw9p2g</bpmn:incoming>
</bpmn:endEvent>
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="terminateDocUploadGeneralApplicationBusinessProcess">
<bpmndi:BPMNShape id="Participant_17lzkvb_di" bpmnElement="EndDocUploadBusinessProcessGASpecTaskId" isHorizontal="true">
<dc:Bounds x="129" y="100" width="571" height="230" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1dcrftc_di" bpmnElement="EndDocUploadGeneralApplicationBusinessProcessTaskId">
<dc:Bounds x="379" y="185" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1dagxjy_di" bpmnElement="Event_1dagxjy">
<dc:Bounds x="288" y="207" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1ppqfy0_di" bpmnElement="Event_1ppqfy0">
<dc:Bounds x="592" y="207" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_0nhnyjm_di" bpmnElement="Flow_0nhnyjm">
<di:waypoint x="324" y="225" />
<di:waypoint x="379" y="225" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1jw9p2g_di" bpmnElement="Flow_1jw9p2g">
<di:waypoint x="479" y="225" />
<di:waypoint x="592" y="225" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn:definitions>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:modeler="http://camunda.org/schema/modeler/1.0" id="Definitions_038vuuf" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.5.1" modeler:executionPlatform="Camunda Platform" modeler:executionPlatformVersion="7.15.0">
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:modeler="http://camunda.org/schema/modeler/1.0" id="Definitions_038vuuf" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.20.0" modeler:executionPlatform="Camunda Platform" modeler:executionPlatformVersion="7.15.0">
<bpmn:message id="Message_0yl8iuc" name="UPLOAD_ADDL_DOCUMENTS" />
<bpmn:collaboration id="UploadAdditionalDocGeneralApplication">
<bpmn:extensionElements />
Expand Down Expand Up @@ -42,7 +42,7 @@
<bpmn:endEvent id="Event_0ii7uzg">
<bpmn:incoming>Flow_0n6ts4r</bpmn:incoming>
</bpmn:endEvent>
<bpmn:callActivity id="Activity_0eo8p2p" name="End Business Process" calledElement="GA_EndBusinessProcess">
<bpmn:callActivity id="Activity_0eo8p2p" name="Doc Upload End Business Process" calledElement="GA_DocUploadEndBusinessProcess">
<bpmn:extensionElements>
<camunda:in variables="all" />
</bpmn:extensionElements>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,14 @@ public abstract class BpmnBaseGAAfterPaymentTest {
public static final String START_BUSINESS_EVENT = "START_GA_BUSINESS_PROCESS";
public static final String START_BUSINESS_ACTIVITY = "StartGeneralApplicationBusinessProcessTaskId";
public static final String END_BUSINESS_PROCESS = "END_BUSINESS_PROCESS_GASPEC";
public static final String END_DOC_UPLOAD_BUSINESS_PROCESS = "END_DOC_UPLOAD_BUSINESS_PROCESS_GASPEC";
public static final String ERROR_CODE = "TEST_CODE";

public final String bpmnFileName;
public final String processId;
public Deployment deployment;
public Deployment endBusinessProcessDeployment;
public Deployment endBusinessProcessDeploymentDocUpload;
public Deployment startBusinessProcessDeployment;
public static ProcessEngine engine;

Expand Down Expand Up @@ -67,6 +69,10 @@ void setup() {
.createDeployment()
.addClasspathResource(String.format(DIAGRAM_PATH, "end_general_application_business_process.bpmn"))
.deploy();
endBusinessProcessDeploymentDocUpload = engine.getRepositoryService()
.createDeployment()
.addClasspathResource(String.format(DIAGRAM_PATH, "end_doc_upload_general_application_business_process.bpmn"))
.deploy();
deployment = engine.getRepositoryService()
.createDeployment()
.addClasspathResource(String.format(DIAGRAM_PATH, bpmnFileName))
Expand All @@ -78,6 +84,7 @@ void setup() {
void tearDown() {
engine.getRepositoryService().deleteDeployment(startBusinessProcessDeployment.getId());
engine.getRepositoryService().deleteDeployment(endBusinessProcessDeployment.getId());
engine.getRepositoryService().deleteDeployment(endBusinessProcessDeploymentDocUpload.getId());
engine.getRepositoryService().deleteDeployment(deployment.getId());
}

Expand Down Expand Up @@ -257,6 +264,15 @@ public void completeBusinessProcess(ExternalTask externalTask) {
completeTask(lockedEndBusinessProcessTask.get(0).getId());
}

public void completeBusinessProcessDocUpload(ExternalTask externalTask) {
assertThat(externalTask.getTopicName()).isEqualTo("END_DOC_UPLOAD_BUSINESS_PROCESS_GASPEC");

List<LockedExternalTask> lockedEndBusinessProcessTask = fetchAndLockTask("END_DOC_UPLOAD_BUSINESS_PROCESS_GASPEC");

assertThat(lockedEndBusinessProcessTask).hasSize(1);
completeTask(lockedEndBusinessProcessTask.get(0).getId());
}

public void assertCronTriggerFiresAtExpectedTime(CronExpression expression,
LocalDateTime now,
LocalDateTime nextDate) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ void shouldSuccessfullyCompleteUploadAddlDocuments_whenCalled() {
);

//end business process
ExternalTask endBusinessProcess = assertNextExternalTask(END_BUSINESS_PROCESS);
completeBusinessProcess(endBusinessProcess);
ExternalTask endBusinessProcess = assertNextExternalTask(END_DOC_UPLOAD_BUSINESS_PROCESS);
completeBusinessProcessDocUpload(endBusinessProcess);

assertNoExternalTasksLeft();
}
Expand Down

0 comments on commit d19ac57

Please sign in to comment.