diff options
author | mkersten | 2007-09-20 23:01:51 +0000 |
---|---|---|
committer | mkersten | 2007-09-20 23:01:51 +0000 |
commit | c35a4788916573f7fe9f320567d00bdd94fc8c99 (patch) | |
tree | 7cbe3b0bd0bd1f7cc91e6535c76a44278225fff9 /org.eclipse.mylyn.tasks.tests | |
parent | 3a975a54a70b2f8ded0ae573ee68be23275e722b (diff) | |
download | org.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.xml | 6 | ||||
-rw-r--r-- | org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java | 88 | ||||
-rw-r--r-- | org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java | 14 | ||||
-rw-r--r-- | org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java | 4 | ||||
-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 |