You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by an...@apache.org on 2017/05/30 16:58:05 UTC

svn commit: r1796894 - /jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java

Author: angela
Date: Tue May 30 16:58:05 2017
New Revision: 1796894

URL: http://svn.apache.org/viewvc?rev=1796894&view=rev
Log:
OAK-5882 : Improve coverage for oak.security code in oak-core (wip)

Modified:
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java

Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java?rev=1796894&r1=1796893&r2=1796894&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/query/UserQueryManagerTest.java Tue May 30 16:58:05 2017
@@ -368,4 +368,71 @@ public class UserQueryManagerTest extend
         Iterator<Authorizable> result = queryMgr.findAuthorizables(q);
         assertResultContainsAuthorizables(result, user);
     }
+
+    @Test
+    public void testQueryBoundWithoutSortOrder() throws Exception {
+        ValueFactory vf = getValueFactory(root);
+        Group g = createGroup("g1", null);
+        g.setProperty(propertyName, vf.createValue(50));
+        Group g2 = createGroup("g2", null);
+        g2.setProperty(propertyName, vf.createValue(60));
+        user.setProperty(propertyName, vf.createValue(101));
+        root.commit();
+
+        Query q = new Query() {
+            @Override
+            public <T> void build(QueryBuilder<T> builder) {
+                builder.setLimit(vf.createValue(100), Long.MAX_VALUE);
+                builder.setCondition(builder.gt(propertyName, vf.createValue(20)));
+            }
+        };
+
+        Iterator<Authorizable> result = queryMgr.findAuthorizables(q);
+        assertResultContainsAuthorizables(result, user, g, g2);
+    }
+
+    @Test
+    public void testQueryBoundWithSortOrder() throws Exception {
+        ValueFactory vf = getValueFactory(root);
+        Group g = createGroup("g1", null);
+        g.setProperty(propertyName, vf.createValue(50));
+        Group g2 = createGroup("g2", null);
+        g2.setProperty(propertyName, vf.createValue(60));
+        user.setProperty(propertyName, vf.createValue(101));
+        root.commit();
+
+        Query q = new Query() {
+            @Override
+            public <T> void build(QueryBuilder<T> builder) {
+                builder.setLimit(vf.createValue(100), Long.MAX_VALUE);
+                builder.setSortOrder(propertyName, QueryBuilder.Direction.ASCENDING);
+                builder.setCondition(builder.gt(propertyName, vf.createValue(20)));
+            }
+        };
+
+        Iterator<Authorizable> result = queryMgr.findAuthorizables(q);
+        assertResultContainsAuthorizables(result, user);
+    }
+
+    @Test
+    public void testQueryBoundWithSortOrderMissingCondition() throws Exception {
+        ValueFactory vf = getValueFactory(root);
+        Group g = createGroup("g1", null);
+        g.setProperty(propertyName, vf.createValue(50));
+        Group g2 = createGroup("g2", null);
+        g2.setProperty(propertyName, vf.createValue(60));
+        user.setProperty(propertyName, vf.createValue(101));
+        root.commit();
+
+        Query q = new Query() {
+            @Override
+            public <T> void build(QueryBuilder<T> builder) {
+                builder.setLimit(vf.createValue(100), Long.MAX_VALUE);
+                builder.setSortOrder(propertyName, QueryBuilder.Direction.ASCENDING);
+            }
+        };
+
+        Iterator<Authorizable> result = queryMgr.findAuthorizables(q);
+        assertResultContainsAuthorizables(result, user);
+    }
 }
\ No newline at end of file