diff options
author | Stephan Herrmann | 2011-05-28 15:58:52 +0000 |
---|---|---|
committer | Stephan Herrmann | 2011-05-28 15:58:52 +0000 |
commit | e8ab78b129bcfe4187fa8a6e82ed10e2521a207f (patch) | |
tree | 8400d91be69921484dbd6a7ec46637a1a6d67963 /testplugins/org.eclipse.objectteams.otdt.ui.tests | |
parent | 0fd754729d1bc76ffb0c20783184caf5fe644227 (diff) | |
download | org.eclipse.objectteams-e8ab78b129bcfe4187fa8a6e82ed10e2521a207f.tar.gz org.eclipse.objectteams-e8ab78b129bcfe4187fa8a6e82ed10e2521a207f.tar.xz org.eclipse.objectteams-e8ab78b129bcfe4187fa8a6e82ed10e2521a207f.zip |
Test harness and fix for Bug 347546 - [model] role creation wizard leaks working copies
Diffstat (limited to 'testplugins/org.eclipse.objectteams.otdt.ui.tests')
2 files changed, 29 insertions, 1 deletions
diff --git a/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/RoleCreationTests.java b/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/RoleCreationTests.java index 460b3bd73..3af833a18 100644 --- a/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/RoleCreationTests.java +++ b/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/RoleCreationTests.java @@ -32,6 +32,8 @@ import org.eclipse.jdt.core.IPackageFragment; import org.eclipse.jdt.core.IPackageFragmentRoot; import org.eclipse.jdt.core.IType; import org.eclipse.jdt.core.JavaModelException; +import org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner; +import org.eclipse.jdt.internal.core.JavaModelManager; import org.eclipse.objectteams.otdt.core.IOTType; import org.eclipse.objectteams.otdt.core.IRoleType; import org.eclipse.objectteams.otdt.core.OTModelManager; @@ -81,6 +83,18 @@ public class RoleCreationTests extends FileBasedUITest _roleCreator = new RoleCreator(); } + @Override + protected void tearDown() throws Exception { + ICompilationUnit[] primaryWCs = JavaModelManager.getJavaModelManager().getWorkingCopies(DefaultWorkingCopyOwner.PRIMARY, false); + try { + assertEquals("All working copies should be discarded", 0, primaryWCs == null ? 0 : primaryWCs.length); + } finally { + if (primaryWCs != null) + for (int i = 0; i < primaryWCs.length; i++) + primaryWCs[i].discardWorkingCopy(); + super.tearDown(); + } + } // /** // * only for debug purposes // * if created directory is not deleted after a test run diff --git a/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/TeamCreationTests.java b/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/TeamCreationTests.java index 0589bd9eb..315f8b933 100644 --- a/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/TeamCreationTests.java +++ b/testplugins/org.eclipse.objectteams.otdt.ui.tests/src/org/eclipse/objectteams/otdt/ui/tests/typecreator/TeamCreationTests.java @@ -28,12 +28,13 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.jdt.core.Flags; import org.eclipse.jdt.core.ICompilationUnit; -import org.eclipse.jdt.core.IInitializer; import org.eclipse.jdt.core.IMethod; import org.eclipse.jdt.core.IPackageFragment; import org.eclipse.jdt.core.IPackageFragmentRoot; import org.eclipse.jdt.core.IType; import org.eclipse.jdt.core.JavaModelException; +import org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner; +import org.eclipse.jdt.internal.core.JavaModelManager; import org.eclipse.objectteams.otdt.core.IOTType; import org.eclipse.objectteams.otdt.core.OTModelManager; import org.eclipse.objectteams.otdt.internal.ui.wizards.typecreation.TeamCreator; @@ -81,6 +82,19 @@ public class TeamCreationTests extends FileBasedUITest super.setUp(); _teamCreator = new TeamCreator(); } + + @Override + protected void tearDown() throws Exception { + ICompilationUnit[] primaryWCs = JavaModelManager.getJavaModelManager().getWorkingCopies(DefaultWorkingCopyOwner.PRIMARY, false); + try { + assertEquals("All working copies should be discarded", 0, primaryWCs == null ? 0 : primaryWCs.length); + } finally { + if (primaryWCs != null) + for (int i = 0; i < primaryWCs.length; i++) + primaryWCs[i].discardWorkingCopy(); + super.tearDown(); + } + } // /** // * only for debug purposes |