diff options
author | Michael Valenta | 2002-05-06 21:18:47 +0000 |
---|---|---|
committer | Michael Valenta | 2002-05-06 21:18:47 +0000 |
commit | 3eda34823265fa8cf1d115d6bb811864e6afb40c (patch) | |
tree | 9632fcf21064d6edeb1df943a8e611c020fe776e /tests | |
parent | dcfd4485d8b22de3eeb8a344fad6263538f7d0f0 (diff) | |
download | eclipse.platform.team-3eda34823265fa8cf1d115d6bb811864e6afb40c.tar.gz eclipse.platform.team-3eda34823265fa8cf1d115d6bb811864e6afb40c.tar.xz eclipse.platform.team-3eda34823265fa8cf1d115d6bb811864e6afb40c.zip |
Added phantoms for deleted folders with file deletion children
Diffstat (limited to 'tests')
-rw-r--r-- | tests/org.eclipse.team.tests.cvs.core/src/org/eclipse/team/tests/ccvs/core/provider/SyncElementTest.java | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/tests/org.eclipse.team.tests.cvs.core/src/org/eclipse/team/tests/ccvs/core/provider/SyncElementTest.java b/tests/org.eclipse.team.tests.cvs.core/src/org/eclipse/team/tests/ccvs/core/provider/SyncElementTest.java index a53080ef8..05a90ae64 100644 --- a/tests/org.eclipse.team.tests.cvs.core/src/org/eclipse/team/tests/ccvs/core/provider/SyncElementTest.java +++ b/tests/org.eclipse.team.tests.cvs.core/src/org/eclipse/team/tests/ccvs/core/provider/SyncElementTest.java @@ -811,7 +811,7 @@ public class SyncElementTest extends EclipseTest { public void testFolderDeletion() throws TeamException, CoreException { - IProject project = createProject("testFolderDeletion", new String[] { "changed.txt", "deleted.txt", "folder1/", "folder1/a.txt" }); + IProject project = createProject("testFolderDeletion", new String[] { "changed.txt", "deleted.txt", "folder1/", "folder1/a.txt", "folder1/folder2/file.txt"}); // Delete a folder and ensure that the file is managed but doesn't exist // (Special behavior is provider by the CVS move/delete hook but this is not part of CVS core) @@ -819,20 +819,33 @@ public class SyncElementTest extends EclipseTest { ICVSFolder folder = CVSWorkspaceRoot.getCVSFolderFor(project.getFolder("folder1")); assertTrue("Deleted folder not in proper state", ! folder.exists() && folder.isManaged()); - // The folder should show up as an incomming addition + // The folders and files should show up as outgoing deletions IRemoteSyncElement tree = CVSWorkspaceRoot.getRemoteSyncTree(project, CVSTag.DEFAULT, DEFAULT_MONITOR); assertSyncEquals("testFolderDeletion sync check", tree, - new String[] { "folder1", "folder1/a.txt"}, - new int[] { IRemoteSyncElement.INCOMING | IRemoteSyncElement.ADDITION, - IRemoteSyncElement.INCOMING | IRemoteSyncElement.ADDITION}); + new String[] { "folder1", "folder1/a.txt", "folder1/folder2", "folder1/folder2/file.txt"}, + new int[] { IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION, + IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION, + IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION, + IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION}); + + // commit folder1/a.txt + commitResources(project, new String[] { "folder1/a.txt" }); - // Update and ensure everything is back - updateProject(project, null, false); + // Resync and verify that above file is gone and others remain the same tree = CVSWorkspaceRoot.getRemoteSyncTree(project, CVSTag.DEFAULT, DEFAULT_MONITOR); assertSyncEquals("testFolderDeletion sync check", tree, - new String[] { "folder1", "folder1/a.txt"}, - new int[] { IRemoteSyncElement.IN_SYNC, - IRemoteSyncElement.IN_SYNC}); + new String[] { "folder1", "folder1/folder2", "folder1/folder2/file.txt"}, + new int[] { IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION, + IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION, + IRemoteSyncElement.OUTGOING | IRemoteSyncElement.DELETION}); + assertDeleted("testFolderDeletion", tree, new String[] {"folder1/a.txt"}); + + // Commit folder1/folder2/file.txt + commitResources(project, new String[] { "folder1/folder2/file.txt" }); + + // Resync and verify that all are deleted + tree = CVSWorkspaceRoot.getRemoteSyncTree(project, CVSTag.DEFAULT, DEFAULT_MONITOR); + assertDeleted("testFolderDeletion", tree, new String[] {"folder1", "folder1/folder2", "folder1/folder2/file.txt"}); } /** * There is special handling required when building a sync tree for a tag when there are undiscovered folders |