You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by re...@apache.org on 2021/08/16 14:54:50 UTC

svn commit: r1892383 - in /jackrabbit/branches/2.14: ./ jackrabbit-core/pom.xml jackrabbit-jcr-rmi/pom.xml jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java jackrabbit-jcr2dav/pom.xml jackrabbit-spi2jcr/pom.xml

Author: reschke
Date: Mon Aug 16 14:54:49 2021
New Revision: 1892383

URL: http://svn.apache.org/viewvc?rev=1892383&view=rev
Log:
JCR-4683: add test coverage for restore that removes a mixin (merged r1888091 and r1888503 into 2.14)

Modified:
    jackrabbit/branches/2.14/   (props changed)
    jackrabbit/branches/2.14/jackrabbit-core/pom.xml
    jackrabbit/branches/2.14/jackrabbit-jcr-rmi/pom.xml
    jackrabbit/branches/2.14/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java
    jackrabbit/branches/2.14/jackrabbit-jcr2dav/pom.xml
    jackrabbit/branches/2.14/jackrabbit-spi2jcr/pom.xml

Propchange: jackrabbit/branches/2.14/
------------------------------------------------------------------------------
  Merged /jackrabbit/trunk:r1888091,1888503

Modified: jackrabbit/branches/2.14/jackrabbit-core/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.14/jackrabbit-core/pom.xml?rev=1892383&r1=1892382&r2=1892383&view=diff
==============================================================================
--- jackrabbit/branches/2.14/jackrabbit-core/pom.xml (original)
+++ jackrabbit/branches/2.14/jackrabbit-core/pom.xml Mon Aug 16 14:54:49 2021
@@ -121,6 +121,7 @@ org.apache.jackrabbit.core.security.user
 org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testStringLiteralInvalidName        <!-- OAK-3265 -->
 org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testPathLiteral                     <!-- OAK-3265 -->
 org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testURILiteral                      <!-- OAK-3265 -->
+org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRemovesMixin                     <!-- JCR-4680 -->
               </value>
             </property>
             <property>

Modified: jackrabbit/branches/2.14/jackrabbit-jcr-rmi/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.14/jackrabbit-jcr-rmi/pom.xml?rev=1892383&r1=1892382&r2=1892383&view=diff
==============================================================================
--- jackrabbit/branches/2.14/jackrabbit-jcr-rmi/pom.xml (original)
+++ jackrabbit/branches/2.14/jackrabbit-jcr-rmi/pom.xml Mon Aug 16 14:54:49 2021
@@ -506,6 +506,7 @@ org.apache.jackrabbit.test.api.security.
 org.apache.jackrabbit.test.api.security.RSessionAccessControlPolicyTest#testSetPolicy
 <!-- JCR-3206 -->
 org.apache.jackrabbit.test.api.observation.EventJournalTest
+org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRemovesMixin                     <!-- JCR-4680 -->
                   </value>
                 </property>
                 <property>

Modified: jackrabbit/branches/2.14/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.14/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java?rev=1892383&r1=1892382&r2=1892383&view=diff
==============================================================================
--- jackrabbit/branches/2.14/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java (original)
+++ jackrabbit/branches/2.14/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/version/RestoreTest.java Mon Aug 16 14:54:49 2021
@@ -26,6 +26,7 @@ import javax.jcr.version.VersionIterator
 import javax.jcr.version.VersionManager;
 import javax.jcr.Node;
 import javax.jcr.RepositoryException;
+import javax.jcr.Session;
 import javax.jcr.InvalidItemStateException;
 import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.ItemExistsException;
@@ -1459,4 +1460,31 @@ public class RestoreTest extends Abstrac
         String order = n1.getName() + ", " + n2.getName();
         assertEquals("Invalid child node ordering", orderOk, order);
     }
+
+    /**
+     * Test that after restore(), a subsequently added mixin type is removed
+     */
+    public void testRestoreRemovesMixin() throws RepositoryException, NotExecutableException {
+        Session s = testRootNode.getSession();
+        ensureKnowsNodeType(s, ntQuery);
+        ensureKnowsNodeType(s, mixTitle);
+
+        Node testRoot = createVersionableNode(testRootNode, nodeName4, s.getWorkspace().getNodeTypeManager().getNodeType(ntQuery));
+        ensureMixinType(testRoot, mixVersionable);
+        versionableNode.getSession().save();
+
+        Version v10 = versionManager.checkin(testRoot.getPath());
+        versionManager.checkout(testRoot.getPath());
+        // use mix:title to allow adding property jcr:title
+        testRoot.addMixin(mixTitle);
+        // add jcr:title property which is *not* allowed by the frozen node its
+        // type alone (nt:query)
+        testRoot.setProperty("jcr:title", "title");
+        versionableNode.getSession().save();
+        // restore base version without mix:title mixin, removing jcr:title
+        // property
+        versionManager.restore(v10, true);
+        assertFalse(testRoot.isNodeType(mixTitle));
+        assertFalse(testRoot.hasProperty("jcr:title"));
+    }
 }

Modified: jackrabbit/branches/2.14/jackrabbit-jcr2dav/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.14/jackrabbit-jcr2dav/pom.xml?rev=1892383&r1=1892382&r2=1892383&view=diff
==============================================================================
--- jackrabbit/branches/2.14/jackrabbit-jcr2dav/pom.xml (original)
+++ jackrabbit/branches/2.14/jackrabbit-jcr2dav/pom.xml Mon Aug 16 14:54:49 2021
@@ -125,6 +125,7 @@
                      org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testURILiteral                      <!-- OAK-3265, JCR-3913 -->
                      <!-- JCR-3995 -->
                      org.apache.jackrabbit.jcr2spi.security.authorization.jackrabbit.acl.AccessControlManagerImplTest#testAddingFourAccessControlEntries
+                     org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRemovesMixin                     <!-- JCR-4680 -->
                   </value>
                 </property>
                 <property>

Modified: jackrabbit/branches/2.14/jackrabbit-spi2jcr/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.14/jackrabbit-spi2jcr/pom.xml?rev=1892383&r1=1892382&r2=1892383&view=diff
==============================================================================
--- jackrabbit/branches/2.14/jackrabbit-spi2jcr/pom.xml (original)
+++ jackrabbit/branches/2.14/jackrabbit-spi2jcr/pom.xml Mon Aug 16 14:54:49 2021
@@ -79,6 +79,7 @@ org.apache.jackrabbit.test.api.query.qom
                org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testStringLiteralInvalidName        <!-- OAK-3265, JCR-3913 -->
                org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testPathLiteral                     <!-- OAK-3265, JCR-3913 -->
                org.apache.jackrabbit.test.api.query.qom.NodeLocalNameTest#testURILiteral                      <!-- OAK-3265, JCR-3913 -->
+               org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRemovesMixin                     <!-- JCR-4680 -->
               </value>
             </property>
           </systemProperties>