Author: claude
Date: Sun Aug 25 18:28:04 2013
New Revision: 1517360

URL: http://svn.apache.org/r1517360
Log:
Removed System.out prints.
Fixed OpRewriterTest
changed apache-jena dependency to apache-jena-libs

Modified:
    jena/Experimental/jena-security/   (props changed)
    jena/Experimental/jena-security/pom.xml
    
jena/Experimental/jena-security/src/main/java/org/apache/jena/security/query/SecuredQueryEngine.java
    
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
    
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/QueryEngineTest.java
    
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/rewriter/OpRewriterTest.java

Propchange: jena/Experimental/jena-security/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Aug 25 18:28:04 2013
@@ -0,0 +1,5 @@
+.classpath
+
+.project
+
+.settings

Modified: jena/Experimental/jena-security/pom.xml
URL: 
http://svn.apache.org/viewvc/jena/Experimental/jena-security/pom.xml?rev=1517360&r1=1517359&r2=1517360&view=diff
==============================================================================
--- jena/Experimental/jena-security/pom.xml (original)
+++ jena/Experimental/jena-security/pom.xml Sun Aug 25 18:28:04 2013
@@ -117,7 +117,7 @@
                </dependency>
                <dependency>
                        <groupId>org.apache.jena</groupId>
-                       <artifactId>apache-jena</artifactId>
+                       <artifactId>apache-jena-libs</artifactId>
                        <version>2.10.2-SNAPSHOT</version>
                        <type>pom</type>
                </dependency>

Modified: 
jena/Experimental/jena-security/src/main/java/org/apache/jena/security/query/SecuredQueryEngine.java
URL: 
http://svn.apache.org/viewvc/jena/Experimental/jena-security/src/main/java/org/apache/jena/security/query/SecuredQueryEngine.java?rev=1517360&r1=1517359&r2=1517360&view=diff
==============================================================================
--- 
jena/Experimental/jena-security/src/main/java/org/apache/jena/security/query/SecuredQueryEngine.java
 (original)
+++ 
jena/Experimental/jena-security/src/main/java/org/apache/jena/security/query/SecuredQueryEngine.java
 Sun Aug 25 18:28:04 2013
@@ -75,7 +75,6 @@ public class SecuredQueryEngine extends 
                SecuredQueryEngine.LOG.debug("After: {}", result);
                result = super.modifyOp(result);
                SecuredQueryEngine.LOG.debug("After Optimize: {}", result);
-               System.out.println(result);
                return result;
        }
 

Modified: 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
URL: 
http://svn.apache.org/viewvc/jena/Experimental/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java?rev=1517360&r1=1517359&r2=1517360&view=diff
==============================================================================
--- 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
 (original)
+++ 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
 Sun Aug 25 18:28:04 2013
@@ -45,7 +45,7 @@ public class SecuredAssemblerTest
                model = ModelFactory.createDefaultModel();
                URL url = 
SecuredAssemblerTest.class.getClassLoader().getResource( 
SecuredAssemblerTest.class.getName().replace(".", "/")+".ttl");
                model.read( url.toURI().toString(), "TURTLE" );
-               model.write( System.out, "TURTLE" );
+               //model.write( System.out, "TURTLE" );
        }
        
        @Test

Modified: 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/QueryEngineTest.java
URL: 
http://svn.apache.org/viewvc/jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/QueryEngineTest.java?rev=1517360&r1=1517359&r2=1517360&view=diff
==============================================================================
--- 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/QueryEngineTest.java
 (original)
+++ 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/QueryEngineTest.java
 Sun Aug 25 18:28:04 2013
@@ -137,7 +137,6 @@ public class QueryEngineTest
                                {
                                        count++;
                                        final QuerySolution soln = 
results.nextSolution();
-                                       System.out.println(soln);
                                }
                                Assert.assertEquals(8, count);
                        }

Modified: 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/rewriter/OpRewriterTest.java
URL: 
http://svn.apache.org/viewvc/jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/rewriter/OpRewriterTest.java?rev=1517360&r1=1517359&r2=1517360&view=diff
==============================================================================
--- 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/rewriter/OpRewriterTest.java
 (original)
+++ 
jena/Experimental/jena-security/src/test/java/org/apache/jena/security/query/rewriter/OpRewriterTest.java
 Sun Aug 25 18:28:04 2013
@@ -19,43 +19,94 @@ package org.apache.jena.security.query.r
 
 import com.hp.hpl.jena.graph.NodeFactory;
 import com.hp.hpl.jena.graph.Triple;
+import com.hp.hpl.jena.sparql.algebra.Op;
 import com.hp.hpl.jena.sparql.algebra.op.OpBGP;
