Author: andy
Date: Fri Aug 29 07:48:03 2014
New Revision: 1621254

URL: http://svn.apache.org/r1621254
Log:
JENA-771 : Fix to TransformExpandOneOf so as to pass on changes made lower down.

Modified:
    
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/TransformExpandOneOf.java
    
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/algebra/optimize/TestTransformFilters.java

Modified: 
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/TransformExpandOneOf.java
URL: 
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/TransformExpandOneOf.java?rev=1621254&r1=1621253&r2=1621254&view=diff
==============================================================================
--- 
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/TransformExpandOneOf.java
 (original)
+++ 
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/TransformExpandOneOf.java
 Fri Aug 29 07:48:03 2014
@@ -45,7 +45,7 @@ public class TransformExpandOneOf extend
         ExprList exprList = opFilter.getExprs() ;
         ExprList exprList2 = process(exprList) ;
         if ( exprList2 == null )
-            return opFilter ;
+            return super.transform(opFilter, subOp) ;
         Op opFilter2 = OpFilter.filter(exprList2, subOp) ;
         return opFilter2 ;
     }

Modified: 
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/algebra/optimize/TestTransformFilters.java
URL: 
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/algebra/optimize/TestTransformFilters.java?rev=1621254&r1=1621253&r2=1621254&view=diff
==============================================================================
--- 
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/algebra/optimize/TestTransformFilters.java
 (original)
+++ 
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/algebra/optimize/TestTransformFilters.java
 Fri Aug 29 07:48:03 2014
@@ -33,7 +33,7 @@ public class TestTransformFilters extend
     private Transform t_implicitJoin = new TransformFilterImplicitJoin() ;
     private Transform t_implicitLeftJoin = new TransformImplicitLeftJoin() ;
     
-    @Test public void equality01()
+    @Test public void equality01() 
     {
         testOp("(filter (= ?x <x>) (bgp ( ?s ?p ?x)) )",
              t_equality,
@@ -476,6 +476,22 @@ public class TestTransformFilters extend
              "(filter (exprlist (!= ?x <x>) (!= ?x 2) (!= ?x 3)) (bgp (?s ?p 
?x)))") ;
     }
     
+    @Test
+    public void oneOf4() {
+        // JENA-771
+        testOp("(filter true (distinct (filter (in ?x 1 2) (bgp (?s ?p ?x)) 
)))",
+               t_expandOneOf,
+               "(filter true (distinct (filter (|| (= ?x 1) (= ?x 2) ) (bgp 
(triple ?s ?p ?x)) )))") ;
+    }
+
+    @Test
+    public void oneOf5() {
+        // JENA-771
+        testOp("(filter true (distinct (filter (notin ?x 1 2) (bgp (?s ?p ?x)) 
)))",
+               t_expandOneOf,
+               "(filter true (distinct (filter (exprlist (!= ?x 1) (!= ?x 2)) 
(bgp (triple ?s ?p ?x)) )))") ;
+    }
+
     @Test public void implicitJoin01()
     {
         testOp(


Reply via email to