protected void setUp() throws Exception { super.setUp(); versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); // create two versions version = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); version2 = versionManager.checkin(versionableNode.getPath()); }
/** * Creates for the given node a new version and returns that version. * Put the node into the checked-in state. * * @param node node to checkin * @return the created version * @throws RepositoryException */ public static Version checkin(Node node) throws RepositoryException { return getVersionManager(node.getSession()).checkin(node.getPath()); }
public void testRestoreChild1Jcr2_4() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(new Version[] {v1}, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(new Version[] {version}, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(new Version[] {v2}, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
public void testRestoreRemovedJcr2() throws RepositoryException { String path = versionableNode.getPath(); Version v1 = versionManager.checkin(path); versionableNode.remove(); versionableNode = null; superuser.save(); versionManager.restore(path, v1, true); versionableNode = superuser.getNode(path); String value = versionableNode.getProperty(propertyName1).getString(); assertEquals("Restoring a node must set the correct property.", propertyValue2, value); }
/** * Test if workspace-restoring a node works on checked-in node. */ public void testWorkspaceRestoreOnCheckedInNodeJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); if (versionManager.isCheckedOut(path)) { versionManager.checkin(path); } superuser.getWorkspace().getVersionManager().restore(new Version[]{version}, true); }
public void testRestoreChild1Jcr2() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(v1, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(version, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(v2, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test if VersionManager.isCheckedOut(P) returns false if P is the * absolute path of a checked-in versionable node. * * @throws javax.jcr.RepositoryException */ public void testIsCheckedOutJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); versionManager.checkin(path); assertTrue("VersionManager.isCheckedOut(P) must return false if the path P resolves to a checked-in node.", versionManager.isCheckedOut(path) == false); }
public void testRestoreChild1Jcr2() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(v1, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(version, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(v2, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test if VersionManager.isCheckedOut(P) returns false after calling VersionManager.checkin(P). * * @throws RepositoryException */ public void testIsNotCheckedOutJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); versionManager.checkin(path); boolean isCheckedOut = versionManager.isCheckedOut(path); assertFalse("VersionManager.isCheckedOut(P) must return false after VersionManager.checkin(P).", isCheckedOut); }
public void testRestoreChild1Jcr2_4() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(new Version[] {v1}, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(new Version[] {version}, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(new Version[] {v2}, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test if VersionManager.isCheckedOut(P) returns false if P is the * absolute path of a checked-in versionable node. * * @throws javax.jcr.RepositoryException */ public void testIsCheckedOutJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); versionManager.checkin(path); assertTrue("VersionManager.isCheckedOut(P) must return false if the path P resolves to a checked-in node.", versionManager.isCheckedOut(path) == false); }
public void testRestoreChild1Jcr2_2() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(v1, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(version, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(v2, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test calling VersionManager.checkin(P) with the path P resolving to * a non-versionable node. * * @throws RepositoryException */ public void testCheckinNonVersionableNodeJcr2() throws RepositoryException { try { VersionManager versionManager = nonVersionableNode.getSession().getWorkspace().getVersionManager(); String path = nonVersionableNode.getPath(); versionManager.checkin(path); fail("VersionManager.checkin(P) must throw UnsupportedRepositoryOperationException if the path P resolves to a non-versionable node."); } catch (UnsupportedRepositoryOperationException e) { //success } } }
public void testRestoreChild1Jcr2_2() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(v1, true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(version, true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(v2, true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test if VersionManager.isCheckedOut(P) returns false after calling VersionManager.checkin(P). * * @throws RepositoryException */ public void testIsNotCheckedOutJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); versionManager.checkin(path); boolean isCheckedOut = versionManager.isCheckedOut(path); assertFalse("VersionManager.isCheckedOut(P) must return false after VersionManager.checkin(P).", isCheckedOut); }
public void testRestoreChild1Jcr2_3() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(versionableNode.getPath(), v1.getName(), true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(versionableNode.getPath(), version.getName(), true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(versionableNode.getPath(), v2.getName(), true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test calling VersionManager.checkin(P) with the path P resolving to * a non-versionable node. * * @throws RepositoryException */ public void testCheckinNonVersionableNodeJcr2() throws RepositoryException { try { VersionManager versionManager = nonVersionableNode.getSession().getWorkspace().getVersionManager(); String path = nonVersionableNode.getPath(); versionManager.checkin(path); fail("VersionManager.checkin(P) must throw UnsupportedRepositoryOperationException if the path P resolves to a non-versionable node."); } catch (UnsupportedRepositoryOperationException e) { //success } } }
public void testRestoreChild1Jcr2_3() throws RepositoryException { versionableNode.addNode("child1"); versionableNode.getSession().save(); Version v1 = versionManager.checkin(versionableNode.getPath()); versionManager.checkout(versionableNode.getPath()); Version v2 = versionManager.checkin(versionableNode.getPath()); versionManager.restore(versionableNode.getPath(), v1.getName(), true); assertTrue("Node.restore('1.2') must not remove child node.", versionableNode.hasNode("child1")); versionManager.restore(versionableNode.getPath(), version.getName(), true); assertFalse("Node.restore('1.0') must remove child node.", versionableNode.hasNode("child1")); try { versionManager.restore(versionableNode.getPath(), v2.getName(), true); } catch (RepositoryException e) { fail("Node.restore('1.3') must fail."); } }
/** * Test if the node's jcr:predecessors property contains an empty value array * after checkin. * * @throws RepositoryException */ public void testCheckinRemovesPredecessorPropertyJcr2() throws RepositoryException { VersionManager versionManager = versionableNode.getSession().getWorkspace().getVersionManager(); String path = versionableNode.getPath(); versionManager.checkin(path); Value[] predecessorsValue = versionableNode.getProperty(jcrPredecessors).getValues(); assertTrue("Checkin must set the node's jcr:predecessors property to the empty array", predecessorsValue.length == 0); }
private void rename(Session session,Node testNode, String newName, Node parentNode) throws Exception { versionManager.checkout(parentNode.getPath()); versionManager.checkout(testNode.getPath()); testNode.setProperty(Property.JCR_NAME, newName); session.save(); versionManager.checkin(testNode.getPath()); versionManager.checkin(parentNode.getPath()); } }