+import com.hp.hpl.jena.sparql.algebra.op.OpFilter;
 import com.hp.hpl.jena.sparql.core.BasicPattern;
+import com.hp.hpl.jena.sparql.expr.ExprList;
 import com.hp.hpl.jena.vocabulary.RDF;
 
 import java.util.Arrays;
 
+import org.apache.jena.security.AccessDeniedException;
 import org.apache.jena.security.MockSecurityEvaluator;
 import org.apache.jena.security.SecurityEvaluator;
 import org.apache.jena.security.query.rewriter.OpRewriter;
+import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
 public class OpRewriterTest
 {
        private OpRewriter rewriter;
-       private SecurityEvaluator securityEvaluator = new 
MockSecurityEvaluator( true, true, true, true, true, true );
+       private Triple[] triples;
        
        public OpRewriterTest()
        {
        }
        
        @Before
-       public void setUp()
+       public void setup()
        {
-               rewriter = new OpRewriter( securityEvaluator, 
"http://example.com/dummy";);
+               triples = new Triple[] {
+                               new Triple( NodeFactory.createVariable("foo"), 
RDF.type.asNode(), NodeFactory.createURI( "http://example.com/class";)),
+                               new Triple( NodeFactory.createVariable("foo"), 
NodeFactory.createAnon(), NodeFactory.createVariable("bar")),
+                               new Triple( NodeFactory.createVariable("bar"), 
NodeFactory.createAnon(), NodeFactory.createVariable("baz")),
+               };
        }
        
        @Test
        public void testBGP()
        {
+               SecurityEvaluator securityEvaluator =  new 
MockSecurityEvaluator( true, true, true, true, true, true );
+               rewriter = new OpRewriter( securityEvaluator, 
"http://example.com/dummy";);
+               
+               rewriter.visit( new OpBGP( 
BasicPattern.wrap(Arrays.asList(triples))));
+               Op op = rewriter.getResult();
+               Assert.assertTrue( "Should have been an OpFilter", op 
instanceof OpFilter );
+               OpFilter filter = (OpFilter) op;
+               ExprList eLst = filter.getExprs();
+               Assert.assertEquals( 1, eLst.size());
+               Assert.assertTrue( "Should have been a SecuredFunction", 
eLst.get(0) instanceof SecuredFunction);
+               op = filter.getSubOp();
+               Assert.assertTrue( "Should have been a OpBGP", op instanceof 
OpBGP);
+               BasicPattern basicPattern = ((OpBGP)op).getPattern();
+               Assert.assertEquals( 3, basicPattern.size() );
+               
+               Triple t = basicPattern.get(0);
+               Assert.assertEquals(  NodeFactory.createVariable("foo"), 
t.getSubject());
+               Assert.assertEquals( RDF.type.asNode(), t.getPredicate());
+               Assert.assertEquals( NodeFactory.createURI( 
"http://example.com/class";), t.getObject());
+               
+               t = basicPattern.get(1);
+               Assert.assertEquals(  NodeFactory.createVariable("foo"), 
t.getSubject());
+               Assert.assertTrue( "Should have been blank", 
t.getPredicate().isBlank());
+               Assert.assertEquals( NodeFactory.createVariable("bar"), 
t.getObject()); 
+               
+               t = basicPattern.get(2);
+               Assert.assertEquals( NodeFactory.createVariable("bar"), 
t.getSubject() );
+               Assert.assertTrue( "Should have been blank", 
t.getPredicate().isBlank());
+               Assert.assertEquals( NodeFactory.createVariable("baz"), 
t.getObject()); 
+       }
+       
+       @Test
+       public void testBGPNoReadAccess()
+       {
+               SecurityEvaluator securityEvaluator =  new 
MockSecurityEvaluator( true, true, false, true, true, true );
+               rewriter = new OpRewriter( securityEvaluator, 
"http://example.com/dummy";);
                Triple[] triples = {
                                new Triple( NodeFactory.createVariable("foo"), 
RDF.type.asNode(), NodeFactory.createURI( "http://example.com/class";)),
                                new Triple( NodeFactory.createVariable("foo"), 
NodeFactory.createAnon(), NodeFactory.createVariable("bar")),
                                new Triple( NodeFactory.createVariable("bar"), 
NodeFactory.createAnon(), NodeFactory.createVariable("baz")),
                };
-               rewriter.visit( new OpBGP( 
BasicPattern.wrap(Arrays.asList(triples))));
-               System.out.println( rewriter.getResult());
+               try {
+                       rewriter.visit( new OpBGP( 
BasicPattern.wrap(Arrays.asList(triples))));
+                       Assert.fail( "Should have thrown 
AccessDeniedException");
+               }
+               catch (AccessDeniedException e)
+               {
+                       // expected
+               }
        }
 
 }


Reply via email to