Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormkersten2007-09-20 23:01:51 +0000
committermkersten2007-09-20 23:01:51 +0000
commitc35a4788916573f7fe9f320567d00bdd94fc8c99 (patch)
tree7cbe3b0bd0bd1f7cc91e6535c76a44278225fff9 /org.eclipse.mylyn.tasks.tests
parent3a975a54a70b2f8ded0ae573ee68be23275e722b (diff)
downloadorg.eclipse.mylyn.tasks-c35a4788916573f7fe9f320567d00bdd94fc8c99.tar.gz
org.eclipse.mylyn.tasks-c35a4788916573f7fe9f320567d00bdd94fc8c99.tar.xz
org.eclipse.mylyn.tasks-c35a4788916573f7fe9f320567d00bdd94fc8c99.zip
RESOLVED - bug 203801: [patch] preselection of repository and project is broken in recent dev builds
https://bugs.eclipse.org/bugs/show_bug.cgi?id=203801
Diffstat (limited to 'org.eclipse.mylyn.tasks.tests')
-rw-r--r--org.eclipse.mylyn.tasks.tests/plugin.xml6
-rw-r--r--org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java88
-rw-r--r--org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java14
-rw-r--r--org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java4
-rw-r--r--org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java (renamed from org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTaskConnectorUi.java)8
5 files changed, 106 insertions, 14 deletions
diff --git a/org.eclipse.mylyn.tasks.tests/plugin.xml b/org.eclipse.mylyn.tasks.tests/plugin.xml
index 4f876c12f..a7e57d273 100644
--- a/org.eclipse.mylyn.tasks.tests/plugin.xml
+++ b/org.eclipse.mylyn.tasks.tests/plugin.xml
@@ -16,6 +16,12 @@
<taskListFactory
class="org.eclipse.mylyn.tasks.tests.connector.MockTaskListFactory"
id="org.eclipse.mylyn.tasks.tests.factory"/>
+ <connectorUi
+ class="org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnectorUi"
+ customNotifications="false"
+ id="org.eclipse.mylyn.tasks.tests.repositories.ui"
+ name="Mock Repository Connector UI">
+ </connectorUi>
</extension>
</plugin>
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java
new file mode 100644
index 000000000..73c228ccd
--- /dev/null
+++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Mylyn project committers and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+
+package org.eclipse.mylyn.tasks.tests;
+
+import junit.framework.TestCase;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector;
+import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView;
+import org.eclipse.mylyn.internal.tasks.ui.wizards.NewTaskWizard;
+import org.eclipse.mylyn.internal.tasks.ui.wizards.SelectRepositoryPage;
+import org.eclipse.mylyn.tasks.core.TaskRepository;
+import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector;
+import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryTask;
+import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * @author Mik Kersten
+ */
+public class NewTaskWizardRepositorySelectionTest extends TestCase {
+
+ // see bug 203801
+ public void testRepositorySettingWithTaskListSelection() {
+ TaskRepository mockRepository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND,
+ MockRepositoryConnector.REPOSITORY_URL);
+ TasksUiPlugin.getRepositoryManager().addRepository(mockRepository,
+ TasksUiPlugin.getDefault().getRepositoriesFilePath());
+
+ Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ TaskListView view = TaskListView.openInActivePerspective();
+ MockRepositoryTask mockTask = new MockRepositoryTask("mock.task");
+ TasksUiPlugin.getTaskActivityManager().scheduleNewTask(mockTask);
+ TasksUiPlugin.getTaskListManager().getTaskList().addTask(mockTask,
+ TasksUiPlugin.getTaskListManager().getTaskList().getDefaultCategory());
+
+ view.setFocusedMode(true);
+ view.refreshAndFocus(true);
+ view.getViewer().setSelection(new StructuredSelection(mockTask), true);
+ assertEquals(mockTask, ((StructuredSelection) view.getViewer().getSelection()).getFirstElement());
+
+ NewTaskWizard wizard = new NewTaskWizard();
+ WizardDialog dialog = null;
+ dialog = new WizardDialog(shell, wizard);
+ dialog.setBlockOnOpen(false);
+ dialog.open();
+
+ SelectRepositoryPage page = (SelectRepositoryPage) wizard.getPages()[0];
+ assertTrue(page.getRepositories().contains(mockRepository));
+ assertEquals(mockRepository, ((IStructuredSelection) page.getViewer().getSelection()).getFirstElement());
+
+ TasksUiPlugin.getRepositoryManager().removeRepository(mockRepository,
+ TasksUiPlugin.getDefault().getRepositoriesFilePath());
+ TasksUiPlugin.getTaskListManager().getTaskList().deleteTask(mockTask);
+ wizard.dispose();
+ dialog.close();
+ }
+
+ // see bug bug 202184
+ public void testDefaultWithNoTaskListSelection() {
+ TaskListView view = TaskListView.openInActivePerspective();
+ view.getViewer().setSelection(new StructuredSelection());
+
+ NewTaskWizard wizard = new NewTaskWizard();
+ Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ WizardDialog dialog = null;
+ dialog = new WizardDialog(shell, wizard);
+ dialog.setBlockOnOpen(false);
+ dialog.open();
+
+ SelectRepositoryPage page = (SelectRepositoryPage) wizard.getPages()[0];
+ TaskRepository localRepository = TasksUiPlugin.getRepositoryManager().getRepositories(
+ LocalRepositoryConnector.REPOSITORY_KIND).iterator().next();
+ assertEquals(localRepository, ((IStructuredSelection) page.getViewer().getSelection()).getFirstElement());
+
+ wizard.dispose();
+ dialog.close();
+ }
+}
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java
index 196cba3bf..0b1df6b2b 100644
--- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java
+++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java
@@ -12,7 +12,7 @@ import junit.framework.TestCase;
import org.eclipse.jface.preference.StringFieldEditor;
import org.eclipse.mylyn.tasks.core.TaskRepository;
-import org.eclipse.mylyn.tasks.tests.connector.MockTaskConnectorUi;
+import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnectorUi;
import org.eclipse.mylyn.tasks.ui.AbstractRepositoryConnectorUi;
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin;
import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositorySettingsPage;
@@ -32,7 +32,7 @@ public class RepositorySettingsPageTest extends TestCase {
TaskRepository repository = new TaskRepository("kind", "http://localhost/");
repository.setCharacterEncoding("UTF-8");
- MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockTaskConnectorUi());
+ MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockRepositoryConnectorUi());
page.setNeedsEncoding(true);
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
@@ -44,7 +44,7 @@ public class RepositorySettingsPageTest extends TestCase {
}
public void testNeedsEncodingFalse() {
- MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockTaskConnectorUi());
+ MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockRepositoryConnectorUi());
page.setNeedsEncoding(false);
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
@@ -55,7 +55,7 @@ public class RepositorySettingsPageTest extends TestCase {
}
public void testNeedsAnonyoumousLoginFalse() {
- MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockTaskConnectorUi());
+ MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockRepositoryConnectorUi());
page.setNeedsAnonymousLogin(false);
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
@@ -66,7 +66,7 @@ public class RepositorySettingsPageTest extends TestCase {
}
public void testNeedsAnonyoumousLoginNoRepository() {
- MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockTaskConnectorUi());
+ MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockRepositoryConnectorUi());
page.setNeedsAnonymousLogin(true);
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
@@ -86,9 +86,9 @@ public class RepositorySettingsPageTest extends TestCase {
public void testNeedsAnonyoumousLogin() {
TaskRepository repository = new TaskRepository("kind", "http://localhost/");
- TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockTaskConnectorUi());
+ TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockRepositoryConnectorUi());
- MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockTaskConnectorUi());
+ MockRepositorySettingsPage page = new MockRepositorySettingsPage(new MockRepositoryConnectorUi());
page.setNeedsAnonymousLogin(true);
page.setRepository(repository);
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java
index 1eb39ef83..d9bbe6cde 100644
--- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java
+++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java
@@ -39,13 +39,11 @@ public class MockRepositoryConnector extends AbstractRepositoryConnector {
@Override
public boolean canCreateNewTask(TaskRepository repository) {
- // ignore
- return false;
+ return true;
}
@Override
public boolean canCreateTaskFromKey(TaskRepository repository) {
- // ignore
return false;
}
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTaskConnectorUi.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java
index bb4a03ded..86fba4c54 100644
--- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTaskConnectorUi.java
+++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java
@@ -9,6 +9,7 @@
package org.eclipse.mylyn.tasks.tests.connector;
import org.eclipse.jface.wizard.IWizard;
+import org.eclipse.mylyn.internal.tasks.ui.wizards.NewLocalTaskWizard;
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.ui.AbstractRepositoryConnectorUi;
@@ -17,19 +18,18 @@ import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositorySettingsPage;
/**
* @author Mik Kersten
*/
-public class MockTaskConnectorUi extends AbstractRepositoryConnectorUi {
+public class MockRepositoryConnectorUi extends AbstractRepositoryConnectorUi {
@Override
public IWizard getNewTaskWizard(TaskRepository taskRepository) {
- // ignore
- return null;
+ return new NewLocalTaskWizard();
}
@Override
public String getConnectorKind() {
return "mock";
}
-
+
@Override
public AbstractRepositorySettingsPage getSettingsPage() {
// ignore

Back to the top