Author: skabashnyuk
Date: 2009-11-26 05:06:23 -0500 (Thu, 26 Nov 2009)
New Revision: 873
Modified:
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/access/TestAccess.java
Log:
EXOJCR-12 : port of test from 1.10.x 1.11.x
Modified:
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/access/TestAccess.java
===================================================================
---
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/access/TestAccess.java 2009-11-26
08:32:25 UTC (rev 872)
+++
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/access/TestAccess.java 2009-11-26
10:06:23 UTC (rev 873)
@@ -250,6 +250,41 @@
}
/**
+ * tests child-parent permission inheritance
+ *
+ * @throws Exception
+ */
+ public void testPermissionInheritance1() throws Exception
+ {
+ NodeImpl node =
(NodeImpl)accessTestRoot.addNode("testPermissionInheritance");
+ node.addMixin("exo:owneable");
+ node.addMixin("exo:privilegeable");
+
+ // change permission
+ HashMap<String, String[]> perm = new HashMap<String, String[]>();
+ perm.put("exo1", new String[]{PermissionType.ADD_NODE,
PermissionType.READ});
+ node.setPermissions(perm);
+ NodeImpl node1 = (NodeImpl)node.addNode("node1");
+ assertEquals(node.getACL(), node1.getACL());
+ // add grandchild node and test if acl is equal to grandparent
+ NodeImpl node2 = (NodeImpl)node1.addNode("node1");
+ assertEquals(node.getACL(), node2.getACL());
+ NodeImpl node3 = (NodeImpl)node1.addNode("node3");
+ session.save();
+ assertEquals(node3.getACL(), node1.getACL());
+ perm.put("exo2", new String[]{PermissionType.ADD_NODE,
PermissionType.READ});
+ assertEquals(node3.getACL(), node.getACL());
+ node.setPermissions(perm);
+ session.save();
+ node1 = (NodeImpl)node.getNode("node1");
+ node3 = (NodeImpl)node1.getNode("node3");
+
+ assertEquals(node3.getACL(), node.getACL());
+ assertEquals(((ExtendedNode)node.getNode("node1")).getACL(),
node.getACL());
+ assertEquals(((ExtendedNode)node.getNode("node1/node3")).getACL(),
node.getACL());
+ }
+
+ /**
* tests session.checkPermission() method
*
* @throws Exception
Show replies by date