org.apache.jackrabbit.test.api.version
Class MergeNodeTest

java.lang.Object
  extended byjunit.framework.Assert
      extended byjunit.framework.TestCase
          extended byorg.apache.jackrabbit.test.JUnitTest
              extended byorg.apache.jackrabbit.test.AbstractJCRTest
                  extended byorg.apache.jackrabbit.test.api.version.AbstractMergeTest
                      extended byorg.apache.jackrabbit.test.api.version.MergeNodeTest
All Implemented Interfaces:
junit.framework.Test

public class MergeNodeTest
extends AbstractMergeTest

MergeNodeTest contains tests dealing with general merge node calls.


Field Summary
 
Fields inherited from class org.apache.jackrabbit.test.api.version.AbstractMergeTest
CHANGED_STRING, nonVersionableNodeType, superuserW2, testRootNodeW2, versionableNodeType, workspace, workspaceW2
 
Fields inherited from class org.apache.jackrabbit.test.AbstractJCRTest
helper, isReadOnly, jcrBaseVersion, jcrCreated, jcrFrozenNode, jcrlockIsDeep, jcrLockOwner, jcrMergeFailed, jcrMixinTypes, jcrPredecessors, jcrPrimaryType, jcrRootVersion, jcrSuccessors, jcrSystem, jcrUUID, jcrVersionHistory, mixLockable, mixReferenceable, mixVersionable, nodeName1, nodeName2, nodeName3, nodeName4, NS_JCR_URI, NS_MIX_URI, NS_NT_URI, NS_SV_URI, ntBase, ntFrozenNode, ntQuery, ntVersion, ntVersionHistory, ntVersionLabels, propertyName1, propertyName2, superuser, testNodeType, testPath, testRoot, testRootNode, workspaceName
 
Fields inherited from class org.apache.jackrabbit.test.JUnitTest
log
 
Constructor Summary
MergeNodeTest()
           
 
Method Summary
 void disable_testMergeLocked()
          Tests if a LockException is thrown when merge is called on a locked node.
 void disable_testMergeNodeForceFailure()
          if mergeFailedProperty is present > VersionException
protected  void initNodes()
          initialize a versionable node on default and second workspace
protected  void setUp()
          Initialising used variables coming from the properties file.
Setup some nodes on the 2 workspaces.
 void testMergeNodeBestEffortFalse()
          Node.merge(): bestEffort is false and any merge fails a MergeException is thrown.
 void testMergeNodeBestEffortFalseAmbiguousVersions()
          A MergeVersionException is thrown if bestEffort is false and a versionable node is encountered whose corresponding node's base version is on a divergent branch from this node's base version.
 void testMergeNodeBestEffortTrueCheckMergeFailedProperty()
          Node.merge(): bestEffort is true > any merge-failure (represented by the version in the workspace) is reported in the jcrMergeFailed property
 void testMergeNodeNonCorrespondingNode()
          Node.merge(): If this node does not have a corresponding node in the indicated workspace
then the merge method returns quietly and no changes are made.
 void testMergeNodeVersionAmbiguous()
          Node.merge(): versionable subNode N checked-in: If V is neither a successor of, predecessor of, nor identical with V', then the merge result for N is failed
 void testMergeNodeWithUnsavedStates()
          Node.merge(): InvalidItemStateException if unsaved changes within the current Session
 void testMergeUnknownWorkspaceName()
          Perform a merge on a node with a unkwnown workspacename
 
Methods inherited from class org.apache.jackrabbit.test.api.version.AbstractMergeTest
tearDown
 
Methods inherited from class org.apache.jackrabbit.test.AbstractJCRTest
createRandomString, getNonExistingWorkspaceName, getProperty, getSize, run
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, runBare, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MergeNodeTest

public MergeNodeTest()
Method Detail

setUp

protected void setUp()
              throws java.lang.Exception
Description copied from class: AbstractMergeTest
Initialising used variables coming from the properties file.
Setup some nodes on the 2 workspaces.

Overrides:
setUp in class AbstractMergeTest
Throws:
java.lang.Exception

testMergeNodeWithUnsavedStates

public void testMergeNodeWithUnsavedStates()
                                    throws javax.jcr.RepositoryException
Node.merge(): InvalidItemStateException if unsaved changes within the current Session

Throws:
javax.jcr.RepositoryException

testMergeUnknownWorkspaceName

public void testMergeUnknownWorkspaceName()
                                   throws javax.jcr.RepositoryException
Perform a merge on a node with a unkwnown workspacename

Throws:
javax.jcr.RepositoryException

testMergeNodeNonCorrespondingNode

public void testMergeNodeNonCorrespondingNode()
                                       throws javax.jcr.RepositoryException
Node.merge(): If this node does not have a corresponding node in the indicated workspace
then the merge method returns quietly and no changes are made.

Throws:
javax.jcr.RepositoryException

testMergeNodeVersionAmbiguous

public void testMergeNodeVersionAmbiguous()
                                   throws javax.jcr.RepositoryException
Node.merge(): versionable subNode N checked-in: If V is neither a successor of, predecessor of, nor identical with V', then the merge result for N is failed

Throws:
javax.jcr.RepositoryException

testMergeNodeBestEffortTrueCheckMergeFailedProperty

public void testMergeNodeBestEffortTrueCheckMergeFailedProperty()
                                                         throws javax.jcr.RepositoryException
Node.merge(): bestEffort is true > any merge-failure (represented by the version in the workspace) is reported in the jcrMergeFailed property

Throws:
javax.jcr.RepositoryException

disable_testMergeNodeForceFailure

public void disable_testMergeNodeForceFailure()
                                       throws javax.jcr.RepositoryException
if mergeFailedProperty is present > VersionException

Throws:
javax.jcr.RepositoryException

testMergeNodeBestEffortFalse

public void testMergeNodeBestEffortFalse()
                                  throws javax.jcr.RepositoryException
Node.merge(): bestEffort is false and any merge fails a MergeException is thrown.

Throws:
javax.jcr.RepositoryException

testMergeNodeBestEffortFalseAmbiguousVersions

public void testMergeNodeBestEffortFalseAmbiguousVersions()
                                                   throws javax.jcr.RepositoryException
A MergeVersionException is thrown if bestEffort is false and a versionable node is encountered whose corresponding node's base version is on a divergent branch from this node's base version.

Throws:
javax.jcr.RepositoryException

disable_testMergeLocked

public void disable_testMergeLocked()
                             throws NotExecutableException,
                                    javax.jcr.RepositoryException
Tests if a LockException is thrown when merge is called on a locked node.

Throws:
NotExecutableException - if repository does not support locking.
javax.jcr.RepositoryException

initNodes

protected void initNodes()
                  throws javax.jcr.RepositoryException
initialize a versionable node on default and second workspace

Throws:
javax.jcr.RepositoryException


Copyright © -2005 . All Rights Reserved.