This is an automated email from the ASF dual-hosted git repository.
egonzalez pushed a commit to branch main
in repository
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-runtimes.git
The following commit(s) were added to refs/heads/main by this push:
new d4ec659fb7 [kie-issues#2004] Handle scripts with trailing comment line
in script node (#3990)
d4ec659fb7 is described below
commit d4ec659fb74fa823874b151dababa4bac6e04274
Author: Martin Weiler <[email protected]>
AuthorDate: Tue Jul 22 01:59:13 2025 -0600
[kie-issues#2004] Handle scripts with trailing comment line in script node
(#3990)
* [kie-issues#2004] Support scripts ending with a comment line in a script
node
* Add test
---
.../process/JavaRuleFlowProcessValidator.java | 2 +-
.../process/JavaRuleFlowProcessValidatorTest.java | 32 ++++++++++++++++++++++
2 files changed, 33 insertions(+), 1 deletion(-)
diff --git
a/kogito-codegen-modules/kogito-codegen-processes/src/main/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidator.java
b/kogito-codegen-modules/kogito-codegen-processes/src/main/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidator.java
index c21cbf1349..88798d0d11 100755
---
a/kogito-codegen-modules/kogito-codegen-processes/src/main/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidator.java
+++
b/kogito-codegen-modules/kogito-codegen-processes/src/main/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidator.java
@@ -93,7 +93,7 @@ class JavaRuleFlowProcessValidator extends
RuleFlowProcessValidator {
.parse("import
org.kie.kogito.internal.process.runtime.KogitoProcessContext;\n" +
"import org.jbpm.process.instance.impl.Action;\n" +
" class Test {\n" +
- " Action action = kcontext -> {" +
droolsAction.getConsequence() + "};\n" +
+ " Action action = kcontext -> {" +
droolsAction.getConsequence() + "\n};\n" +
"}");
if (parse.isSuccessful()) {
CompilationUnit unit = parse.getResult().orElseThrow();
diff --git
a/kogito-codegen-modules/kogito-codegen-processes/src/test/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidatorTest.java
b/kogito-codegen-modules/kogito-codegen-processes/src/test/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidatorTest.java
index d8321fa142..6d2602461a 100644
---
a/kogito-codegen-modules/kogito-codegen-processes/src/test/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidatorTest.java
+++
b/kogito-codegen-modules/kogito-codegen-processes/src/test/java/org/kie/kogito/codegen/process/JavaRuleFlowProcessValidatorTest.java
@@ -27,6 +27,7 @@ import org.jbpm.ruleflow.core.RuleFlowProcess;
import org.jbpm.ruleflow.core.RuleFlowProcessFactory;
import org.jbpm.ruleflow.core.WorkflowElementIdentifierFactory;
import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
@@ -34,6 +35,7 @@ import
org.kie.api.definition.process.WorkflowElementIdentifier;
import org.kie.kogito.process.validation.ValidationException;
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
+import static org.assertj.core.api.Assertions.assertThatNoException;
public class JavaRuleFlowProcessValidatorTest {
@@ -100,4 +102,34 @@ public class JavaRuleFlowProcessValidatorTest {
.isThrownBy(() -> validator.validate(process))
.withMessageContaining(message);
}
+
+ @Test
+ public void testScriptWithTrailingCommentLine() {
+ RuleFlowProcessFactory factory =
RuleFlowProcessFactory.createProcess("demo.orders");
+ factory
+ .variable("order", new
ObjectDataType("com.myspace.demo.Order"))
+ .variable("approver", new ObjectDataType("String"))
+ .name("orders")
+ .packageName("com.myspace.demo")
+ .dynamic(false)
+ .version("1.0")
+ .startNode(one)
+ .name("start")
+ .done()
+ .actionNode(two)
+ .name("Dump order 1")
+ .action("java", "System.out.println(\"test\");\n// this is a
comment")
+ .done()
+ .endNode(three)
+ .name("end")
+ .terminate(false)
+ .done()
+ .connection(one, two)
+ .connection(two, three);
+ RuleFlowProcess process = factory.getProcess();
+ ProcessValidator validator =
ProcessValidatorRegistry.getInstance().getValidator(process, null);
+ assertThatNoException()
+ .isThrownBy(() -> validator.validate(process));
+ }
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]