yurloc commented on code in PR #5913:
URL:
https://github.com/apache/incubator-kie-drools/pull/5913#discussion_r1597642532
##########
drools-drl/drools-drl-parser-tests/src/test/java/org/drools/drl/parser/antlr4/MiscDRLParserTest.java:
##########
@@ -3727,6 +3727,83 @@ void endAndMultiLineCommentAndRule() {
assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
}
+ @Test
+ void endAndNonParingDoubleQuoteInSingleLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " //System.out.println(\");\n" + // non-paring double quote
in comment
+ " retract($p)\n" +
+ "end\n" +
+ "rule \"R2\" when Person() then end";
+ PackageDescr packageDescr = parseAndGetPackageDescr(text);
+
+ List<RuleDescr> ruleDescrList = packageDescr.getRules();
+ assertThat(ruleDescrList).hasSize(2);
+ assertThat(ruleDescrList.get(0).getName()).isEqualTo("R1");
+ assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
+ }
+
+ @Test
+ void endAndNonParingDoubleQuoteInMultiLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " /*System.out.println\n" +
+ " (\");*/\n" + // non-paring double quote in comment
+ " retract($p)\n" +
+ "end\n" +
+ "rule \"R2\" when Person() then end";
+ PackageDescr packageDescr = parseAndGetPackageDescr(text);
+
+ List<RuleDescr> ruleDescrList = packageDescr.getRules();
+ assertThat(ruleDescrList).hasSize(2);
+ assertThat(ruleDescrList.get(0).getName()).isEqualTo("R1");
+ assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
+ }
+
+ @Test
+ void endAndDoubleQuotationsInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " System.out.println(\"Draw \"+$p1+\" \"+$p2);\n" +
+ " retract($p)\n" +
+ "end\n" +
+ "rule \"R2\" when Person() then end";
+ PackageDescr packageDescr = parseAndGetPackageDescr(text);
+
+ List<RuleDescr> ruleDescrList = packageDescr.getRules();
+ assertThat(ruleDescrList).hasSize(2);
+ assertThat(ruleDescrList.get(0).getName()).isEqualTo("R1");
+ assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
+ }
+
+ @Test
+ void endAndsingleQuotationsInRHS() {
Review Comment:
```suggestion
void endAndSingleQuotationsInRHS() {
```
##########
drools-drl/drools-drl-parser-tests/src/test/java/org/drools/drl/parser/antlr4/MiscDRLParserTest.java:
##########
@@ -3727,6 +3727,83 @@ void endAndMultiLineCommentAndRule() {
assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
}
+ @Test
+ void endAndNonParingDoubleQuoteInSingleLineCommentInRHS() {
Review Comment:
```suggestion
void endAndNonPairingDoubleQuoteInSingleLineCommentInRHS() {
```
##########
drools-drl/drools-drl-parser-tests/src/test/java/org/drools/drl/parser/antlr4/MiscDRLParserTest.java:
##########
@@ -3727,6 +3727,83 @@ void endAndMultiLineCommentAndRule() {
assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
}
+ @Test
+ void endAndNonParingDoubleQuoteInSingleLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " //System.out.println(\");\n" + // non-paring double quote
in comment
Review Comment:
```suggestion
" //System.out.println(\");\n" + // non-pairing double
quote in comment
```
##########
drools-drl/drools-drl-parser-tests/src/test/java/org/drools/drl/parser/antlr4/MiscDRLParserTest.java:
##########
@@ -3727,6 +3727,83 @@ void endAndMultiLineCommentAndRule() {
assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
}
+ @Test
+ void endAndNonParingDoubleQuoteInSingleLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " //System.out.println(\");\n" + // non-paring double quote
in comment
+ " retract($p)\n" +
+ "end\n" +
+ "rule \"R2\" when Person() then end";
+ PackageDescr packageDescr = parseAndGetPackageDescr(text);
+
+ List<RuleDescr> ruleDescrList = packageDescr.getRules();
+ assertThat(ruleDescrList).hasSize(2);
+ assertThat(ruleDescrList.get(0).getName()).isEqualTo("R1");
+ assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
+ }
+
+ @Test
+ void endAndNonParingDoubleQuoteInMultiLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " /*System.out.println\n" +
+ " (\");*/\n" + // non-paring double quote in comment
Review Comment:
```suggestion
" (\");*/\n" + // non-pairing double quote in
comment
```
##########
drools-drl/drools-drl-parser-tests/src/test/java/org/drools/drl/parser/antlr4/MiscDRLParserTest.java:
##########
@@ -3727,6 +3727,83 @@ void endAndMultiLineCommentAndRule() {
assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
}
+ @Test
+ void endAndNonParingDoubleQuoteInSingleLineCommentInRHS() {
+ final String text = "package org.drools\n" +
+ "rule R1\n" +
+ "when\n" +
+ " $p : Person()\n" +
+ "then\n" +
+ " //System.out.println(\");\n" + // non-paring double quote
in comment
+ " retract($p)\n" +
+ "end\n" +
+ "rule \"R2\" when Person() then end";
+ PackageDescr packageDescr = parseAndGetPackageDescr(text);
+
+ List<RuleDescr> ruleDescrList = packageDescr.getRules();
+ assertThat(ruleDescrList).hasSize(2);
+ assertThat(ruleDescrList.get(0).getName()).isEqualTo("R1");
+ assertThat(ruleDescrList.get(1).getName()).isEqualTo("R2");
+ }
+
+ @Test
+ void endAndNonParingDoubleQuoteInMultiLineCommentInRHS() {
Review Comment:
```suggestion
void endAndNonPairingDoubleQuoteInMultiLineCommentInRHS() {
```
--
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]