Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorspingel2007-12-19 22:34:07 +0000
committerspingel2007-12-19 22:34:07 +0000
commit240398a49d2f508c8aa7922e49a753e905778065 (patch)
tree03a827cc7671385628055a08037b5c69eec3a898 /org.eclipse.mylyn.tasks.tests
parentbd9fc360e93de9653a25afc3fb53ca2e08d53e73 (diff)
downloadorg.eclipse.mylyn.tasks-240398a49d2f508c8aa7922e49a753e905778065.tar.gz
org.eclipse.mylyn.tasks-240398a49d2f508c8aa7922e49a753e905778065.tar.xz
org.eclipse.mylyn.tasks-240398a49d2f508c8aa7922e49a753e905778065.zip
NEW - bug 209281: [working sets] renaming left stale project in working set
https://bugs.eclipse.org/bugs/show_bug.cgi?id=209281
Diffstat (limited to 'org.eclipse.mylyn.tasks.tests')
-rw-r--r--org.eclipse.mylyn.tasks.tests/META-INF/MANIFEST.MF3
-rw-r--r--org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java112
2 files changed, 90 insertions, 25 deletions
diff --git a/org.eclipse.mylyn.tasks.tests/META-INF/MANIFEST.MF b/org.eclipse.mylyn.tasks.tests/META-INF/MANIFEST.MF
index 6c5e1ada2..1980ce757 100644
--- a/org.eclipse.mylyn.tasks.tests/META-INF/MANIFEST.MF
+++ b/org.eclipse.mylyn.tasks.tests/META-INF/MANIFEST.MF
@@ -24,7 +24,8 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.mylyn,
org.eclipse.mylyn.web.core,
org.eclipse.jface.text,
- org.eclipse.test.performance
+ org.eclipse.test.performance,
+ org.eclipse.ui.ide
Eclipse-AutoStart: true
Bundle-ClassPath: mylyn-tasklist-tests.jar
Export-Package: org.eclipse.mylyn.tasks.tests,
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java
index 33e425bed..2076d4b09 100644
--- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java
+++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java
@@ -8,48 +8,112 @@
package org.eclipse.mylyn.tasks.tests;
+import java.lang.reflect.InvocationTargetException;
import java.util.Arrays;
import junit.framework.TestCase;
+import org.eclipse.core.internal.resources.ProjectDescription;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.mylyn.internal.tasks.ui.workingsets.TaskWorkingSetUpdater;
-import org.eclipse.mylyn.tasks.core.TaskList;
-import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery;
-import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
+import org.eclipse.mylyn.resources.tests.ResourceTestUtil;
import org.eclipse.ui.IWorkingSet;
import org.eclipse.ui.IWorkingSetManager;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
import org.eclipse.ui.internal.Workbench;
public class TaskWorkingSetTest extends TestCase {
- public void testRenameQuery() {
- MockRepositoryQuery query = new MockRepositoryQuery("description");
- TaskList taskList = TasksUiPlugin.getTaskListManager().getTaskList();
- taskList.addQuery(query);
+ private IProject project;
- IWorkingSetManager workingSetManager = Workbench.getInstance().getWorkingSetManager();
- IWorkingSet workingSet = workingSetManager.createWorkingSet(TaskWorkingSetUpdater.ID_TASK_WORKING_SET, new IAdaptable[] { query });
- assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+ private IWorkspaceRoot root;
+
+ private IWorkingSet workingSet;
+
+ private IWorkingSetManager workingSetManager;
+
+ @Override
+ protected void setUp() throws Exception {
+ workingSetManager = Workbench.getInstance().getWorkingSetManager();
+ root = ResourcesPlugin.getWorkspace().getRoot();
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ if (workingSet != null) {
+ workingSetManager.removeWorkingSet(workingSet);
+ }
- TasksUiPlugin.getTaskListManager().getTaskList().deleteQuery(query);
- query = new MockRepositoryQuery("newDescription");
- TasksUiPlugin.getTaskListManager().getTaskList().addQuery(query);
- assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+ if (project != null) {
+ ResourceTestUtil.deleteProject(project);
+ }
}
- public void testEditQuery() {
- MockRepositoryQuery query = new MockRepositoryQuery("description");
- TaskList taskList = TasksUiPlugin.getTaskListManager().getTaskList();
- taskList.addQuery(query);
+ // XXX see bug 212962
+// public void testRenameQuery() {
+// MockRepositoryQuery query = new MockRepositoryQuery("description");
+// TaskList taskList = TasksUiPlugin.getTaskListManager().getTaskList();
+// taskList.addQuery(query);
+// workingSet = createWorkingSet(query);
+//
+// TasksUiPlugin.getTaskListManager().getTaskList().deleteQuery(query);
+// query = new MockRepositoryQuery("newDescription");
+// TasksUiPlugin.getTaskListManager().getTaskList().addQuery(query);
+// assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+// }
+//
+// public void testEditQuery() {
+// MockRepositoryQuery query = new MockRepositoryQuery("description");
+// TaskList taskList = TasksUiPlugin.getTaskListManager().getTaskList();
+// taskList.addQuery(query);
+// workingSet = createWorkingSet(query);
+//
+// TasksUiPlugin.getTaskListManager().getTaskList().deleteQuery(query);
+// TasksUiPlugin.getTaskListManager().getTaskList().addQuery(query);
+// assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+// }
- IWorkingSetManager workingSetManager = Workbench.getInstance().getWorkingSetManager();
- IWorkingSet workingSet = workingSetManager.createWorkingSet(TaskWorkingSetUpdater.ID_TASK_WORKING_SET, new IAdaptable[] { query });
- assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+ public void testRenameProject() throws Exception {
+ createProject("Test Rename");
+ workingSet = createWorkingSet(project);
+
+ WorkspaceModifyOperation op = new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(IProgressMonitor monitor) throws CoreException, InvocationTargetException,
+ InterruptedException {
+ IProjectDescription description = new ProjectDescription();
+ description.setName("New Name");
+ project.move(description, true, new NullProgressMonitor());
+ }
+ };
+ op.run(new NullProgressMonitor());
- TasksUiPlugin.getTaskListManager().getTaskList().deleteQuery(query);
- TasksUiPlugin.getTaskListManager().getTaskList().addQuery(query);
- assertTrue(Arrays.asList(workingSet.getElements()).contains(query));
+ IProject oldProject = root.getProject("Test Rename");
+ IProject newProject = root.getProject("New Name");
+ assertFalse(Arrays.asList(workingSet.getElements()).contains(oldProject));
+ assertTrue(Arrays.asList(workingSet.getElements()).contains(newProject));
+ }
+
+ private void createProject(String name) throws CoreException {
+ project = root.getProject(name);
+ project.create(null);
+ project.open(null);
+ }
+
+ private IWorkingSet createWorkingSet(IAdaptable element) {
+ IWorkingSet workingSet = workingSetManager.createWorkingSet("Task Working Set",
+ new IAdaptable[] { element });
+ workingSet.setId(TaskWorkingSetUpdater.ID_TASK_WORKING_SET);
+ assertTrue(Arrays.asList(workingSet.getElements()).contains(element));
+ workingSetManager.addWorkingSet(workingSet);
+ return workingSet;
}
}

Back to the top