jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ju...@apache.org
Subject svn commit: r631261 - in /jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core: RestoreAndCheckoutTest.java TestAll.java
Date Tue, 26 Feb 2008 15:51:40 GMT
Author: jukka
Date: Tue Feb 26 07:51:38 2008
New Revision: 631261

URL: http://svn.apache.org/viewvc?rev=631261&view=rev
Log:
JCR-1399: Backport JCR-1197 to 1.3 branch
    - Added a test case by Alexander Klimetschek

Added:
    jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/RestoreAndCheckoutTest.java
Modified:
    jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestAll.java

Added: jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/RestoreAndCheckoutTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/RestoreAndCheckoutTest.java?rev=631261&view=auto
==============================================================================
--- jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/RestoreAndCheckoutTest.java
(added)
+++ jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/RestoreAndCheckoutTest.java
Tue Feb 26 07:51:38 2008
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.core;
+
+import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+import javax.jcr.Session;
+
+import org.apache.jackrabbit.test.AbstractJCRTest;
+
+/**
+ * <code>RestoreAndCheckoutTest</code> tests for JCR-1197
+ * "Node.restore() may throw InvalidItemStateException".
+ *
+ */
+public class RestoreAndCheckoutTest extends AbstractJCRTest {
+
+	private static final int NODES_COUNT = 10;
+
+	public void testRestoreAndCheckout() throws RepositoryException {
+		Session session = helper.getSuperuserSession();
+		
+		Node rootNode = session.getRootNode();
+		Node myRoot = rootNode.addNode("myRoot");
+		myRoot.addMixin("mix:versionable");
+		rootNode.save();
+		myRoot.checkin();
+
+		// create n child and grandchild versionable nodes
+		for (int i = 0; i < NODES_COUNT; i++) {
+			myRoot.checkout();
+			Node childNode = myRoot.addNode("child" + i);
+			childNode.addMixin("mix:versionable");
+			Node grandChildNode = childNode.addNode("grandChild");
+			grandChildNode.addMixin("mix:versionable");
+			myRoot.save();
+			grandChildNode.checkin();
+			childNode.checkin();
+			myRoot.checkin();
+		}
+
+		// restore child, then restore/checkout grandchild nodes
+		for (int i = 0; i < NODES_COUNT; i++) {
+			Node childNode = myRoot.getNode("child" + i);
+			childNode.restore("1.0", false);
+			Node grandChildNode = childNode.getNode("grandChild");
+			grandChildNode.restore("1.0", false);
+			// critical location regarding item state manager caching (see JCR-1197)
+			grandChildNode.checkout();
+			grandChildNode.checkin();
+		}
+
+		session.logout();
+	}
+}

Modified: jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestAll.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestAll.java?rev=631261&r1=631260&r2=631261&view=diff
==============================================================================
--- jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestAll.java
(original)
+++ jackrabbit/branches/1.3/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestAll.java
Tue Feb 26 07:51:38 2008
@@ -35,6 +35,7 @@
         suite.addTestSuite(NamespaceRegistryImplTest.class);
         suite.addTestSuite(TransientRepositoryTest.class);
         suite.addTestSuite(XATest.class);
+        suite.addTestSuite(RestoreAndCheckoutTest.class);
 
         return suite;
     }



Mime
View raw message