martinweiler commented on code in PR #3601:
URL: 
https://github.com/apache/incubator-kie-kogito-runtimes/pull/3601#discussion_r1700813916


##########
jbpm/jbpm-tests/src/test/java/org/jbpm/bpmn2/StandaloneBPMNProcessTest.java:
##########
@@ -255,69 +320,73 @@ public void testExclusiveSplitXPath() throws Exception {
     }
 
     @Test
-    public void testEventBasedSplit() throws Exception {
-        kruntime = 
createKogitoProcessRuntime("org/jbpm/bpmn2/intermediate/BPMN2-EventBasedSplit.bpmn2");
+    public void testEventBasedSplit() {
+        Application app = ProcessTestHelper.newApplication();
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
SystemOutWorkItemHandler());
 
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new SystemOutWorkItemHandler());
-        // Yes
-        KogitoProcessInstance processInstance = 
kruntime.startProcess("EventBasedSplit");
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new SystemOutWorkItemHandler());
-        kruntime.signalEvent("Yes", "YesValue", processInstance.getStringId());
-        assertProcessInstanceCompleted(processInstance.getStringId(), 
kruntime);
-        // No
-        processInstance = kruntime.startProcess("EventBasedSplit");
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new SystemOutWorkItemHandler());
-        kruntime.signalEvent("No", "NoValue", processInstance.getStringId());
-        assertProcessInstanceCompleted(processInstance.getStringId(), 
kruntime);
+        org.kie.kogito.process.Process<EventBasedSplitModel> processDefinition 
= EventBasedSplitProcess.newProcess(app);
+        EventBasedSplitModel model = processDefinition.createModel();
+        org.kie.kogito.process.ProcessInstance<EventBasedSplitModel> instance 
= processDefinition.createInstance(model);
+        instance.start();
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
SystemOutWorkItemHandler());
+        instance.send(Sig.of("Yes", "YesValue"));
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
+        instance = processDefinition.createInstance(model);
+        instance.start();
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
SystemOutWorkItemHandler());
+        instance.send(Sig.of("No", "NoValue"));
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
     }
 
     @Test
-    public void testEventBasedSplitBefore() throws Exception {
-        // signaling before the split is reached should have no effect
-        kruntime = 
createKogitoProcessRuntime("org/jbpm/bpmn2/intermediate/BPMN2-EventBasedSplit.bpmn2");
+    public void testEventBasedSplitBefore() {
+        Application app = ProcessTestHelper.newApplication();
+        ProcessTestHelper.registerHandler(app, "Email1", new 
DoNothingWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
 
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new DoNothingWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        // Yes
-        KogitoProcessInstance processInstance = 
kruntime.startProcess("EventBasedSplit");
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new DoNothingWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        kruntime.signalEvent("Yes", "YesValue", processInstance.getStringId());
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        // No
-        processInstance = kruntime.startProcess("EventBasedSplit");
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new DoNothingWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        kruntime.signalEvent("No", "NoValue", processInstance.getStringId());
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
+        org.kie.kogito.process.Process<EventBasedSplitModel> processDefinition 
= EventBasedSplitProcess.newProcess(app);
+        EventBasedSplitModel model = processDefinition.createModel();
+        org.kie.kogito.process.ProcessInstance<EventBasedSplitModel> instance 
= processDefinition.createInstance(model);
+        instance.start();
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
DoNothingWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
+        instance.send(Sig.of("Yes", "YesValue"));
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+
+        instance = processDefinition.createInstance(model);
+        instance.start();
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
DoNothingWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
+        instance.send(Sig.of("No", "NoValue"));
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
     }
 
     @Test
-    public void testEventBasedSplitAfter() throws Exception {
-        // signaling the other alternative after one has been selected should
-        // have no effect
-        kruntime = 
createKogitoProcessRuntime("org/jbpm/bpmn2/intermediate/BPMN2-EventBasedSplit.bpmn2");
+    public void testEventBasedSplitAfter() {
+        Application app = ProcessTestHelper.newApplication();
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
 
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        // Yes
-        KogitoProcessInstance processInstance = 
kruntime.startProcess("EventBasedSplit");
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        kruntime.signalEvent("Yes", "YesValue", processInstance.getStringId());
-        
assertThat(processInstance.getState()).isEqualTo(KogitoProcessInstance.STATE_ACTIVE);
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email1", 
new SystemOutWorkItemHandler());
-        kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Email2", 
new DoNothingWorkItemHandler());
-        // No
-        kruntime.signalEvent("No", "NoValue", processInstance.getStringId());
+        org.kie.kogito.process.Process<EventBasedSplitModel> processDefinition 
= EventBasedSplitProcess.newProcess(app);
+        EventBasedSplitModel model = processDefinition.createModel();
+        org.kie.kogito.process.ProcessInstance<EventBasedSplitModel> instance 
= processDefinition.createInstance(model);
+        instance.start();
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
+        instance.send(Sig.of("Yes", "YesValue"));
+        
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+        ProcessTestHelper.registerHandler(app, "Email1", new 
SystemOutWorkItemHandler());
+        ProcessTestHelper.registerHandler(app, "Email2", new 
DoNothingWorkItemHandler());
+
+        instance.send(Sig.of("No", "NoValue"));

Review Comment:
   There is no assert here that actually evaluates if this signal has an 
impact. Maybe at least check if the state of the process is still active?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to