This is an automated email from the ASF dual-hosted git repository.

aadamchik pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/master by this push:
     new 121ce8e39 String literal expressions escape tests
121ce8e39 is described below

commit 121ce8e39b405fd1f33efff3e7522fd41d4b59aa
Author: Andrus Adamchik <[email protected]>
AuthorDate: Tue Jul 25 15:42:00 2023 -0400

    String literal expressions escape tests
---
 .../apache/cayenne/exp/ExpressionFactoryTest.java  | 38 ++++++++++++++++------
 1 file changed, 28 insertions(+), 10 deletions(-)

diff --git 
a/cayenne-server/src/test/java/org/apache/cayenne/exp/ExpressionFactoryTest.java
 
b/cayenne-server/src/test/java/org/apache/cayenne/exp/ExpressionFactoryTest.java
index db0c2fd8b..b4c7eb662 100644
--- 
a/cayenne-server/src/test/java/org/apache/cayenne/exp/ExpressionFactoryTest.java
+++ 
b/cayenne-server/src/test/java/org/apache/cayenne/exp/ExpressionFactoryTest.java
@@ -19,9 +19,13 @@
 
 package org.apache.cayenne.exp;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import org.apache.cayenne.CayenneRuntimeException;
+import org.apache.cayenne.exp.parser.ASTLike;
+import org.apache.cayenne.exp.parser.ASTLikeIgnoreCase;
+import org.apache.cayenne.exp.parser.ASTObjPath;
+import org.apache.cayenne.exp.parser.ASTTrim;
+import org.junit.Before;
+import org.junit.Test;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -31,13 +35,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.cayenne.CayenneRuntimeException;
-import org.apache.cayenne.exp.parser.ASTLike;
-import org.apache.cayenne.exp.parser.ASTLikeIgnoreCase;
-import org.apache.cayenne.exp.parser.ASTObjPath;
-import org.apache.cayenne.exp.parser.ASTTrim;
-import org.junit.Before;
-import org.junit.Test;
+import static org.junit.Assert.*;
 
 public class ExpressionFactoryTest {
 
@@ -581,6 +579,26 @@ public class ExpressionFactoryTest {
                assertEquals(Expression.DBID_PATH, path.getType());
        }
 
+       @Test
+       public void testExp_StringLiteral_SingleQuoted() {
+               assertEquals("p = \"a\"", ExpressionFactory.exp("p = 
'a'").toString());
+               assertEquals("p = \"\\\\\"", ExpressionFactory.exp("p = 
'\\\\'").toString());
+               assertEquals("p = \"+\"", ExpressionFactory.exp("p = 
'+'").toString());
+               assertEquals("p = \"\\'\"", ExpressionFactory.exp("p = 
'\\''").toString());
+               assertEquals("p = \"\\\"\"", ExpressionFactory.exp("p = 
'\"'").toString());
+               assertEquals("p = \"/\"", ExpressionFactory.exp("p = 
'/'").toString());
+       }
+
+       @Test
+       public void testExp_StringLiteral_DoubleQuoted() {
+               assertEquals("p = \"a\"", ExpressionFactory.exp("p = 
\"a\"").toString());
+               assertEquals("p = \"\\\\\"", ExpressionFactory.exp("p = 
\"\\\\\"").toString());
+               assertEquals("p = \"+\"", ExpressionFactory.exp("p = 
\"+\"").toString());
+               assertEquals("p = \"\\'\"", ExpressionFactory.exp("p = 
\"\\'\"").toString());
+               assertEquals("p = \"\\\"\"", ExpressionFactory.exp("p = 
\"\\\"\"").toString());
+               assertEquals("p = \"/\"", ExpressionFactory.exp("p = 
\"/\"").toString());
+       }
+
        public static class Bean {
                public ExpEnum1 a;
 

Reply via email to