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 2014/07/30 09:37:06 UTC
svn commit: r1614574 - in
/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization:
ReadVersionContent.java ReadVersionContentTest.java
Author: angela
Date: Wed Jul 30 07:37:05 2014
New Revision: 1614574
URL: http://svn.apache.org/r1614574
Log:
OAK-1998: extend tests
Added:
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContentTest.java
- copied, changed from r1614555, jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContent.java
Removed:
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContent.java
Copied: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContentTest.java (from r1614555, jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContent.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContentTest.java?p2=jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContentTest.java&p1=jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContent.java&r1=1614555&r2=1614574&rev=1614574&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContent.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ReadVersionContentTest.java Wed Jul 30 07:37:05 2014
@@ -18,6 +18,7 @@
*/
package org.apache.jackrabbit.oak.jcr.security.authorization;
+import javax.jcr.AccessDeniedException;
import javax.jcr.ItemNotFoundException;
import javax.jcr.Node;
import javax.jcr.PathNotFoundException;
@@ -31,11 +32,12 @@ import org.apache.jackrabbit.api.securit
import org.apache.jackrabbit.commons.jackrabbit.authorization.AccessControlUtils;
import org.apache.jackrabbit.oak.plugins.version.VersionConstants;
import org.apache.jackrabbit.test.NotExecutableException;
+import org.apache.jackrabbit.util.Text;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
-public class ReadVersionContent extends AbstractEvaluationTest {
+public class ReadVersionContentTest extends AbstractEvaluationTest {
private Version v;
private Version v2;
@@ -179,15 +181,54 @@ public class ReadVersionContent extends
* @since oak
*/
@Test
- public void testVersionHistoryIsSame() throws Exception {
+ public void testVersionHistoryParent() throws Exception {
// accessing the version history must be allowed if the versionable node
// is readable to the editing test session.
Node testNode = testSession.getNode(versionablePath);
VersionHistory testVh = testNode.getVersionHistory();
- Node vh2 = testNode.getSession().getNode(testVh.getPath());
+ try {
+ testVh.getParent();
+ fail("version storage intermediate node must not be accessible");
+ } catch (AccessDeniedException e) {
+ // success
+ }
+ }
+
+ /**
+ * @since oak
+ */
+ @Test
+ public void testGetVersionHistoryParentNode() throws Exception {
+ String vhParentPath = Text.getRelativeParent(vh.getPath(), 1);
+
+ assertFalse(testSession.nodeExists(vhParentPath));
+ try {
+ testSession.getNode(vhParentPath);
+ fail("version storage intermediate node must not be accessible");
+ } catch (PathNotFoundException e) {
+ // success
+ }
+ }
- assertTrue(testVh.isSame(vh2));
+ /**
+ * @since oak
+ */
+ @Test
+ public void testGetVersion() throws Exception {
+ // accessing the version history must be allowed if the versionable node
+ // is readable to the editing test session.
+ Node testNode = testSession.getNode(versionablePath);
+
+ VersionHistory vh = testNode.getVersionHistory();
+
+ Version version = vh.getVersion(v.getName());
+ assertTrue(v.isSame(version));
+ assertTrue(vh.isSame(version.getContainingHistory()));
+
+ version = vh.getVersion(v2.getName());
+ assertTrue(v2.isSame(version));
+ assertTrue(vh.isSame(version.getContainingHistory()));
}
/**
@@ -201,7 +242,6 @@ public class ReadVersionContent extends
VersionHistory vh = testNode.getVersionHistory();
VersionIterator versionIterator = vh.getAllVersions();
- // TODO
}
/**
@@ -215,10 +255,10 @@ public class ReadVersionContent extends
VersionHistory vh = testNode.getVersionHistory();
VersionIterator versionIterator = vh.getAllLinearVersions();
- // TODO
}
+
/**
* @since oak
*/