Return-Path: Delivered-To: apmail-jackrabbit-commits-archive@www.apache.org Received: (qmail 98218 invoked from network); 8 Jul 2009 13:59:41 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 8 Jul 2009 13:59:41 -0000 Received: (qmail 41466 invoked by uid 500); 8 Jul 2009 13:59:51 -0000 Delivered-To: apmail-jackrabbit-commits-archive@jackrabbit.apache.org Received: (qmail 41390 invoked by uid 500); 8 Jul 2009 13:59:44 -0000 Mailing-List: contact commits-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jackrabbit.apache.org Delivered-To: mailing list commits@jackrabbit.apache.org Received: (qmail 41381 invoked by uid 99); 8 Jul 2009 13:59:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Jul 2009 13:59:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Jul 2009 13:59:34 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 9C8D423889D7; Wed, 8 Jul 2009 13:58:17 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r792142 [17/35] - in /jackrabbit/sandbox/JCR-1456: ./ jackrabbit-api/src/main/java/org/apache/jackrabbit/api/ jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/ jackrabbit-core/ jackrabbit-core/src/main/java/org/apache/jackrab... Date: Wed, 08 Jul 2009 13:57:46 -0000 To: commits@jackrabbit.apache.org From: jukka@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090708135817.9C8D423889D7@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplateTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplateTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplateTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplateTest.java Wed Jul 8 13:57:13 2009 @@ -16,15 +16,15 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; import org.apache.jackrabbit.core.SessionImpl; import org.apache.jackrabbit.core.security.authorization.AbstractACLTemplateTest; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList; import org.apache.jackrabbit.spi.commons.conversion.NameResolver; -import javax.jcr.RepositoryException; import javax.jcr.PropertyType; -import java.util.List; +import javax.jcr.RepositoryException; import java.util.Arrays; +import java.util.List; /** * ACLTemplateTest... Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntryTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntryTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntryTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntryTest.java Wed Jul 8 13:57:13 2009 @@ -16,19 +16,19 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import javax.jcr.security.AccessControlException; -import javax.jcr.security.Privilege; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry; import org.apache.jackrabbit.core.SessionImpl; import org.apache.jackrabbit.core.security.authorization.AbstractEntryTest; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlEntry; -import org.apache.jackrabbit.value.StringValue; -import org.apache.jackrabbit.value.BooleanValue; -import org.apache.jackrabbit.test.NotExecutableException; import org.apache.jackrabbit.spi.commons.conversion.NameResolver; +import org.apache.jackrabbit.test.NotExecutableException; +import org.apache.jackrabbit.value.BooleanValue; +import org.apache.jackrabbit.value.StringValue; import javax.jcr.PropertyType; import javax.jcr.RepositoryException; import javax.jcr.Value; +import javax.jcr.security.AccessControlException; +import javax.jcr.security.Privilege; import java.security.Principal; import java.util.ArrayList; import java.util.Collections; Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EvaluationUtil.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EvaluationUtil.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EvaluationUtil.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/EvaluationUtil.java Wed Jul 8 13:57:13 2009 @@ -16,21 +16,21 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import javax.jcr.security.AccessControlManager; -import javax.jcr.security.AccessControlPolicy; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlManager; import org.apache.jackrabbit.core.SessionImpl; -import org.apache.jackrabbit.core.security.JackrabbitAccessControlManager; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList; import org.apache.jackrabbit.test.NotExecutableException; import javax.jcr.AccessDeniedException; +import javax.jcr.PropertyType; import javax.jcr.RepositoryException; import javax.jcr.Session; -import javax.jcr.PropertyType; +import javax.jcr.security.AccessControlManager; +import javax.jcr.security.AccessControlPolicy; import java.security.Principal; import java.util.HashMap; -import java.util.Map; import java.util.Iterator; +import java.util.Map; /** * EvaluationTest... @@ -48,6 +48,12 @@ return true; } } + policies = ((JackrabbitAccessControlManager) acMgr).getPolicies(princ); + for (int i = 0; i < policies.length; i++) { + if (policies[i] instanceof ACLTemplate) { + return true; + } + } } catch (RepositoryException e) { // ignore } @@ -59,6 +65,7 @@ static JackrabbitAccessControlList getPolicy(AccessControlManager acM, String path, Principal principal) throws RepositoryException, AccessDeniedException, NotExecutableException { if (acM instanceof JackrabbitAccessControlManager) { + // first try applicable policies AccessControlPolicy[] policies = ((JackrabbitAccessControlManager) acM).getApplicablePolicies(principal); for (int i = 0; i < policies.length; i++) { if (policies[i] instanceof ACLTemplate) { @@ -66,6 +73,15 @@ return acl; } } + + // second existing policies + policies = ((JackrabbitAccessControlManager) acM).getPolicies(principal); + for (int i = 0; i < policies.length; i++) { + if (policies[i] instanceof ACLTemplate) { + ACLTemplate acl = (ACLTemplate) policies[i]; + return acl; + } + } } throw new NotExecutableException(); } Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/LockTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/LockTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/LockTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/LockTest.java Wed Jul 8 13:57:13 2009 @@ -16,14 +16,14 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import org.apache.jackrabbit.core.security.authorization.AbstractLockManagementTest; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; import org.apache.jackrabbit.core.SessionImpl; -import javax.jcr.security.AccessControlManager; +import org.apache.jackrabbit.core.security.authorization.AbstractLockManagementTest; import org.apache.jackrabbit.test.NotExecutableException; import javax.jcr.RepositoryException; import javax.jcr.Session; +import javax.jcr.security.AccessControlManager; import java.security.Principal; import java.util.Map; Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/NodeTypeTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/NodeTypeTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/NodeTypeTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/NodeTypeTest.java Wed Jul 8 13:57:13 2009 @@ -16,14 +16,14 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import org.apache.jackrabbit.core.security.authorization.AbstractNodeTypeManagementTest; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; import org.apache.jackrabbit.core.SessionImpl; -import javax.jcr.security.AccessControlManager; +import org.apache.jackrabbit.core.security.authorization.AbstractNodeTypeManagementTest; import org.apache.jackrabbit.test.NotExecutableException; import javax.jcr.RepositoryException; import javax.jcr.Session; +import javax.jcr.security.AccessControlManager; import java.security.Principal; import java.util.Map; Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/VersionTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/VersionTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/VersionTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/VersionTest.java Wed Jul 8 13:57:13 2009 @@ -16,21 +16,21 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import org.apache.jackrabbit.core.security.authorization.JackrabbitAccessControlList; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; +import org.apache.jackrabbit.core.SessionImpl; import org.apache.jackrabbit.core.security.authorization.AbstractVersionManagementTest; import org.apache.jackrabbit.core.security.authorization.PrivilegeRegistry; -import org.apache.jackrabbit.core.SessionImpl; -import javax.jcr.security.AccessControlManager; -import javax.jcr.security.Privilege; import org.apache.jackrabbit.test.NotExecutableException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.jcr.RepositoryException; -import javax.jcr.Session; -import javax.jcr.Node; import javax.jcr.AccessDeniedException; import javax.jcr.ItemNotFoundException; +import javax.jcr.Node; +import javax.jcr.RepositoryException; +import javax.jcr.Session; +import javax.jcr.security.AccessControlManager; +import javax.jcr.security.Privilege; import java.security.Principal; import java.util.Map; Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/authorization/principalbased/WriteTest.java Wed Jul 8 13:57:13 2009 @@ -16,15 +16,18 @@ */ package org.apache.jackrabbit.core.security.authorization.principalbased; -import javax.jcr.security.AccessControlManager; -import javax.jcr.security.AccessControlPolicy; -import javax.jcr.security.Privilege; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlList; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlManager; +import org.apache.jackrabbit.api.security.JackrabbitAccessControlPolicy; +import org.apache.jackrabbit.api.security.user.UserManager; +import org.apache.jackrabbit.api.security.user.User; 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.TestPrincipal; +import org.apache.jackrabbit.core.security.principal.ItemBasedPrincipal; import org.apache.jackrabbit.test.NotExecutableException; +import org.apache.jackrabbit.util.Text; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,6 +35,8 @@ import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.Session; +import javax.jcr.security.AccessControlManager; +import javax.jcr.security.Privilege; import java.security.Principal; import java.util.Map; @@ -47,16 +52,7 @@ } 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]; - return acl; - } - } - } - throw new NotExecutableException(); + return EvaluationUtil.getPolicy(acM, path, principal); } protected Map getRestrictions(Session s, String path) throws RepositoryException, NotExecutableException { @@ -78,5 +74,77 @@ assertFalse(folder.hasProperty("jcr:created")); } + + public void testEditor() throws NotExecutableException, RepositoryException { + User u = null; + try { + UserManager uMgr = getUserManager(superuser); + u = uMgr.createUser("t", "t"); + Principal p = u.getPrincipal(); + + JackrabbitAccessControlManager acMgr = (JackrabbitAccessControlManager) getAccessControlManager(superuser); + JackrabbitAccessControlPolicy[] acls = acMgr.getApplicablePolicies(p); + + assertEquals(1, acls.length); + assertTrue(acls[0] instanceof ACLTemplate); + + // access again + acls = acMgr.getApplicablePolicies(p); + + assertEquals(1, acls.length); + assertEquals(1, acMgr.getApplicablePolicies(acls[0].getPath()).getSize()); + + assertEquals(0, acMgr.getPolicies(p).length); + assertEquals(0, acMgr.getPolicies(acls[0].getPath()).length); + + acMgr.setPolicy(acls[0].getPath(), acls[0]); + + assertEquals(0, acMgr.getApplicablePolicies(p).length); + assertEquals(1, acMgr.getPolicies(p).length); + assertEquals(1, acMgr.getPolicies(acls[0].getPath()).length); + } finally { + superuser.refresh(false); + if (u != null) { + u.remove(); + } + } + } + + public void testEditor2() throws NotExecutableException, RepositoryException { + User u = null; + User u2 = null; + + try { + UserManager uMgr = getUserManager(superuser); + + u = uMgr.createUser("t", "t"); + u2 = uMgr.createUser("tt", "tt", new TestPrincipal("tt"), "t/tt"); + + Principal p = u.getPrincipal(); + Principal p2 = u2.getPrincipal(); + + if (p instanceof ItemBasedPrincipal && p2 instanceof ItemBasedPrincipal && + Text.isDescendant(((ItemBasedPrincipal) p).getPath(), ((ItemBasedPrincipal) p2).getPath())) { + + JackrabbitAccessControlManager acMgr = (JackrabbitAccessControlManager) getAccessControlManager(superuser); + + JackrabbitAccessControlPolicy[] acls = acMgr.getApplicablePolicies(p2); + acMgr.setPolicy(acls[0].getPath(), acls[0]); + + acls = acMgr.getApplicablePolicies(p); + String path = acls[0].getPath(); + + Node n = superuser.getNode(path); + assertEquals("rep:PrincipalAccessControl", n.getPrimaryNodeType().getName()); + } else { + throw new NotExecutableException(); + } + } finally { + superuser.refresh(false); + if (u2 != null) u2.remove(); + if (u != null) u.remove(); + } + + } // TODO: add specific tests with other restrictions } Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/GroupAdministratorTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/GroupAdministratorTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/GroupAdministratorTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/GroupAdministratorTest.java Wed Jul 8 13:57:13 2009 @@ -75,7 +75,7 @@ grID = groupAdmin.getID(); // create a session for the grou-admin user. - uSession = helper.getRepository().login(creds); + uSession = getHelper().getRepository().login(creds); } protected void tearDown() throws Exception { Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/ImpersonationImplTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/ImpersonationImplTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/ImpersonationImplTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/ImpersonationImplTest.java Wed Jul 8 13:57:13 2009 @@ -55,7 +55,7 @@ creds = buildCredentials(p.getName(), pw); UserImpl u = (UserImpl) userMgr.createUser(p.getName(), pw); uID = u.getID(); - uSession = helper.getRepository().login(creds); + uSession = getHelper().getRepository().login(creds); uMgr = getUserManager(uSession); // create a second user 'below' the first user. Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NodeResolverTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NodeResolverTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NodeResolverTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NodeResolverTest.java Wed Jul 8 13:57:13 2009 @@ -186,11 +186,12 @@ NodeResolver nr = createNodeResolver(currentUser.getNode().getSession()); NodeIterator result = nr.findNodes(propName, "blub", UserConstants.NT_REP_USER, false); - assertTrue(result.getSize() == 1); - assertTrue(result.nextNode().isSame(currentUser.getNode())); + assertTrue("expected result", result.hasNext()); + assertEquals(currentUser.getNode().getPath(), result.nextNode().getPath()); + assertFalse("expected no more results", result.hasNext()); result = nr.findNodes(propName, "blub", UserConstants.NT_REP_AUTHORIZABLE, false); - assertTrue(result.getSize() > 1); + assertTrue(getSize(result) > 1); } finally { currentUser.removeProperty(propertyName1); @@ -204,7 +205,7 @@ public void testFindNodesWithNonExistingSearchRoot() throws NotExecutableException, RepositoryException { String searchRoot = nodeResolver.getSearchRoot(UserConstants.NT_REP_AUTHORIZABLE); - if (((SessionImpl) superuser).nodeExists(searchRoot)) { + if (superuser.nodeExists(searchRoot)) { throw new NotExecutableException(); } Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NotUserAdministratorTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NotUserAdministratorTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NotUserAdministratorTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/NotUserAdministratorTest.java Wed Jul 8 13:57:13 2009 @@ -55,7 +55,7 @@ uPath = u.getNode().getPath(); // create a session for the other user. - uSession = helper.getRepository().login(new SimpleCredentials(uID, pw.toCharArray())); + uSession = getHelper().getRepository().login(new SimpleCredentials(uID, pw.toCharArray())); uMgr = getUserManager(uSession); } Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/TestAll.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/TestAll.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/TestAll.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/TestAll.java Wed Jul 8 13:57:13 2009 @@ -16,6 +16,8 @@ */ package org.apache.jackrabbit.core.security.user; +import org.apache.jackrabbit.test.ConcurrentTestSuite; + import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; @@ -28,7 +30,7 @@ * @return a Test suite that executes all test in this package. */ public static Test suite() { - TestSuite suite = new TestSuite("core.security.user tests"); + TestSuite suite = new ConcurrentTestSuite("core.security.user tests"); suite.addTestSuite(UserManagerImplTest.class); suite.addTestSuite(AuthorizableImplTest.class); Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserAdministratorTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserAdministratorTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserAdministratorTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserAdministratorTest.java Wed Jul 8 13:57:13 2009 @@ -76,7 +76,7 @@ uAdministrators.addMember(other); // create a session for the other user. - otherSession = helper.getRepository().login(otherCreds); + otherSession = getHelper().getRepository().login(otherCreds); } protected void tearDown() throws Exception { Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserImplTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserImplTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserImplTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserImplTest.java Wed Jul 8 13:57:13 2009 @@ -54,7 +54,7 @@ creds = new SimpleCredentials(p.getName(), pw.toCharArray()); User u = userMgr.createUser(p.getName(), pw); uID = u.getID(); - uSession = helper.getRepository().login(creds); + uSession = getHelper().getRepository().login(creds); uMgr = getUserManager(uSession); } @@ -95,7 +95,7 @@ } public void testChangePassword() throws RepositoryException, NotExecutableException, NoSuchAlgorithmException, UnsupportedEncodingException { - String oldPw = helper.getProperty("javax.jcr.tck.superuser.pwd"); + String oldPw = getHelper().getProperty("javax.jcr.tck.superuser.pwd"); if (oldPw == null) { // missing property throw new NotExecutableException(); Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserManagerImplTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserManagerImplTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserManagerImplTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/security/user/UserManagerImplTest.java Wed Jul 8 13:57:13 2009 @@ -390,7 +390,7 @@ } public void testCleanup() throws RepositoryException, NotExecutableException { - Session s = helper.getSuperuserSession(); + Session s = getHelper().getSuperuserSession(); try { UserManager umgr = getUserManager(s); s.logout(); @@ -415,7 +415,7 @@ String[] workspaceNames = superuser.getWorkspace().getAccessibleWorkspaceNames(); for (int i = 0; i < workspaceNames.length; i++) { - Session s = helper.getSuperuserSession(workspaceNames[i]); + Session s = getHelper().getSuperuserSession(workspaceNames[i]); try { UserManager umgr = getUserManager(s); s.logout(); Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java Wed Jul 8 13:57:13 2009 @@ -24,19 +24,11 @@ import javax.jcr.Node; import javax.jcr.PathNotFoundException; import javax.jcr.Property; -import javax.jcr.Session; import javax.jcr.ValueFormatException; import javax.jcr.nodetype.NoSuchNodeTypeException; import org.apache.jackrabbit.api.JackrabbitNodeTypeManager; -import org.apache.jackrabbit.core.TestRepository; -import org.apache.jackrabbit.test.JCRTestResult; -import org.apache.jackrabbit.test.LogPrintWriter; -import org.slf4j.LoggerFactory; -import org.slf4j.Logger; - -import junit.framework.TestCase; -import junit.framework.TestResult; +import org.apache.jackrabbit.test.AbstractJCRTest; /** * Jackrabbit-specific test cases for the document view XML format. @@ -44,23 +36,7 @@ * @see org.apache.jackrabbit.test.api.ExportDocViewTest * @see org.apache.jackrabbit.test.api.DocumentViewImportTest */ -public class DocumentViewTest extends TestCase { - - /** Logger instance for this class. */ - private static final Logger log = LoggerFactory.getLogger(DocumentViewTest.class); - - /** Test session. */ - private Session session; - - /** - * Use a {@link org.apache.jackrabbit.test.JCRTestResult} to suppress test - * case failures of known issues. - * - * @param testResult the test result. - */ - public void run(TestResult testResult) { - super.run(new JCRTestResult(testResult, new LogPrintWriter(log))); - } +public class DocumentViewTest extends AbstractJCRTest { /** * Sets up the test fixture. @@ -69,9 +45,8 @@ */ protected void setUp() throws Exception { super.setUp(); - session = TestRepository.getInstance().login(); JackrabbitNodeTypeManager manager = (JackrabbitNodeTypeManager) - session.getWorkspace().getNodeTypeManager(); + superuser.getWorkspace().getNodeTypeManager(); try { manager.getNodeType("DocViewMultiValueTest"); } catch (NoSuchNodeTypeException e) { @@ -90,7 +65,6 @@ protected void tearDown() throws Exception { // TODO: Unregister the MultiValueTestType node type once Jackrabbit // supports node type removal. - session.logout(); super.tearDown(); } @@ -108,7 +82,7 @@ + " xmlns:jcr=\"http://www.jcp.org/jcr/1.0\"" + " xmlns:mix=\"http://www.jcp.org/jcr/mix/1.0\"/>"; InputStream input = new ByteArrayInputStream(xml.getBytes("UTF-8")); - session.importXML( + superuser.importXML( "/", input, ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW); } catch (ValueFormatException e) { fail("JCR-369: IllegalNameException when importing document view" @@ -127,15 +101,15 @@ String message = "JCR-325: docview roundtripping does not work with" + " multivalue non-string properties"; - Node root = session.getRootNode(); + Node root = superuser.getRootNode(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); Node node = root.addNode("multi-value-test", "DocViewMultiValueTest"); node.setProperty("test", new String[] {"true", "false"}); - session.exportDocumentView("/multi-value-test", buffer, true, true); - session.refresh(false); // Discard the transient multi-value-test node + superuser.exportDocumentView("/multi-value-test", buffer, true, true); + superuser.refresh(false); // Discard the transient multi-value-test node - session.importXML( + superuser.importXML( "/", new ByteArrayInputStream(buffer.toByteArray()), ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW); try { Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/WorkspaceImporterTest.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/WorkspaceImporterTest.java?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/WorkspaceImporterTest.java (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/xml/WorkspaceImporterTest.java Wed Jul 8 13:57:13 2009 @@ -22,32 +22,27 @@ import javax.jcr.Node; import javax.jcr.PathNotFoundException; import javax.jcr.RepositoryException; -import javax.jcr.Session; -import org.apache.jackrabbit.core.TestRepository; import org.apache.jackrabbit.uuid.UUID; - -import junit.framework.TestCase; +import org.apache.jackrabbit.test.AbstractJCRTest; /** * Test cases for the {@link WorkspaceImporter} class. */ -public class WorkspaceImporterTest extends TestCase { - - private Session session; +public class WorkspaceImporterTest extends AbstractJCRTest { private Node root; protected void setUp() throws Exception { - session = TestRepository.getInstance().login(); - root = session.getRootNode().addNode("WorkspaceImporterTest"); - session.save(); + super.setUp(); + root = superuser.getRootNode().addNode("WorkspaceImporterTest"); + superuser.save(); } protected void tearDown() throws Exception { root.remove(); - session.save(); - session.logout(); + superuser.save(); + super.tearDown(); } /** @@ -81,7 +76,7 @@ + "" + uuid + "" + "" + ""; - session.getWorkspace().importXML( + superuser.getWorkspace().importXML( root.getPath(), new ByteArrayInputStream(xml.getBytes("UTF-8")), ImportUUIDBehavior.IMPORT_UUID_CREATE_NEW); Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/repository.xml URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/repository.xml?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/repository.xml (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/repository.xml Wed Jul 8 13:57:13 2009 @@ -29,7 +29,15 @@ + - + @@ -53,11 +61,11 @@ access manager: class: FQN of class implementing the AccessManager interface --> - + - + @@ -66,6 +74,11 @@ administrator user id (default value if param is missing is 'admin') --> + + Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/workspaces/workspace-init-test/workspace.xml URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/workspaces/workspace-init-test/workspace.xml?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/workspaces/workspace-init-test/workspace.xml (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/workspaces/workspace-init-test/workspace.xml Wed Jul 8 13:57:13 2009 @@ -33,6 +33,9 @@ - + + + + Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/test_nodetypes.xml URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/test_nodetypes.xml?rev=792142&r1=792141&r2=792142&view=diff ============================================================================== --- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/test_nodetypes.xml (original) +++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/test_nodetypes.xml Wed Jul 8 13:57:13 2009 @@ -172,6 +172,22 @@ /test:testPath + + + /test:testPath/* + + + + + test:testPath/* + + - + - +