martinweiler commented on code in PR #3610:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/3610#discussion_r1711746859
##########
jbpm/jbpm-tests/src/test/java/org/jbpm/bpmn2/IntermediateEventTest.java:
##########
@@ -1182,136 +1236,142 @@ public void testIntermediateCatchEventSignal() throws
Exception {
}
@Test
- public void testIntermediateCatchEventMessage() throws Exception {
- kruntime =
createKogitoProcessRuntime("org/jbpm/bpmn2/intermediate/BPMN2-IntermediateCatchEventMessage.bpmn2");
- kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Human
Task", new SystemOutWorkItemHandler());
- KogitoProcessInstance processInstance =
kruntime.startProcess("IntermediateCatchEventMessage");
- assertProcessInstanceActive(processInstance); // now signal process
instance
- kruntime.signalEvent("Message-HelloMessage", "SomeValue",
processInstance.getStringId());
- assertProcessInstanceFinished(processInstance, kruntime);
-
+ public void testIntermediateCatchEventMessage() {
+ Application app = ProcessTestHelper.newApplication();
+ ProcessTestHelper.registerHandler(app, "Human Task", new
SystemOutWorkItemHandler());
+ org.kie.kogito.process.Process<IntermediateCatchEventMessageModel>
processDefinition = IntermediateCatchEventMessageProcess.newProcess(app);
+ IntermediateCatchEventMessageModel model =
processDefinition.createModel();
+
org.kie.kogito.process.ProcessInstance<IntermediateCatchEventMessageModel>
instance = processDefinition.createInstance(model);
+ instance.start();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+ instance.send(Sig.of("Message-HelloMessage", "SomeValue"));
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
}
@Test
- public void testIntermediateCatchEventMessageWithRef() throws Exception {
- kruntime = createKogitoProcessRuntime(
-
"org/jbpm/bpmn2/intermediate/BPMN2-IntermediateCatchEventMessageWithRef.bpmn2");
- kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Human
Task", new SystemOutWorkItemHandler());
- KogitoProcessInstance processInstance =
kruntime.startProcess("IntermediateCatchEventMessageWithRef");
- assertProcessInstanceActive(processInstance);
-
- // now signal process instance
- kruntime.signalEvent("Message-HelloMessage", "SomeValue",
processInstance.getStringId());
- assertProcessInstanceFinished(processInstance, kruntime);
-
+ public void testIntermediateCatchEventMessageWithRef() {
+ Application app = ProcessTestHelper.newApplication();
+ ProcessTestHelper.registerHandler(app, "Human Task", new
SystemOutWorkItemHandler());
+
org.kie.kogito.process.Process<IntermediateCatchEventMessageWithRefModel>
processDefinition = IntermediateCatchEventMessageWithRefProcess.newProcess(app);
+ IntermediateCatchEventMessageWithRefModel model =
processDefinition.createModel();
+
org.kie.kogito.process.ProcessInstance<IntermediateCatchEventMessageWithRefModel>
instance = processDefinition.createInstance(model);
+ instance.start();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+ instance.send(Sig.of("Message-HelloMessage", "SomeValue"));
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
}
@Test
- public void testIntermediateCatchEventTimerDuration() throws Exception {
- ProcessCompletedCountDownProcessEventListener countDownListener = new
ProcessCompletedCountDownProcessEventListener();
+ public void testIntermediateCatchEventTimerDuration() {
- kruntime = createKogitoProcessRuntime(
-
"org/jbpm/bpmn2/intermediate/BPMN2-IntermediateCatchEventTimerDuration.bpmn2");
- kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Human
Task", new DoNothingWorkItemHandler());
- kruntime.getProcessEventManager().addEventListener(countDownListener);
- KogitoProcessInstance processInstance =
kruntime.startProcess("IntermediateCatchEventTimerDuration");
- assertProcessInstanceActive(processInstance);
+ Application app = ProcessTestHelper.newApplication();
- // now wait for 1 second for timer to trigger
- countDownListener.waitTillCompleted();
+ ProcessCompletedCountDownProcessEventListener countDownListener = new
ProcessCompletedCountDownProcessEventListener(1);
+ ProcessTestHelper.registerProcessEventListener(app, countDownListener);
+ ProcessTestHelper.registerHandler(app, "Human Task", new
DoNothingWorkItemHandler());
- assertProcessInstanceFinished(processInstance, kruntime);
+
org.kie.kogito.process.Process<IntermediateCatchEventTimerDurationModel>
processDefinition = IntermediateCatchEventTimerDurationProcess.newProcess(app);
+ IntermediateCatchEventTimerDurationModel model =
processDefinition.createModel();
+
org.kie.kogito.process.ProcessInstance<IntermediateCatchEventTimerDurationModel>
instance = processDefinition.createInstance(model);
+ instance.start();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+ countDownListener.waitTillCompleted();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
}
@Test
- public void testIntermediateCatchEventTimerDateISO() throws Exception {
+ public void testIntermediateCatchEventTimerDateISO() {
+ Application app = ProcessTestHelper.newApplication();
ProcessCompletedCountDownProcessEventListener countDownListener = new
ProcessCompletedCountDownProcessEventListener();
+ ProcessTestHelper.registerProcessEventListener(app, countDownListener);
+ ProcessTestHelper.registerHandler(app, "Human Task", new
DoNothingWorkItemHandler());
- kruntime = createKogitoProcessRuntime(
-
"org/jbpm/bpmn2/intermediate/BPMN2-IntermediateCatchEventTimerDateISO.bpmn2");
- kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Human
Task", new DoNothingWorkItemHandler());
- kruntime.getProcessEventManager().addEventListener(countDownListener);
-
- HashMap<String, Object> params = new HashMap<>();
+
org.kie.kogito.process.Process<IntermediateCatchEventTimerDateISOModel>
processDefinition = IntermediateCatchEventTimerDateISOProcess.newProcess(app);
+ IntermediateCatchEventTimerDateISOModel model =
processDefinition.createModel();
OffsetDateTime plusTwoSeconds = OffsetDateTime.now().plusSeconds(2);
- params.put("date", plusTwoSeconds.toString());
- KogitoProcessInstance processInstance =
kruntime.startProcess("IntermediateCatchEventTimerDateISO", params);
- assertProcessInstanceActive(processInstance);
- // now wait for 1 second for timer to trigger
- countDownListener.waitTillCompleted();
+ model.setDate(plusTwoSeconds.toString());
+
org.kie.kogito.process.ProcessInstance<IntermediateCatchEventTimerDateISOModel>
instance = processDefinition.createInstance(model);
+ instance.start();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
- assertProcessInstanceFinished(processInstance, kruntime);
+ boolean completed = countDownListener.waitTillCompleted(3000);
+ assertThat(completed).isTrue();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_COMPLETED);
}
@Test
- public void testIntermediateCatchEventTimerDurationISO() throws Exception {
- ProcessCompletedCountDownProcessEventListener countDownListener = new
ProcessCompletedCountDownProcessEventListener();
-
- kruntime = createKogitoProcessRuntime(
-
"org/jbpm/bpmn2/intermediate/BPMN2-IntermediateCatchEventTimerDurationISO.bpmn2");
- kruntime.getKogitoWorkItemManager().registerWorkItemHandler("Human
Task", new DoNothingWorkItemHandler());
- kruntime.getProcessEventManager().addEventListener(countDownListener);
+ public void testIntermediateCatchEventTimerDurationISO() {
+ Application app = ProcessTestHelper.newApplication();
- KogitoProcessInstance processInstance =
kruntime.startProcess("IntermediateCatchEventTimerDurationISO");
- assertProcessInstanceActive(processInstance);
- // now wait for 1.5 second for timer to trigger
- countDownListener.waitTillCompleted();
+ ProcessCompletedCountDownProcessEventListener countDownListener = new
ProcessCompletedCountDownProcessEventListener();
+ ProcessTestHelper.registerProcessEventListener(app, countDownListener);
+ ProcessTestHelper.registerHandler(app, "Human Task", new
DoNothingWorkItemHandler());
- assertProcessInstanceFinished(processInstance, kruntime);
+
org.kie.kogito.process.Process<IntermediateCatchEventTimerDurationISOModel>
processDefinition =
IntermediateCatchEventTimerDurationISOProcess.newProcess(app);
+ IntermediateCatchEventTimerDurationISOModel model =
processDefinition.createModel();
+
org.kie.kogito.process.ProcessInstance<IntermediateCatchEventTimerDurationISOModel>
instance = processDefinition.createInstance(model);
+ instance.start();
+
assertThat(instance).extracting(ProcessInstance::status).isEqualTo(ProcessInstance.STATE_ACTIVE);
+ boolean completed = countDownListener.waitTillCompleted(2000);
Review Comment:
The timer in the process is defined as PT1S. Are we ok limiting the wait
time to 2s, or could this cause intermittent test failures if the environment
is slow @elguardian ?
--
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]