You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by an...@apache.org on 2009/01/21 10:59:03 UTC
svn commit: r736276 - in
/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization:
AbstractEvaluationTest.java AbstractWriteTest.java acl/WriteTest.java
combined/WriteTest.java principalbased/WriteTest.java
Author: angela
Date: Wed Jan 21 01:59:02 2009
New Revision: 736276
URL: http://svn.apache.org/viewvc?rev=736276&view=rev
Log:
JCR-1588: JSR 283: Access Control (some minor test clean up)
Modified:
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractEvaluationTest.java
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractWriteTest.java
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/acl/WriteTest.java
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/combined/WriteTest.java
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractEvaluationTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractEvaluationTest.java?rev=736276&r1=736275&r2=736276&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractEvaluationTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractEvaluationTest.java Wed Jan 21 01:59:02 2009
@@ -71,11 +71,11 @@
AccessControlPolicy[] policies = acMgr.getPolicies(path);
for (int i = 0; i < policies.length; i++) {
acMgr.removePolicy(path, policies[i]);
- superuser.save();
}
+ superuser.save();
} catch (RepositoryException e) {
// log error and ignore
- log.error(e.getMessage());
+ log.debug(e.getMessage());
}
}
@@ -133,8 +133,13 @@
protected abstract Map getRestrictions(Session session, String path) throws RepositoryException, NotExecutableException;
protected JackrabbitAccessControlList modifyPrivileges(String path, String privilege, boolean isAllow) throws NotExecutableException, RepositoryException {
- JackrabbitAccessControlList tmpl = getPolicy(acMgr, path, testUser.getPrincipal());
- tmpl.addEntry(testUser.getPrincipal(), privilegesFromName(privilege), isAllow, getRestrictions(superuser, path));
+ return modifyPrivileges(path, testUser.getPrincipal(), privilegesFromName(privilege), isAllow, getRestrictions(superuser, path));
+ }
+
+ private JackrabbitAccessControlList modifyPrivileges(String path, Principal principal, Privilege[] privileges, boolean isAllow, Map restrictions) throws NotExecutableException, RepositoryException {
+ JackrabbitAccessControlList tmpl = getPolicy(acMgr, path, principal);
+ tmpl.addEntry(principal, privileges, isAllow, restrictions);
+
acMgr.setPolicy(tmpl.getPath(), tmpl);
superuser.save();
@@ -142,4 +147,22 @@
toClear.add(tmpl.getPath());
return tmpl;
}
+
+ protected JackrabbitAccessControlList givePrivileges(String nPath, Privilege[] privileges,
+ Map restrictions) throws NotExecutableException, RepositoryException {
+ return modifyPrivileges(nPath, testUser.getPrincipal(), privileges, true, restrictions);
+ }
+
+ protected JackrabbitAccessControlList givePrivileges(String nPath, Principal principal,
+ Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
+ return modifyPrivileges(nPath, principal, privileges, true, restrictions);
+ }
+
+ protected JackrabbitAccessControlList withdrawPrivileges(String nPath, Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
+ return modifyPrivileges(nPath, testUser.getPrincipal(), privileges, false, restrictions);
+ }
+
+ protected JackrabbitAccessControlList withdrawPrivileges(String nPath, Principal principal, Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
+ return modifyPrivileges(nPath, principal, privileges, false, restrictions);
+ }
}
\ No newline at end of file
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractWriteTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractWriteTest.java?rev=736276&r1=736275&r2=736276&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractWriteTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/AbstractWriteTest.java Wed Jan 21 01:59:02 2009
@@ -40,7 +40,6 @@
import javax.jcr.observation.Event;
import javax.jcr.observation.ObservationManager;
import java.security.Principal;
-import java.util.Map;
/**
* <code>AbstractEvaluationTest</code>...
@@ -86,7 +85,6 @@
protected void tearDown() throws Exception {
// make sure all ac info is removed
- clearACInfo();
if (testGroup != null && testUser != null) {
testGroup.removeMember(testUser);
testGroup.remove();
@@ -94,34 +92,6 @@
super.tearDown();
}
- protected abstract void clearACInfo();
-
- protected JackrabbitAccessControlList givePrivileges(String nPath, Privilege[] privileges,
- Map restrictions) throws NotExecutableException, RepositoryException {
- return givePrivileges(nPath, testUser.getPrincipal(), privileges, restrictions);
- }
-
- protected JackrabbitAccessControlList givePrivileges(String nPath, Principal principal,
- Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
- JackrabbitAccessControlList tmpl = getPolicy(acMgr, nPath, principal);
- tmpl.addEntry(principal, privileges, true, restrictions);
- acMgr.setPolicy(tmpl.getPath(), tmpl);
- superuser.save();
- return tmpl;
- }
-
- protected JackrabbitAccessControlList withdrawPrivileges(String nPath, Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
- return withdrawPrivileges(nPath, testUser.getPrincipal(), privileges, restrictions);
- }
-
- protected JackrabbitAccessControlList withdrawPrivileges(String nPath, Principal principal, Privilege[] privileges, Map restrictions) throws NotExecutableException, RepositoryException {
- JackrabbitAccessControlList tmpl = getPolicy(acMgr, nPath, principal);
- tmpl.addEntry(principal, privileges, false, restrictions);
- acMgr.setPolicy(tmpl.getPath(), tmpl);
- superuser.save();
- return tmpl;
- }
-
protected User getTestUser() {
return testUser;
}
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/acl/WriteTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/acl/WriteTest.java?rev=736276&r1=736275&r2=736276&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/acl/WriteTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/acl/WriteTest.java Wed Jan 21 01:59:02 2009
@@ -50,11 +50,6 @@
}
}
- protected void clearACInfo() {
- // nop since ac information is stored with nodes that get removed
- // during the general tear-down.
- }
-
protected JackrabbitAccessControlList getPolicy(AccessControlManager acM, String path, Principal principal) throws RepositoryException, AccessDeniedException, NotExecutableException {
AccessControlPolicyIterator it = acM.getApplicablePolicies(path);
while (it.hasNext()) {
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/combined/WriteTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/combined/WriteTest.java?rev=736276&r1=736275&r2=736276&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/combined/WriteTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/combined/WriteTest.java Wed Jan 21 01:59:02 2009
@@ -31,11 +31,8 @@
import javax.jcr.AccessDeniedException;
import javax.jcr.RepositoryException;
import java.security.Principal;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
import java.util.Map;
+import java.util.HashMap;
/**
* <code>EvaluationTest</code>...
@@ -44,8 +41,6 @@
private static Logger log = LoggerFactory.getLogger(WriteTest.class);
- private List toClear = new ArrayList();
-
protected void setUp() throws Exception {
super.setUp();
@@ -53,29 +48,12 @@
getPrincipalBasedPolicy(acMgr, path, getTestUser().getPrincipal());
}
- protected void clearACInfo() {
- for (Iterator it = toClear.iterator(); it.hasNext();) {
- String path = it.next().toString();
- try {
- AccessControlPolicy[] policies = acMgr.getPolicies(path);
- for (int i = 0; i < policies.length; i++) {
- acMgr.removePolicy(path, policies[i]);
- superuser.save();
- }
- } catch (RepositoryException e) {
- // log error and ignore
- log.error(e.getMessage());
- }
- }
- }
-
private JackrabbitAccessControlList getPrincipalBasedPolicy(AccessControlManager acM, String path, Principal principal) throws RepositoryException, AccessDeniedException, NotExecutableException {
if (acM instanceof JackrabbitAccessControlManager) {
AccessControlPolicy[] tmpls = ((JackrabbitAccessControlManager) acM).getApplicablePolicies(principal);
for (int i = 0; i < tmpls.length; i++) {
if (tmpls[i] instanceof JackrabbitAccessControlList) {
JackrabbitAccessControlList acl = (JackrabbitAccessControlList) tmpls[i];
- toClear.add(acl.getPath());
return acl;
}
}
@@ -95,8 +73,6 @@
tmpl.addEntry(principal, privileges, true, restrictions);
acMgr.setPolicy(tmpl.getPath(), tmpl);
superuser.save();
- // remember for teardown
- toClear.add(tmpl.getPath());
return tmpl;
}
}
@@ -113,8 +89,6 @@
tmpl.addEntry(principal, privileges, false, restrictions);
acMgr.setPolicy(tmpl.getPath(), tmpl);
superuser.save();
- // remember for teardown
- toClear.add(tmpl.getPath());
return tmpl;
}
}
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java?rev=736276&r1=736275&r2=736276&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java Wed Jan 21 01:59:02 2009
@@ -16,28 +16,25 @@
*/
package org.apache.jackrabbit.core.security.authorization.principalbased;
+import org.apache.jackrabbit.api.jsr283.security.AccessControlManager;
+import org.apache.jackrabbit.api.jsr283.security.AccessControlPolicy;
+import org.apache.jackrabbit.api.jsr283.security.Privilege;
+import org.apache.jackrabbit.core.SessionImpl;
+import org.apache.jackrabbit.core.security.JackrabbitAccessControlManager;
import org.apache.jackrabbit.core.security.authorization.AbstractWriteTest;
import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList;
import org.apache.jackrabbit.core.security.authorization.PrivilegeRegistry;
-import org.apache.jackrabbit.core.security.JackrabbitAccessControlManager;
-import org.apache.jackrabbit.core.SessionImpl;
import org.apache.jackrabbit.test.NotExecutableException;
-import org.apache.jackrabbit.api.jsr283.security.AccessControlManager;
-import org.apache.jackrabbit.api.jsr283.security.AccessControlPolicy;
-import org.apache.jackrabbit.api.jsr283.security.Privilege;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.jcr.RepositoryException;
import javax.jcr.AccessDeniedException;
-import javax.jcr.Session;
import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+import javax.jcr.Session;
import java.security.Principal;
-import java.util.Map;
import java.util.HashMap;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.Iterator;
+import java.util.Map;
/**
* <code>EvaluationTest</code>...
@@ -46,8 +43,6 @@
private static Logger log = LoggerFactory.getLogger(WriteTest.class);
- private List toClear = new ArrayList();
-
protected void setUp() throws Exception {
super.setUp();
@@ -55,29 +50,12 @@
getPolicy(acMgr, path, getTestUser().getPrincipal());
}
- protected void clearACInfo() {
- for (Iterator it = toClear.iterator(); it.hasNext();) {
- String path = it.next().toString();
- try {
- AccessControlPolicy[] policies = acMgr.getPolicies(path);
- for (int i = 0; i < policies.length; i++) {
- acMgr.removePolicy(path, policies[i]);
- superuser.save();
- }
- } catch (RepositoryException e) {
- // log error and ignore
- log.error(e.getMessage());
- }
- }
- }
-
protected JackrabbitAccessControlList getPolicy(AccessControlManager acM, String path, Principal principal) throws RepositoryException, AccessDeniedException, NotExecutableException {
if (acM instanceof JackrabbitAccessControlManager) {
AccessControlPolicy[] policies = ((JackrabbitAccessControlManager) acM).getApplicablePolicies(principal);
for (int i = 0; i < policies.length; i++) {
if (policies[i] instanceof ACLTemplate) {
ACLTemplate acl = (ACLTemplate) policies[i];
- toClear.add(acl.getPath());
return acl;
}
}