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 2016/01/28 12:05:47 UTC

svn commit: r1727308 - in /jackrabbit/oak/trunk: oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/ oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/ oak-it/src/...

Author: angela
Date: Thu Jan 28 11:05:46 2016
New Revision: 1727308

URL: http://svn.apache.org/viewvc?rev=1727308&view=rev
Log:
OAK-3942 : Convert tests for TreeLocation and ImmutableTree to regular unit tests

Added:
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java
      - copied, changed from r1727291, jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
      - copied, changed from r1727291, jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java
Removed:
    jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java
    jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java

Copied: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java (from r1727291, jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java?p2=jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java&p1=jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java&r1=1727291&r2=1727308&rev=1727308&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/TreeLocationTest.java Thu Jan 28 11:05:46 2016
@@ -22,39 +22,30 @@ import static org.junit.Assert.assertEqu
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 
-import org.apache.jackrabbit.oak.OakBaseTest;
-import org.apache.jackrabbit.oak.api.CommitFailedException;
-import org.apache.jackrabbit.oak.api.ContentSession;
-import org.apache.jackrabbit.oak.api.Root;
+import org.apache.jackrabbit.JcrConstants;
+import org.apache.jackrabbit.oak.AbstractSecurityTest;
 import org.apache.jackrabbit.oak.api.Tree;
-import org.apache.jackrabbit.oak.fixture.NodeStoreFixture;
+import org.apache.jackrabbit.oak.util.NodeUtil;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-public class TreeLocationTest extends OakBaseTest {
+public class TreeLocationTest extends AbstractSecurityTest {
 
-    private Root root;
     private TreeLocation nullLocation;
 
-    public TreeLocationTest(NodeStoreFixture fixture) {
-        super(fixture);
-    }
-
     @Before
-    public void setUp() throws CommitFailedException {
-        ContentSession session = createContentSession();
-
-        // Add test content
-        root = session.getLatestRoot();
+    public void setUp() throws Exception {
         Tree tree = root.getTree("/");
         tree.setProperty("a", 1);
         tree.setProperty("b", 2);
         tree.setProperty("c", 3);
-        tree.addChild("x");
-        tree.addChild("y");
-        tree.addChild("z").addChild("1").addChild("2").setProperty("p", "v");
+
+        NodeUtil n = new NodeUtil(tree);
+        n.addChild("x", JcrConstants.NT_UNSTRUCTURED);
+        n.addChild("y", JcrConstants.NT_UNSTRUCTURED);
+        n.addChild("z", JcrConstants.NT_UNSTRUCTURED).addChild("1", JcrConstants.NT_UNSTRUCTURED).addChild("2", JcrConstants.NT_UNSTRUCTURED).setString("p", "v");
         root.commit();
 
         nullLocation = TreeLocation.create(root).getParent();

Copied: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java (from r1727291, jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java?p2=jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java&p1=jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java&r1=1727291&r2=1727308&rev=1727308&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/tree/impl/ImmutableTreeTest.java Thu Jan 28 11:05:46 2016
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.plugins.tree.impl;
 
-import static org.apache.jackrabbit.oak.OakAssert.assertSequence;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
@@ -27,56 +26,40 @@ import static org.junit.Assert.assertTru
 
 import java.util.List;
 
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
+import com.google.common.base.Function;
+import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
 import org.apache.jackrabbit.JcrConstants;
-import org.apache.jackrabbit.oak.OakBaseTest;
-import org.apache.jackrabbit.oak.api.CommitFailedException;
-import org.apache.jackrabbit.oak.api.ContentSession;
+import org.apache.jackrabbit.oak.AbstractSecurityTest;
 import org.apache.jackrabbit.oak.api.PropertyState;
-import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
-import org.apache.jackrabbit.oak.fixture.NodeStoreFixture;
-import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
-import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
-import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
+import org.apache.jackrabbit.oak.util.NodeUtil;
+import org.apache.jackrabbit.oak.util.TreeUtil;
+import org.apache.jackrabbit.util.Text;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+public class ImmutableTreeTest extends AbstractSecurityTest {
 
-public class ImmutableTreeTest extends OakBaseTest {
+    private static final String HIDDEN_PATH = "/oak:index/acPrincipalName/:index";
 
-    private Root root;
     private ImmutableTree immutable;
 
-    public ImmutableTreeTest(NodeStoreFixture fixture) {
-        super(fixture);
-    }
-
     @Before
-    public void setUp() throws CommitFailedException {
-        ContentSession session = createContentSession();
-
-        // Add test content
-        root = session.getLatestRoot();
+    public void setUp() throws Exception {
         Tree tree = root.getTree("/");
-        Tree x = tree.addChild("x");
-        Tree y = x.addChild("y");
-        y.addChild("z");
-        Tree orderable = tree.addChild("orderable");
+        NodeUtil node = new NodeUtil(tree);
+        node.addChild("x", JcrConstants.NT_UNSTRUCTURED).addChild("y", JcrConstants.NT_UNSTRUCTURED).addChild("z", JcrConstants.NT_UNSTRUCTURED);
+
+        Tree orderable = node.addChild("orderable", JcrConstants.NT_UNSTRUCTURED).getTree();
         orderable.setOrderableChildren(true);
-        orderable.setProperty(JcrConstants.JCR_PRIMARYTYPE, JcrConstants.NT_UNSTRUCTURED);
         root.commit();
 
-        NodeBuilder nb = store.getRoot().builder();
-        nb.child(":hidden");
-        store.merge(nb, EmptyHook.INSTANCE, CommitInfo.EMPTY);
-
-        // Acquire a fresh new root to avoid problems from lingering state
-        root = session.getLatestRoot();
-        Tree mutableTree = root.getTree("/");
-
-        immutable = new ImmutableTree(((AbstractTree) mutableTree).getNodeState());
+        immutable = new ImmutableTree(((AbstractTree) root.getTree("/")).getNodeState());
     }
 
     @After
@@ -139,7 +122,7 @@ public class ImmutableTreeTest extends O
 
     @Test
     public void testHiddenGetName() {
-        assertEquals(":hidden", immutable.getChild(":hidden").getName());
+        assertEquals(Text.getName(HIDDEN_PATH), getHiddenTree(immutable).getName());
     }
 
     @Test
@@ -160,8 +143,7 @@ public class ImmutableTreeTest extends O
 
     @Test
     public void testHiddenExists() {
-        ImmutableTree hidden = immutable.getChild(":hidden");
-        assertTrue(hidden.exists());
+        assertTrue(getHiddenTree(immutable).exists());
     }
 
     @Test
@@ -183,7 +165,7 @@ public class ImmutableTreeTest extends O
 
     @Test
     public void testHiddenGetStatus() {
-        assertSame(Tree.Status.UNCHANGED, immutable.getChild(":hidden").getStatus());
+        assertSame(Tree.Status.UNCHANGED, getHiddenTree(immutable).getStatus());
     }
 
     @Test
@@ -198,12 +180,14 @@ public class ImmutableTreeTest extends O
 
     @Test
     public void testHasHiddenChild() {
-        assertTrue(immutable.hasChild(":hidden"));
+        ImmutableTree parent = (ImmutableTree) TreeUtil.getTree(immutable, Text.getRelativeParent(HIDDEN_PATH, 1));
+        assertNotNull(parent);
+        assertTrue(parent.hasChild(Text.getName(HIDDEN_PATH)));
     }
 
     @Test
     public void testGetHiddenNode() {
-        ImmutableTree hidden = immutable.getChild(":hidden");
+        ImmutableTree hidden = getHiddenTree(immutable);
         assertNotNull(hidden);
     }
 
@@ -246,11 +230,10 @@ public class ImmutableTreeTest extends O
     @Test
     public void orderBefore() throws Exception {
         Tree t = root.getTree("/x/y/z");
-
-        t.addChild("node1");
-        t.addChild("node2");
-        t.addChild("node3");
-
+        NodeUtil n = new NodeUtil(t);
+        n.addChild("node1", JcrConstants.NT_UNSTRUCTURED);
+        n.addChild("node2", JcrConstants.NT_UNSTRUCTURED);
+        n.addChild("node3", JcrConstants.NT_UNSTRUCTURED);
 
         t.getChild("node1").orderBefore("node2");
         t.getChild("node3").orderBefore(null);
@@ -272,4 +255,19 @@ public class ImmutableTreeTest extends O
         tree = new ImmutableTree(((AbstractTree) t).getNodeState());
         assertSequence(tree.getChildren(), "node3", "node2", "node1");
     }
+
+    private static ImmutableTree getHiddenTree(@Nonnull ImmutableTree immutable) {
+        return (ImmutableTree) TreeUtil.getTree(immutable, HIDDEN_PATH);
+    }
+
+    private static void assertSequence(Iterable<Tree> trees, String... names) {
+        List<String> actual = Lists.newArrayList(Iterables.transform(trees, new Function<Tree, String>() {
+            @Nullable
+            @Override
+            public String apply(Tree input) {
+                return input.getName();
+            }
+        }));
+        assertEquals(Lists.newArrayList(names), actual);
+    }
 }