Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java108
1 files changed, 84 insertions, 24 deletions
diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java
index c7b27c63ec..6e3e3630b5 100644
--- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java
+++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ResourceTest.java
@@ -20,6 +20,7 @@ import org.eclipse.emf.cdo.common.lob.CDOBlob;
import org.eclipse.emf.cdo.common.lob.CDOClob;
import org.eclipse.emf.cdo.common.revision.CDORevision;
import org.eclipse.emf.cdo.common.revision.CDORevisionData;
+import org.eclipse.emf.cdo.common.util.CDODuplicateResourceException;
import org.eclipse.emf.cdo.eresource.CDOBinaryResource;
import org.eclipse.emf.cdo.eresource.CDOResource;
import org.eclipse.emf.cdo.eresource.CDOResourceFolder;
@@ -548,6 +549,89 @@ public class ResourceTest extends AbstractCDOTest
session.close();
}
+ public void testSetPathConflict() throws Exception
+ {
+ CDOSession session = openSession();
+ CDOTransaction transaction = session.openTransaction();
+ CDOResource resource0 = transaction.createResource(getResourcePath("/my/resource0"));
+ CDOResource resource1 = transaction.createResource(getResourcePath("/my/resource1"));
+ transaction.commit();
+
+ try
+ {
+ resource0.setPath(resource1.getPath());
+ fail("CDODuplicateResourceException expected");
+ }
+ catch (CDODuplicateResourceException expected)
+ {
+ // SUCCESS
+ }
+ }
+
+ public void testSetFolder() throws Exception
+ {
+ CDOSession session = openSession();
+ CDOTransaction transaction = session.openTransaction();
+ CDOResource resource = transaction.createResource(getResourcePath("res"));
+ CDOResourceFolder folder = transaction.createResourceFolder(getResourcePath("folder"));
+ transaction.commit();
+
+ resource.setFolder(folder);
+ transaction.commit();
+ }
+
+ public void testSetFolderConflict() throws Exception
+ {
+ CDOSession session = openSession();
+ CDOTransaction transaction = session.openTransaction();
+ CDOResource resource = transaction.createResource(getResourcePath("res"));
+ CDOResourceFolder folder = transaction.createResourceFolder(getResourcePath("folder"));
+ transaction.createResource(getResourcePath("folder/res"));
+ transaction.commit();
+
+ try
+ {
+ resource.setFolder(folder);
+ fail("CDODuplicateResourceException expected");
+ }
+ catch (CDODuplicateResourceException expected)
+ {
+ // SUCCESS
+ }
+ }
+
+ public void testMove() throws Exception
+ {
+ CDOSession session = openSession();
+ CDOTransaction transaction = session.openTransaction();
+ CDOResource resource = transaction.createResource(getResourcePath("res"));
+ CDOResourceFolder folder = transaction.createResourceFolder(getResourcePath("folder"));
+ transaction.commit();
+
+ folder.getNodes().add(resource);
+ transaction.commit();
+ }
+
+ public void testMoveConflict() throws Exception
+ {
+ CDOSession session = openSession();
+ CDOTransaction transaction = session.openTransaction();
+ CDOResource resource = transaction.createResource(getResourcePath("res"));
+ CDOResourceFolder folder = transaction.createResourceFolder(getResourcePath("folder"));
+ transaction.createResource(getResourcePath("folder/res"));
+ transaction.commit();
+
+ try
+ {
+ folder.getNodes().add(resource);
+ fail("CDODuplicateResourceException expected");
+ }
+ catch (CDODuplicateResourceException expected)
+ {
+ // SUCCESS
+ }
+ }
+
@CleanRepositoriesBefore(reason = "Root resource access")
@CleanRepositoriesAfter(reason = "Root resource access")
public void testMoveToRoot() throws Exception
@@ -594,30 +678,6 @@ public class ResourceTest extends AbstractCDOTest
assertEquals(true, CDOIDUtil.isNull(data.getResourceID()));
}
- public void testDuplicatePath() throws Exception
- {
- CDOSession session = openSession();
- CDOTransaction transaction = session.openTransaction();
- transaction.createResource(getResourcePath("/my/resource"));
- transaction.commit();
-
- transaction.createResource(getResourcePath("/my/resource"));
-
- try
- {
- transaction.commit();
- fail("CommitException expected");
- }
- catch (CommitException expected)
- {
- // Success
- }
- finally
- {
- session.close();
- }
- }
-
public void testDuplicatePathAfterDetach() throws Exception
{
CDOSession session = openSession();

Back to the top