You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by he...@apache.org on 2012/08/31 10:06:42 UTC

svn commit: r1379348 - in /commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3: ArithmeticTest.java IssuesTest.java VarTest.java

Author: henrib
Date: Fri Aug 31 08:06:41 2012
New Revision: 1379348

URL: http://svn.apache.org/viewvc?rev=1379348&view=rev
Log:
Moved issue related test to ArithmeticTest;
Added question related test to VarTest;

Modified:
    commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java
    commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/IssuesTest.java
    commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/VarTest.java

Modified: commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java?rev=1379348&r1=1379347&r2=1379348&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java (original)
+++ commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/ArithmeticTest.java Fri Aug 31 08:06:41 2012
@@ -356,4 +356,53 @@ public class ArithmeticTest extends Jexl
         result = script.execute(null);
         assertTrue((Boolean) result);
     }
-}
\ No newline at end of file
+
+    public static class EmptyTestContext extends MapContext implements JexlContext.NamespaceResolver {
+        public static int log(Object fmt, Object... arr) {
+            //System.out.println(String.format(fmt.toString(), arr));
+            return arr == null ? 0 : arr.length;
+        }
+
+        public static int log(Object fmt, int... arr) {
+            //System.out.println(String.format(fmt.toString(), arr));
+            return arr == null ? 0 : arr.length;
+        }
+
+        @Override
+        public Object resolveNamespace(String name) {
+            return this;
+        }
+    }
+
+    public void testEmpty() throws Exception {
+        Object[] SCRIPTS = {
+            "var x = null; log('x = %s', x);", 0,
+            "var x = 'abc'; log('x = %s', x);", 1,
+            "var x = 333; log('x = %s', x);", 1,
+            "var x = [1, 2]; log('x = %s', x);", 2,
+            "var x = ['a', 'b']; log('x = %s', x);", 2,
+            "var x = {1:'A', 2:'B'}; log('x = %s', x);", 1,
+            "var x = null; return empty(x);", true,
+            "var x = ''; return empty(x);", true,
+            "var x = 'abc'; return empty(x);", false,
+            "var x = 0; return empty(x);", true,
+            "var x = 333; return empty(x);", false,
+            "var x = []; return empty(x);", true,
+            "var x = [1, 2]; return empty(x);", false,
+            "var x = ['a', 'b']; return empty(x);", false,
+            "var x = {:}; return empty(x);", true,
+            "var x = {1:'A', 2:'B'}; return empty(x);", false
+        };
+        JexlEngine jexl = new JexlBuilder().create();
+        JexlContext jc = new EmptyTestContext();
+        JexlScript script;
+
+        for (int e = 0; e < SCRIPTS.length; e += 2) {
+            String stext = (String) SCRIPTS[e];
+            Object expected = SCRIPTS[e + 1];
+            script = jexl.createScript(stext);
+            Object result = script.execute(jc);
+            assertEquals("failed on " + stext, expected, result);
+        }
+    }
+}

Modified: commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/IssuesTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/IssuesTest.java?rev=1379348&r1=1379347&r2=1379348&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/IssuesTest.java (original)
+++ commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/IssuesTest.java Fri Aug 31 08:06:41 2012
@@ -892,54 +892,4 @@ public class IssuesTest extends JexlTest
         result = expr.evaluate(jc);
         assertEquals("EXPR01 result", 22, result);
     }
-
-    public static class Context137 extends MapContext implements JexlContext.NamespaceResolver {
-        public static int log(Object fmt, Object... arr) {
-            //System.out.println(String.format(fmt.toString(), arr));
-            return arr == null ? 0 : arr.length;
-        }
-
-        public static int log(Object fmt, int... arr) {
-            //System.out.println(String.format(fmt.toString(), arr));
-            return arr == null ? 0 : arr.length;
-        }
-
-        @Override
-        public Object resolveNamespace(String name) {
-            return this;
-        }
-    }
-
-    @Test
-    public void test137() throws Exception {
-        Object[] SCRIPTS = {
-            "var x = null; log('x = %s', x);", 0,
-            "var x = 'abc'; log('x = %s', x);", 1,
-            "var x = 333; log('x = %s', x);", 1,
-            "var x = [1, 2]; log('x = %s', x);", 2,
-            "var x = ['a', 'b']; log('x = %s', x);", 2,
-            "var x = {1:'A', 2:'B'}; log('x = %s', x);", 1,
-            "var x = null; return empty(x);", true,
-            "var x = ''; return empty(x);", true,
-            "var x = 'abc'; return empty(x);", false,
-            "var x = 0; return empty(x);", true,
-            "var x = 333; return empty(x);", false,
-            "var x = []; return empty(x);", true,
-            "var x = [1, 2]; return empty(x);", false,
-            "var x = ['a', 'b']; return empty(x);", false,
-            "var x = {:}; return empty(x);", true,
-            "var x = {1:'A', 2:'B'}; return empty(x);", false
-        };
-        JexlEngine jexl = new JexlBuilder().create();
-        JexlContext jc = new Context137();
-        JexlScript script;
-
-        for (int e = 0; e < SCRIPTS.length; e += 2) {
-            String stext = (String) SCRIPTS[e];
-            Object expected = SCRIPTS[e + 1];
-            script = jexl.createScript(stext);
-            Object result = script.execute(jc);
-            assertEquals("failed on " + stext, expected, result);
-        }
-    }
 }

Modified: commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/VarTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/VarTest.java?rev=1379348&r1=1379347&r2=1379348&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/VarTest.java (original)
+++ commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl3/VarTest.java Fri Aug 31 08:06:41 2012
@@ -253,6 +253,21 @@ public class VarTest extends JexlTestCas
         vars = e.getVariables();
         expect = mkref(new String[][]{{"A"}, {"B"}, {"C"}, {"D", "E", "F"}, {"x"} , {"y", "z"}});
         assertTrue(eq(expect, vars));
+
+        e = JEXL.createScript("(A)");
+        vars = e.getVariables();
+        expect = mkref(new String[][]{{"A"}});
+        assertTrue(eq(expect, vars));
+
+        e = JEXL.createScript("not(A)");
+        vars = e.getVariables();
+        expect = mkref(new String[][]{{"A"}});
+        assertTrue(eq(expect, vars));
+
+        e = JEXL.createScript("not((A))");
+        vars = e.getVariables();
+        expect = mkref(new String[][]{{"A"}});
+        assertTrue(eq(expect, vars));
     }
 
     public void testMix() throws Exception {