diff options
Diffstat (limited to 'org.eclipse.mylyn.tasks.tests/src')
75 files changed, 0 insertions, 10874 deletions
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksPerformanceTests.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksPerformanceTests.java deleted file mode 100644 index a9d1ccffe..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksPerformanceTests.java +++ /dev/null @@ -1,29 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.Test; -import junit.framework.TestSuite; - -import org.eclipse.mylyn.tasks.tests.performance.TaskContainerTest; -import org.eclipse.mylyn.tasks.tests.performance.TaskListPerformanceTest; - -public class AllTasksPerformanceTests { - - public static Test suite() { - TestSuite suite = new TestSuite("Test for org.eclipse.mylyn.tests.performance"); - suite.addTestSuite(TaskContainerTest.class); - suite.addTestSuite(TaskListPerformanceTest.class); - return suite; - } - -}
\ No newline at end of file diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksTests.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksTests.java deleted file mode 100644 index 1523903e2..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AllTasksTests.java +++ /dev/null @@ -1,101 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.Test; -import junit.framework.TestSuite; - -import org.eclipse.mylyn.tasks.tests.core.ITasksCoreConstantsTest; -import org.eclipse.mylyn.tasks.tests.core.TaskListUnmatchedContainerTest; -import org.eclipse.mylyn.tasks.tests.core.TaskRepositoryLocationTest; -import org.eclipse.mylyn.tasks.tests.ui.ContextPerspectiveManagerTest; -import org.eclipse.mylyn.tasks.tests.ui.RetrieveTitleFromUrlTest; -import org.eclipse.mylyn.tasks.tests.ui.TaskAttachmentPropertyTesterTest; -import org.eclipse.mylyn.tasks.tests.ui.TaskHyperlinkDetectorTest; -import org.eclipse.mylyn.tasks.tests.ui.TaskRelationHyperlinkDetectorTest; -import org.eclipse.mylyn.tasks.tests.ui.editor.EditorUtilTest; -import org.eclipse.mylyn.tasks.tests.ui.editor.TaskEditorPartDescriptorTest; -import org.eclipse.mylyn.tasks.tests.ui.editor.TaskUrlHyperlinkDetectorTest; - -/** - * @author Mik Kersten - * @author Shawn Minto - */ -public class AllTasksTests { - - public static Test suite() { - TestSuite suite = new TestSuite("Test for org.eclipse.mylyn.tasks.tests"); - suite.addTestSuite(TaskRepositoryTest.class); - suite.addTestSuite(LinkProviderTest.class); - suite.addTestSuite(TaskActivationActionTest.class); - suite.addTestSuite(TaskListPresentationTest.class); - suite.addTestSuite(TaskRepositorySorterTest.class); - suite.addTestSuite(CopyDetailsActionTest.class); - suite.addTestSuite(NewTaskFromSelectionActionTest.class); - suite.addTestSuite(TaskListTest.class); - suite.addTestSuite(ProjectRepositoryAssociationTest.class); - suite.addTestSuite(TaskPlanningEditorTest.class); - suite.addTestSuite(TaskListExternalizationTest.class); - suite.addTestSuite(TaskDataManagerTest.class); - suite.addTestSuite(TaskRepositoryManagerTest.class); - suite.addTestSuite(TaskRepositoriesExternalizerTest.class); - suite.addTestSuite(TaskListContentProviderTest.class); - suite.addTestSuite(TaskListBackupManagerTest.class); - suite.addTestSuite(TaskListSorterTest.class); - suite.addTestSuite(TaskKeyComparatorTest.class); - suite.addTestSuite(TaskTest.class); - suite.addTestSuite(TaskListUiTest.class); - suite.addTestSuite(TaskListDropAdapterTest.class); - suite.addTestSuite(TasksUiUtilTest.class); - suite.addTestSuite(TaskDataExportTest.class); - suite.addTestSuite(ScheduledPresentationTest.class); - suite.addTestSuite(TaskActivityTimingTest.class); - suite.addTestSuite(TaskAttachmentTest.class); - suite.addTestSuite(RepositorySettingsPageTest.class); - suite.addTestSuite(CommentQuoterTest.class); - suite.addTestSuite(TaskDataStoreTest.class); - suite.addTestSuite(TaskExportImportTest.class); - suite.addTestSuite(PersonProposalProviderTest.class); - suite.addTestSuite(TaskRepositoryLocationTest.class); - suite.addTestSuite(AttachmentSizeFormatterTest.class); - suite.addTestSuite(TaskMapperTest.class); - suite.addTestSuite(TaskListUnmatchedContainerTest.class); - suite.addTestSuite(TaskWorkingSetTest.class); - suite.addTestSuite(TaskActivationHistoryTest.class); - suite.addTestSuite(TaskActivityManagerTest.class); - suite.addTestSuite(TaskRepositoryFilterTests.class); - suite.addTestSuite(TaskDiffUtilTest.class); - suite.addTestSuite(RefactorRepositoryUrlOperationTest.class); - suite.addTestSuite(StackTraceDuplicateDetectorTest.class); - // XXX fix and reenable - //suite.addTestSuite(MarkTaskHandlerTest.class); - suite.addTestSuite(RepositoryTemplateManagerTest.class); - suite.addTestSuite(TaskHyperlinkDetectorTest.class); - suite.addTestSuite(TaskRelationHyperlinkDetectorTest.class); - suite.addTestSuite(TaskUrlHyperlinkDetectorTest.class); - suite.addTestSuite(TaskEditorPartDescriptorTest.class); - suite.addTestSuite(TaskAttachmentPropertyTesterTest.class); - suite.addTestSuite(CommentGroupStrategyTest.class); - suite.addTestSuite(ContextPerspectiveManagerTest.class); - suite.addTestSuite(ITasksCoreConstantsTest.class); - suite.addTestSuite(RetrieveTitleFromUrlTest.class); - suite.addTestSuite(EditorUtilTest.class); - - // XXX long running tests, put back? - //suite.addTestSuite(TaskDataImportTest.class); - //suite.addTestSuite(QueryExportImportTest.class); - //suite.addTestSuite(BackgroundSaveTest.class); - - return suite; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AttachmentSizeFormatterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AttachmentSizeFormatterTest.java deleted file mode 100644 index 0a4cf1b65..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/AttachmentSizeFormatterTest.java +++ /dev/null @@ -1,76 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Willian Mitsuda 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 - * - * Contributors: - * Willian Mitsuda - initial API and implementation - * Frank Becker - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Locale; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.editors.AttachmentSizeFormatter; - -/** - * Tests attachment size value formatting. - * - * @author Willian Mitsuda - * @author Frank Becker - */ -public class AttachmentSizeFormatterTest extends TestCase { - - public void testInvalidString() { - AttachmentSizeFormatter formatter = AttachmentSizeFormatter.getInstance(); - assertEquals(AttachmentSizeFormatter.UNKNOWN_SIZE, formatter.format(null)); - assertEquals(AttachmentSizeFormatter.UNKNOWN_SIZE, formatter.format("x")); - } - - public void testNotAValidNumber() { - AttachmentSizeFormatter formatter = AttachmentSizeFormatter.getInstance(); - assertEquals(AttachmentSizeFormatter.UNKNOWN_SIZE, formatter.format("-5")); - assertEquals(AttachmentSizeFormatter.UNKNOWN_SIZE, formatter.format("1.0")); - } - - public void testByteFormatter() { - AttachmentSizeFormatter formatter = new AttachmentSizeFormatter(Locale.ENGLISH); - assertEquals("1 byte", formatter.format("1")); - assertEquals("2 bytes", formatter.format("2")); - assertEquals("1023 bytes", formatter.format("1023")); - } - - public void testKBFormatter() { - AttachmentSizeFormatter formatterEnglish = new AttachmentSizeFormatter(Locale.ENGLISH); - assertEquals("1.00 KB", formatterEnglish.format("1024")); - assertEquals("1024.00 KB", formatterEnglish.format("1048575")); - - AttachmentSizeFormatter formatterGerman = new AttachmentSizeFormatter(Locale.GERMAN); - assertEquals("1,00 KB", formatterGerman.format("1024")); - assertEquals("1024,00 KB", formatterGerman.format("1048575")); - } - - public void testMBFormatter() { - AttachmentSizeFormatter formatterEnglish = new AttachmentSizeFormatter(Locale.ENGLISH); - assertEquals("1.00 MB", formatterEnglish.format("1048576")); - assertEquals("1024.00 MB", formatterEnglish.format("1073741823")); - - AttachmentSizeFormatter formatterGerman = new AttachmentSizeFormatter(Locale.GERMAN); - assertEquals("1,00 MB", formatterGerman.format("1048576")); - assertEquals("1024,00 MB", formatterGerman.format("1073741823")); - } - - public void testGBFormatter() { - AttachmentSizeFormatter formatterEnglish = new AttachmentSizeFormatter(Locale.ENGLISH); - assertEquals("1.00 GB", formatterEnglish.format("1073741824")); - - AttachmentSizeFormatter formatterGerman = new AttachmentSizeFormatter(Locale.GERMAN); - assertEquals("1,00 GB", formatterGerman.format("1073741824")); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/BackgroundSaveTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/BackgroundSaveTest.java deleted file mode 100644 index 2d918bbaa..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/BackgroundSaveTest.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.IOException; -import java.util.Locale; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; - -/** - * Tests the mechanism for saving the task data periodically. - * - * @author Wesley Coelho - * @author Mik Kersten (rewrite) - */ -public class BackgroundSaveTest extends TestCase { - - public void testBackgroundSave() throws InterruptedException, IOException { - if (System.getProperty("os.name").toLowerCase(Locale.ENGLISH).contains("linux")) { - System.out.println("> BackgroundSaveTest.testBackgroundSave() not run on Linux due to IO concurrency"); - } else { - LocalTask task = new LocalTask("1", "summary"); - String filePath = TasksUiPlugin.getDefault().getDataDirectory() + File.separator - + ITasksCoreConstants.DEFAULT_TASK_LIST_FILE; - - final File file = new File(filePath); - long previouslyModified = file.lastModified(); - TasksUiPlugin.getTaskList().addTask(task); - TasksUiPlugin.getExternalizationManager().requestSave(); - Thread.sleep(5000); - assertTrue(file.lastModified() > previouslyModified); - TasksUiPlugin.getTaskList().deleteTask(task); - } - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentGroupStrategyTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentGroupStrategyTest.java deleted file mode 100644 index 5300c305e..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentGroupStrategyTest.java +++ /dev/null @@ -1,240 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Jingwen Ou 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 - * - * Contributors: - * Jingwen Ou - initial implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.RepositoryPerson; -import org.eclipse.mylyn.internal.tasks.core.TaskComment; -import org.eclipse.mylyn.internal.tasks.ui.editors.CommentGroupStrategy; -import org.eclipse.mylyn.internal.tasks.ui.editors.CommentGroupStrategy.CommentGroup; -import org.eclipse.mylyn.internal.tasks.ui.util.AttachmentUtil; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.ITaskComment; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttribute; -import org.eclipse.mylyn.tasks.core.data.TaskData; - -/** - * @author Jingwen Ou - */ -public class CommentGroupStrategyTest extends TestCase { - - private static final String MOCK_CURRENT_PERSON_ID = "mockCurrentPersonId"; - - private static final String MOCK_TASK_ATTRIBUTE = "mockTaskAttribute"; - - private static final String MOCK_TEXT = "mockText"; - - private final List<ITaskComment> comments; - - private final TaskRepository repository; - - private final CommentGroupStrategy strategy; - - private final ITask task; - - private final TaskData taskData; - - public CommentGroupStrategyTest() { - repository = TaskTestUtil.createMockRepository(); - task = TaskTestUtil.createMockTask("1"); - taskData = TaskTestUtil.createMockTaskData("1"); - comments = new ArrayList<ITaskComment>(); - strategy = new CommentGroupStrategy(); - } - - private TaskComment mockComment(int number, String personId, Date date) { - return mockComment(number, personId, date, MOCK_TEXT); - } - - private TaskComment mockComment(int number, String personId, Date date, String text) { - TaskAttribute taskAttribute = taskData.getRoot().createAttribute(MOCK_TASK_ATTRIBUTE + comments.size()); - TaskComment comment = new TaskComment(repository, task, taskAttribute); - comment.setNumber(number); - comment.setAuthor(new RepositoryPerson(repository, personId)); - comment.setCreationDate(date); - comment.setText(text); - return comment; - } - - @Override - protected void setUp() throws Exception { - comments.clear(); - } - - public void testGroupCommentsAuthoredLatestComment() { - int recentComments = CommentGroupStrategy.MAX_CURRENT; - - // didn't author previous comments - for (int i = 0; i < recentComments; i++) { - comments.add(mockComment(i + 1, "OtherPerson", new Date(i + 1))); - } - // authored the latest comment - comments.add(mockComment(recentComments + 1, MOCK_CURRENT_PERSON_ID, new Date(recentComments + 1))); - - List<CommentGroup> group = strategy.groupComments(comments, MOCK_CURRENT_PERSON_ID); - - assertEquals(2, group.size()); - - CommentGroup recentGroup = group.get(0); - assertEquals(CommentGroup.RECENT, recentGroup.getGroupName()); - assertEquals(recentComments, recentGroup.getComments().size()); - - CommentGroup currentGroup = group.get(1); - assertEquals(CommentGroup.CURRENT, currentGroup.getGroupName()); - assertEquals(1, currentGroup.getComments().size()); - } - - public void testGroupCommentsMaxCurrent() { - // one less than max current - int oneLessThanMaxCurrent = CommentGroupStrategy.MAX_CURRENT - 1; - - for (int i = 0; i < oneLessThanMaxCurrent; i++) { - comments.add(mockComment(i + 1, MOCK_CURRENT_PERSON_ID, new Date(i + 1))); - } - - List<CommentGroup> group = strategy.groupComments(comments, MOCK_CURRENT_PERSON_ID); - - assertEquals(1, group.size()); - - CommentGroup currentGroup = group.get(0); - assertEquals(CommentGroup.CURRENT, currentGroup.getGroupName()); - assertEquals(oneLessThanMaxCurrent, currentGroup.getComments().size()); - } - - public void testGroupCommentsNotAuthoredLastestComment() { - // didn't author previous comments - for (int i = 0; i < CommentGroupStrategy.MAX_CURRENT; i++) { - comments.add(mockComment(i + 1, "OtherPerson", new Date(i + 1))); - } - // not even the latest comment - comments.add(mockComment(CommentGroupStrategy.MAX_CURRENT + 1, "OtherPerson", new Date( - CommentGroupStrategy.MAX_CURRENT + 1))); - - List<CommentGroup> group = strategy.groupComments(comments, MOCK_CURRENT_PERSON_ID); - - assertEquals(2, group.size()); - - CommentGroup recentGroup = group.get(0); - assertEquals(CommentGroup.RECENT, recentGroup.getGroupName()); - assertEquals(1, recentGroup.getComments().size()); - - CommentGroup currentGroup = group.get(1); - assertEquals(CommentGroup.CURRENT, currentGroup.getGroupName()); - assertEquals(CommentGroupStrategy.MAX_CURRENT, currentGroup.getComments().size()); - } - - public void testGroupComments_RecentAndOlder() { - int total = CommentGroupStrategy.MAX_CURRENT + CommentGroupStrategy.MAX_RECENT; - // didn't author previous comments - for (int i = 0; i < total; i++) { - comments.add(mockComment(i + 1, "OtherPerson", new Date(i + 1))); - } - // not even the latest comment - comments.add(mockComment(total + 1, "OtherPerson", new Date(total + 1))); - - List<CommentGroup> group = strategy.groupComments(comments, MOCK_CURRENT_PERSON_ID); - - assertEquals(3, group.size()); - - CommentGroup olderGroup = group.get(0); - assertEquals(CommentGroup.OLDER, olderGroup.getGroupName()); - assertEquals(1, olderGroup.getComments().size()); - - CommentGroup recentGroup = group.get(1); - assertEquals(CommentGroup.RECENT, recentGroup.getGroupName()); - assertEquals(CommentGroupStrategy.MAX_RECENT, recentGroup.getComments().size()); - - CommentGroup currentGroup = group.get(2); - assertEquals(CommentGroup.CURRENT, currentGroup.getGroupName()); - assertEquals(CommentGroupStrategy.MAX_CURRENT, currentGroup.getComments().size()); - } - - public void testGroupCommentsRecentAndOlder2() { - int older = 10; - int recent = CommentGroupStrategy.MAX_RECENT; - int total = older + recent; - // author previous comments - for (int i = 0; i < total; i++) { - comments.add(mockComment(i + 1, MOCK_CURRENT_PERSON_ID, new Date(i + 1))); - } - // even the latest comment - comments.add(mockComment(total + 1, MOCK_CURRENT_PERSON_ID, new Date(total + 1))); - - List<CommentGroup> group = strategy.groupComments(comments, MOCK_CURRENT_PERSON_ID); - - assertEquals(3, group.size()); - - CommentGroup olderGroup = group.get(0); - assertEquals(CommentGroup.OLDER, olderGroup.getGroupName()); - assertEquals(older, olderGroup.getComments().size()); - - CommentGroup recentGroup = group.get(1); - assertEquals(CommentGroup.RECENT, recentGroup.getGroupName()); - assertEquals(recent, recentGroup.getComments().size()); - - CommentGroup currentGroup = group.get(2); - assertEquals(CommentGroup.CURRENT, currentGroup.getGroupName()); - assertEquals(1, currentGroup.getComments().size()); - } - - // 2: current person - // 1: current person - public void testIsCurrentAuthoredPreviousComment() { - comments.add(mockComment(2, MOCK_CURRENT_PERSON_ID, new Date(2))); - boolean isCurrent = strategy.isCurrent(comments, mockComment(1, MOCK_CURRENT_PERSON_ID, new Date(1)), - MOCK_CURRENT_PERSON_ID); - assertEquals(false, isCurrent); - } - - // 2: current person - system generated, e.g. mylyn/context/zip - // 1: current person - public void testIsCurrentAuthoredPreviousCommentButSystemGenerated() { - comments.add(mockComment(2, MOCK_CURRENT_PERSON_ID, new Date(2), AttachmentUtil.CONTEXT_DESCRIPTION)); - boolean isCurrent = strategy.isCurrent(comments, mockComment(1, MOCK_CURRENT_PERSON_ID, new Date(1)), - MOCK_CURRENT_PERSON_ID); - assertEquals(true, isCurrent); - } - - // test max current - public void testIsCurrentMaxCurrent() { - for (int i = 0; i < CommentGroupStrategy.MAX_CURRENT; i++) { - comments.add(mockComment(i + 1, MOCK_CURRENT_PERSON_ID, new Date(i + 1))); - } - - boolean isCurrent = strategy.isCurrent(comments, mockComment(CommentGroupStrategy.MAX_CURRENT + 1, - MOCK_CURRENT_PERSON_ID, new Date(CommentGroupStrategy.MAX_CURRENT + 1)), MOCK_CURRENT_PERSON_ID); - assertEquals(false, isCurrent); - } - - // no comment - public void testIsCurrentNoComment() { - boolean isCurrent = strategy.isCurrent(comments, mockComment(1, MOCK_CURRENT_PERSON_ID, new Date(1)), - MOCK_CURRENT_PERSON_ID); - assertEquals(true, isCurrent); - } - - // 2: another person - // 1: current person - public void testIsCurrentNotAuthoredPreviousComment() { - comments.add(mockComment(2, "AnotherPerson", new Date(2), MOCK_TEXT)); - boolean isCurrent = strategy.isCurrent(comments, mockComment(1, MOCK_CURRENT_PERSON_ID, new Date(1)), - MOCK_CURRENT_PERSON_ID); - assertEquals(true, isCurrent); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentQuoterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentQuoterTest.java deleted file mode 100644 index fa74cc620..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CommentQuoterTest.java +++ /dev/null @@ -1,73 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Willian Mitsuda 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 - * - * Contributors: - * Willian Mitsuda - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.CommentQuoter; - -/** - * Test many quoting scenarios - * - * @author Willian Mitsuda - */ -public class CommentQuoterTest extends TestCase { - - public void testNoWrapping() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa"); - assertEquals("> bababa\n", quotedText); - } - - public void testSimpleWrapping() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa bobobo"); - assertEquals("> bababa\n> bobobo\n", quotedText); - } - - public void testNoWayToWrap() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("babababababa"); - assertEquals("> babababababa\n", quotedText); - } - - public void testExactWrap() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababababa"); - assertEquals("> bababababa\n", quotedText); - } - - public void testMultiLineNoWrapping() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa\nbobobo"); - assertEquals("> bababa\n> bobobo\n", quotedText); - } - - public void testMultiLineWithWrapping() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa bebebe\nbibibibibibi bibi\nbobobo bububu"); - assertEquals("> bababa\n> bebebe\n> bibibibibibi\n> bibi\n> bobobo\n> bububu\n", quotedText); - } - - public void testExcessiveSpacingWrapping() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa bobobo"); - assertEquals("> bababa\n> bobobo\n", quotedText); - } - - public void testBlankLineQuoting() { - CommentQuoter quoter = new CommentQuoter(10); - String quotedText = quoter.quote("bababa\n\nbobobo"); - assertEquals("> bababa\n> \n> bobobo\n", quotedText); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CopyDetailsActionTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CopyDetailsActionTest.java deleted file mode 100644 index 2de6d6af7..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/CopyDetailsActionTest.java +++ /dev/null @@ -1,30 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.actions.CopyTaskDetailsAction; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Mik Kersten - */ -public class CopyDetailsActionTest extends TestCase { - - public void testIdLabelIncluded() { - MockTask task = new MockTask("123"); - String text = CopyTaskDetailsAction.getTextForTask(task); - assertTrue(text.startsWith(task.getTaskKey())); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/DateRangeTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/DateRangeTest.java deleted file mode 100644 index e87599513..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/DateRangeTest.java +++ /dev/null @@ -1,173 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Calendar; -import java.util.Collections; -import java.util.HashSet; -import java.util.Set; -import java.util.SortedMap; -import java.util.TimeZone; -import java.util.TreeMap; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.DateRange; -import org.eclipse.mylyn.internal.tasks.core.DayDateRange; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.core.WeekDateRange; -import org.eclipse.mylyn.tasks.core.ITask; - -/** - * @author Rob Elves - */ -public class DateRangeTest extends TestCase { - - private static final int HOUR = 60 * 60 * 1000; - - public void testCompareInstant() { - DateRange range1 = new DateRange(TaskActivityUtil.getCurrentWeek().getToday().previous().getStartDate()); - DateRange range2 = new DateRange(TaskActivityUtil.getCurrentWeek().getToday().getStartDate()); - assertEquals(-1, range1.compareTo(range2)); - assertEquals(1, range2.compareTo(range1)); - } - - public void testCompareRanges() { - DateRange range1 = TaskActivityUtil.getCurrentWeek().getToday().previous(); - DateRange range2 = TaskActivityUtil.getCurrentWeek().getToday(); - assertEquals(-1, range1.compareTo(range2)); - assertEquals(1, range2.compareTo(range1)); - } - - public void testQueryDateRange() { - SortedMap<DateRange, Set<ITask>> scheduledTasks = Collections.synchronizedSortedMap(new TreeMap<DateRange, Set<ITask>>()); - DateRange range1 = TaskActivityUtil.getCurrentWeek().getToday().previous(); - Set<ITask> tasks = new HashSet<ITask>(); - tasks.add(new LocalTask("1", "summaryForLocalTask")); - scheduledTasks.put(range1, tasks); - assertFalse(scheduledTasks.isEmpty()); - assertNotNull(scheduledTasks.get(range1)); - - DateRange rangeTest = TaskActivityUtil.getCurrentWeek().getToday().previous(); - assertNotNull(scheduledTasks.get(rangeTest)); - - DateRange range2 = TaskActivityUtil.getCurrentWeek().getToday(); - tasks = new HashSet<ITask>(); - tasks.add(new LocalTask("2", "summaryForLocalTask2")); - scheduledTasks.put(range2, tasks); - - SortedMap<DateRange, Set<ITask>> result = scheduledTasks.subMap(range1, range2); - assertEquals(1, result.size()); - - DateRange range0 = TaskActivityUtil.getCurrentWeek().getToday().previous().previous(); - DateRange range3 = TaskActivityUtil.getCurrentWeek().getToday().next(); - result = scheduledTasks.subMap(range0, range3); - assertEquals(2, result.size()); - } - - public void testIsWeekRange() { - TimeZone defaultTimeZone = TimeZone.getDefault(); - try { - TimeZone.setDefault(TimeZone.getTimeZone("PST")); - Calendar time = TaskActivityUtil.getCalendar(); - - time.set(2008, 9, 1); - DateRange range = TaskActivityUtil.getWeekOf(time.getTime()); - assertTrue(WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() + 1); - assertTrue("1 ms longer than a week, expected to be within legal interval", WeekDateRange.isWeekRange( - range.getStartDate(), range.getEndDate())); - range = TaskActivityUtil.getDayOf(time.getTime()); - assertFalse("only a day", WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - - // PST changes to PDT on Mar 9th 2008 - time.set(2008, 2, 9); - range = TaskActivityUtil.getWeekOf(time.getTime()); - assertEquals(0, range.getStartDate().get(Calendar.DST_OFFSET)); - assertEquals(HOUR, range.getEndDate().get(Calendar.DST_OFFSET)); - assertTrue(WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() + 1); - assertFalse("1 ms too long", WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - range = TaskActivityUtil.getDayOf(time.getTime()); - assertFalse(WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - - // PDT changes to PST on Nov 2nd 2008 - time.set(2008, 10, 2); - range = TaskActivityUtil.getWeekOf(time.getTime()); - assertEquals(HOUR, range.getStartDate().get(Calendar.DST_OFFSET)); - assertEquals(0, range.getEndDate().get(Calendar.DST_OFFSET)); - assertTrue(WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() - 1); - assertFalse("1 ms too short", WeekDateRange.isWeekRange(range.getStartDate(), range.getEndDate())); - } finally { - TimeZone.setDefault(defaultTimeZone); - } - } - - public void testIsDayRange() { - TimeZone defaultTimeZone = TimeZone.getDefault(); - try { - TimeZone.setDefault(TimeZone.getTimeZone("PST")); - Calendar time = TaskActivityUtil.getCalendar(); - time.set(2008, 9, 1); - DateRange range = TaskActivityUtil.getDayOf(time.getTime()); - assertTrue(DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() + 1); - assertTrue("1 ms longer than a day, expected to be within legal interval", DayDateRange.isDayRange( - range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() + HOUR); - assertFalse("1 hour + 1 ms longer than a day", DayDateRange.isDayRange(range.getStartDate(), - range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() - 2 * HOUR - 2); - assertFalse("1 hour + 1 ms shorter than a day", DayDateRange.isDayRange(range.getStartDate(), - range.getEndDate())); - range = TaskActivityUtil.getDayOf(time.getTime()); - assertTrue("a week", DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - - // PDT changes to PST on Mar 9th 2008 - time.set(2008, 2, 9); - range = TaskActivityUtil.getDayOf(time.getTime()); - assertEquals(0, range.getStartDate().get(Calendar.DST_OFFSET)); - assertEquals(HOUR, range.getEndDate().get(Calendar.DST_OFFSET)); - assertTrue(DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() + 1); - assertFalse("1 ms too long", DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - - // PST changes to PDT on Nov 2nd 2008 - time.set(2008, 10, 2); - range = TaskActivityUtil.getDayOf(time.getTime()); - assertEquals(HOUR, range.getStartDate().get(Calendar.DST_OFFSET)); - assertEquals(0, range.getEndDate().get(Calendar.DST_OFFSET)); - assertTrue(DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - range.getStartDate().setTimeInMillis(range.getStartDate().getTimeInMillis() - 1); - assertFalse("1 ms too short", DayDateRange.isDayRange(range.getStartDate(), range.getEndDate())); - } finally { - TimeZone.setDefault(defaultTimeZone); - } - } - - public void testNext() { - Calendar time = TaskActivityUtil.getCalendar(); - time.set(2008, 11, 31); - DayDateRange day = TaskActivityUtil.getDayOf(time.getTime()); - assertEquals(2009, day.next().getStartDate().get(Calendar.YEAR)); - assertEquals(2008, day.getStartDate().get(Calendar.YEAR)); - assertEquals(day, day.next().previous()); - - WeekDateRange week = TaskActivityUtil.getWeekOf(time.getTime()); - assertEquals(2009, week.next().getStartDate().get(Calendar.YEAR)); - assertEquals(2008, week.getStartDate().get(Calendar.YEAR)); - assertEquals(week, week.next().previous()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/LinkProviderTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/LinkProviderTest.java deleted file mode 100644 index 6b2a361bb..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/LinkProviderTest.java +++ /dev/null @@ -1,101 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.IRepositoryManager; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.ui.AbstractTaskRepositoryLinkProvider; - -/** - * @author Mik Kersten - * @author Steffen Pingel - */ -public class LinkProviderTest extends TestCase { - - public class LinkProviderStub extends AbstractTaskRepositoryLinkProvider { - - int executions = 0; - - int timeout = 0; - - @Override - public TaskRepository getTaskRepository(IResource resource, IRepositoryManager repositoryManager) { - executions++; - try { - Thread.sleep(timeout); - } catch (InterruptedException e) { - fail(); - } - return null; - } - } - - private String defaultTimeout; - - private LinkProviderStub provider; - - @Override - protected void setUp() throws Exception { - defaultTimeout = System.getProperty(ITasksCoreConstants.PROPERTY_LINK_PROVIDER_TIMEOUT, ""); - provider = new LinkProviderStub(); - TasksUiPlugin.getDefault().addRepositoryLinkProvider(provider); - } - - @Override - protected void tearDown() throws Exception { - TasksUiPlugin.getDefault().removeRepositoryLinkProvider(provider); - System.setProperty(ITasksCoreConstants.PROPERTY_LINK_PROVIDER_TIMEOUT, defaultTimeout); - } - - public void testTimeout() { - System.setProperty(ITasksCoreConstants.PROPERTY_LINK_PROVIDER_TIMEOUT, "50"); - - provider.timeout = 40; - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(1, provider.executions); - - provider.timeout = 60; - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(2, provider.executions); - - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(2, provider.executions); - } - - public void testTimeoutInfinite() { - System.setProperty(ITasksCoreConstants.PROPERTY_LINK_PROVIDER_TIMEOUT, "50"); - - provider.timeout = 40; - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(1, provider.executions); - - System.setProperty(ITasksCoreConstants.PROPERTY_LINK_PROVIDER_TIMEOUT, "-1"); - - provider.timeout = 0; - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(2, provider.executions); - - provider.timeout = 60; - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(3, provider.executions); - - TasksUiPlugin.getDefault().getRepositoryForResource(ResourcesPlugin.getWorkspace().getRoot()); - assertEquals(4, provider.executions); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskFromSelectionActionTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskFromSelectionActionTest.java deleted file mode 100644 index 8417a0282..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskFromSelectionActionTest.java +++ /dev/null @@ -1,68 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Frank Becker 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 - * - * Contributors: - * Frank Becker - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.jface.text.TextSelection; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.mylyn.internal.tasks.core.TaskComment; -import org.eclipse.mylyn.internal.tasks.ui.actions.NewTaskFromSelectionAction; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Frank Becker - * @author Steffen Pingel - */ -public class NewTaskFromSelectionActionTest extends TestCase { - - // FIXME 3.1 causes display of modal dialog -// public void testNoSelection() throws Exception { -// NewTaskFromSelectionAction action = new NewTaskFromSelectionAction(); -// assertNull(action.getTaskSelection()); -// action.run(); -// action.selectionChanged(null); -// assertNull(action.getTaskSelection()); -// } - - public void testComment() throws Exception { - TaskRepository taskRepository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - TaskData taskData = new TaskData(new TaskAttributeMapper(taskRepository), "kind", "http://url", "1"); - TaskComment comment = new TaskComment(taskRepository, new MockTask("1"), taskData.getRoot().createAttribute( - "id")); - - NewTaskFromSelectionAction action = new NewTaskFromSelectionAction(); - action.selectionChanged(new StructuredSelection(comment)); - assertNotNull(action.getTaskMapping()); - } - - public void testText() throws Exception { - NewTaskFromSelectionAction action = new NewTaskFromSelectionAction(); - action.selectionChanged(new TextSelection(0, 0) { - @Override - public String getText() { - return "text"; - } - }); - assertNotNull(action.getTaskMapping()); - - action.selectionChanged(new TextSelection(0, 0)); - assertNull(action.getTaskMapping()); - } - -} 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 deleted file mode 100644 index 21e05d5da..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/NewTaskWizardRepositorySelectionTest.java +++ /dev/null @@ -1,93 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -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.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.internal.tasks.ui.wizards.MultiRepositoryAwareWizard; -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.MockTask; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; -import org.eclipse.mylyn.tasks.ui.wizards.NewTaskWizard; -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); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - TaskListView view = (TaskListView) TasksUiUtil.openTasksViewInActivePerspective(); - MockTask mockTask = new MockTask("mock.task"); - TasksUiPlugin.getTaskActivityManager().scheduleNewTask(mockTask); - TasksUiPlugin.getTaskList().addTask(mockTask); - - view.setFocusedMode(true); - view.getViewer().refresh(); - view.getViewer().expandAll(); - view.getViewer().setSelection(new StructuredSelection(mockTask), true); - assertEquals(mockTask, ((StructuredSelection) view.getViewer().getSelection()).getFirstElement()); - - MultiRepositoryAwareWizard wizard = TasksUiInternal.createNewTaskWizard(null); - 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.getTaskList().deleteTask(mockTask); - wizard.dispose(); - dialog.close(); - } - - // see bug bug 202184 - public void testDefaultWithNoTaskListSelection() { - TaskListView view = (TaskListView) TasksUiUtil.openTasksViewInActivePerspective(); - view.getViewer().setSelection(new StructuredSelection()); - - NewTaskWizard wizard = new NewTaskWizard(null, null); - 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.CONNECTOR_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/PersonProposalProviderTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/PersonProposalProviderTest.java deleted file mode 100644 index 417ef2247..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/PersonProposalProviderTest.java +++ /dev/null @@ -1,206 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Frank Becker 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 - * - * Contributors: - * Frank Becker - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.jface.fieldassist.IContentProposal; -import org.eclipse.mylyn.commons.net.AuthenticationCredentials; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.internal.tasks.ui.PersonContentProposal; -import org.eclipse.mylyn.internal.tasks.ui.PersonProposalProvider; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.mylyn.tasks.ui.TasksUi; - -/** - * @author Frank Becker - * @author Steffen Pingel - */ -public class PersonProposalProviderTest extends TestCase { - - @Override - protected void setUp() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - } - - public void testGetProposalsNullParameters() { - PersonProposalProvider provider = new PersonProposalProvider((AbstractTask) null, (TaskData) null); - IContentProposal[] result = provider.getProposals("", 0); - assertNotNull(result); - assertEquals(0, result.length); - - result = provider.getProposals(" ", 1); - assertNotNull(result); - assertEquals(0, result.length); - } - - public void testGetProposalsCurrentTask() { - MockTask task = new MockTask(null, "1", null); - task.setOwner("foo"); - PersonProposalProvider provider = new PersonProposalProvider(task, (TaskData) null); - IContentProposal[] result = provider.getProposals("", 0); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo", result[0].getContent()); - - result = provider.getProposals("a", 1); - assertNotNull(result); - assertEquals(0, result.length); - - result = provider.getProposals("fo", 2); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo", result[0].getContent()); - - result = provider.getProposals("", 0); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo", result[0].getContent()); - } - - public void testGetProposalsMultipleAddresses() { - IContentProposal[] result; - - MockTask task = new MockTask(null, "1", null); - task.setOwner("foo"); - PersonProposalProvider provider = new PersonProposalProvider(task, (TaskData) null); - - result = provider.getProposals("f,xx", 1); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo,xx", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(3, result[0].getCursorPosition()); - - result = provider.getProposals("f xx", 1); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo xx", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(3, result[0].getCursorPosition()); - - result = provider.getProposals("a,xx", 1); - assertNotNull(result); - assertEquals(0, result.length); - - result = provider.getProposals("xx,f", 4); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("xx,foo", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(6, result[0].getCursorPosition()); - - result = provider.getProposals("xx f", 4); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("xx foo", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(6, result[0].getCursorPosition()); - - result = provider.getProposals("xx,a", 4); - assertNotNull(result); - assertEquals(0, result.length); - - result = provider.getProposals("xyz,f,yy", 4); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("xyz,foo,yy", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(7, result[0].getCursorPosition()); - - result = provider.getProposals("xx f yy", 4); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("xx foo yy", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(6, result[0].getCursorPosition()); - - result = provider.getProposals("xx,a,yy", 4); - assertNotNull(result); - assertEquals(0, result.length); - - result = provider.getProposals("xx,,yy", 3); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("xx,foo,yy", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(6, result[0].getCursorPosition()); - - result = provider.getProposals("x yy", 2); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("x foo", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(5, result[0].getCursorPosition()); - - result = provider.getProposals(", ", 1); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals(",foo ", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(4, result[0].getCursorPosition()); - - result = provider.getProposals(", ", 0); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo, ", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(3, result[0].getCursorPosition()); - } - - public void testConstructorRepositoryUrlKind() throws Exception { - MockTask task1 = new MockTask(MockRepositoryConnector.REPOSITORY_URL, "1"); - task1.setOwner("foo"); - PersonProposalProvider provider = new PersonProposalProvider(MockRepositoryConnector.REPOSITORY_URL, - MockRepositoryConnector.REPOSITORY_KIND); - MockRepositoryQuery query = new MockRepositoryQuery("summary"); - TasksUiPlugin.getTaskList().addQuery(query); - TasksUiPlugin.getTaskList().addTask(task1, query); - - IContentProposal[] result = provider.getProposals("f,xx", 1); - assertNotNull(result); - assertEquals(1, result.length); - assertEquals("foo,xx", result[0].getContent()); - assertEquals("foo", result[0].getLabel()); - assertEquals(3, result[0].getCursorPosition()); - } - - public void testCurrentUser() throws Exception { - TaskTask task = TaskTestUtil.createMockTask("1"); - task.setOwner("user"); - TasksUiPlugin.getTaskList().addTask(task); - TaskRepository repository = TaskTestUtil.createMockRepository(); - repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", ""), false); - TasksUi.getRepositoryManager().addRepository(repository); - - PersonProposalProvider provider = new PersonProposalProvider(MockRepositoryConnector.REPOSITORY_URL, - MockRepositoryConnector.REPOSITORY_KIND); - IContentProposal[] result = provider.getProposals("user", 1); - assertNotNull(result); - assertEquals(1, result.length); - assertTrue(((PersonContentProposal) result[0]).isCurrentUser()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ProjectRepositoryAssociationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ProjectRepositoryAssociationTest.java deleted file mode 100644 index 48559063a..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ProjectRepositoryAssociationTest.java +++ /dev/null @@ -1,77 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.core.resources.IFolder; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.resources.tests.ResourceTestUtil; -import org.eclipse.mylyn.resources.tests.TestProject; -import org.eclipse.mylyn.tasks.core.TaskRepository; - -/** - * @author Rob Elves - */ -public class ProjectRepositoryAssociationTest extends TestCase { - - private static final String REPOSITORY_URL = "http://mylyn.eclipse.org/bugs222"; - - private static final String REPOSITORY_KIND = "bugzilla"; - - private TestProject projectWrapper; - - @Override - protected void setUp() throws Exception { - super.setUp(); - projectWrapper = new TestProject(this.getClass().getName()); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - ResourceTestUtil.deleteProject(projectWrapper.getProject()); - TasksUiPlugin.getRepositoryManager().clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } - - public void testRepositoryForProject() throws CoreException { - assertNull(TasksUiPlugin.getDefault().getRepositoryForResource(projectWrapper.getProject())); - TaskRepository repository = new TaskRepository(REPOSITORY_KIND, REPOSITORY_URL); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - TasksUiPlugin.getDefault().setRepositoryForResource(projectWrapper.getProject(), repository); - TaskRepository returnedRepository = TasksUiPlugin.getDefault().getRepositoryForResource( - projectWrapper.getProject()); - assertNotNull(returnedRepository); - assertEquals(REPOSITORY_KIND, returnedRepository.getConnectorKind()); - assertEquals(REPOSITORY_URL, returnedRepository.getRepositoryUrl()); - - TasksUiPlugin.getRepositoryManager().removeRepository(repository, - TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } - - public void testRepositoryForFolder() throws CoreException { - IFolder folder = projectWrapper.createFolder("testFolder"); - assertTrue(folder.exists()); - assertNull(TasksUiPlugin.getDefault().getRepositoryForResource(folder)); - TaskRepository repository = new TaskRepository(REPOSITORY_KIND, REPOSITORY_URL); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - TasksUiPlugin.getDefault().setRepositoryForResource(folder, repository); - TaskRepository returnedRepository = TasksUiPlugin.getDefault().getRepositoryForResource(folder); - assertNotNull(returnedRepository); - assertEquals(REPOSITORY_KIND, returnedRepository.getConnectorKind()); - assertEquals(REPOSITORY_URL, returnedRepository.getRepositoryUrl()); - - TasksUiPlugin.getRepositoryManager().removeRepository(repository, - TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/QueryExportImportTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/QueryExportImportTest.java deleted file mode 100644 index 9525be803..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/QueryExportImportTest.java +++ /dev/null @@ -1,290 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Jevgeni Holodkov - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -/** - * @author Jevgeni Holodkov - */ -// FIXME fix test -public class QueryExportImportTest extends TestCase { - - public void testRewriteTestCases() { - } - -// private File dest; -// -// private TaskListElementImporter taskListWriter; -// -// @Override -// protected void setUp() throws Exception { -// removeFiles(new File(TasksUiPlugin.getDefault().getDataDirectory())); -// -// // Create test export destination directory -// dest = new File(TasksUiPlugin.getDefault().getDataDirectory() + File.separator + "TestDir"); -// if (dest.exists()) { -// removeFiles(dest); -// } else { -// dest.mkdir(); -// } -// assertTrue(dest.exists()); -// taskListWriter = TasksUiPlugin.getTaskListWriter(); -// -// TaskTestUtil.resetTaskListAndRepositories(); -// } -// -// @Override -// protected void tearDown() throws Exception { -// removeFiles(dest); -// dest.delete(); -// assertFalse(dest.exists()); -// -// TaskTestUtil.resetTaskListAndRepositories(); -// } -// -// public void testExportImportQuery() throws Exception { -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test Query"); -// query1.setRepositoryUrl(MockRepositoryConnector.REPOSITORY_URL); -// MockRepositoryQuery query2 = new MockRepositoryQuery("Test Query 2"); -// query2.setRepositoryUrl(MockRepositoryConnector.REPOSITORY_URL); -// queries.add(query1); -// queries.add(query2); -// -// File outFile = new File(dest, "test-query.xml.zip"); -// -// taskListWriter.writeQueries(queries, outFile); -// assertTrue(outFile.exists()); -// -// File inFile = new File(dest, "test-query.xml.zip"); -// List<RepositoryQuery> resultQueries = taskListWriter.readQueries(inFile); -// assertEquals("2 Queries is imported", 2, resultQueries.size()); -// } -// -// public void testImportedQueriesNameConflictResolving1() { -// TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, -// MockRepositoryConnector.REPOSITORY_URL); -// TasksUiPlugin.getRepositoryManager().addRepository(repository); -// -// // create test data -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test Query"); -// query1.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query2 = new MockRepositoryQuery("Test Query"); -// query2.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query3 = new MockRepositoryQuery("Test Query"); -// query3.setRepositoryUrl(repository.getRepositoryUrl()); -// -// queries.add(query1); -// queries.add(query2); -// queries.add(query3); -// -// // run tested functionality -// QueryImportAction action = new QueryImportAction(); -// action.insertQueries(queries); -// -// // extract results -// Set<RepositoryQuery> queriesSet = TasksUiPlugin.getTaskList().getQueries(); -// Map<String, RepositoryQuery> queriesMap = new HashMap<String, RepositoryQuery>(); -// for (RepositoryQuery query : queriesSet) { -// queriesMap.put(query.getHandleIdentifier(), query); -// } -// -// // check that the actual result is correct -// assertTrue("'Test Query' query inserted", queriesMap.containsKey("Test Query")); -// assertTrue("'Test Query[1]' query inserted", queriesMap.containsKey("Test Query[1]")); -// assertTrue("'Test Query[2]' query inserted", queriesMap.containsKey("Test Query[2]")); -// } -// -// public void testImportedQueriesNameConflictResolving2() { -// TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, -// MockRepositoryConnector.REPOSITORY_URL); -// TasksUiPlugin.getRepositoryManager().addRepository(repository); -// -// // create test data -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test2"); -// query1.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query2 = new MockRepositoryQuery("Test2[1]"); -// query2.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query3 = new MockRepositoryQuery("Test2"); -// query3.setRepositoryUrl(repository.getRepositoryUrl()); -// -// queries.add(query1); -// queries.add(query2); -// queries.add(query3); -// -// // run tested functionality -// QueryImportAction action = new QueryImportAction(); -// action.insertQueries(queries); -// -// // extract results -// Set<RepositoryQuery> queriesSet = TasksUiPlugin.getTaskList().getQueries(); -// Map<String, RepositoryQuery> queriesMap = new HashMap<String, RepositoryQuery>(); -// for (RepositoryQuery query : queriesSet) { -// queriesMap.put(query.getHandleIdentifier(), query); -// } -// -// // check that the actual result is correct -// assertTrue("'Test2' query inserted", queriesMap.containsKey("Test2")); -// assertTrue("'Test2[1]' query inserted", queriesMap.containsKey("Test2[1]")); -// assertTrue("'Test2[2]' query inserted", queriesMap.containsKey("Test2[2]")); -// -// } -// -// public void testImportedBadQueriesNameConflictResolving() { -// TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, -// MockRepositoryConnector.REPOSITORY_URL); -// TasksUiPlugin.getRepositoryManager().addRepository(repository); -// -// // create test data -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test[-10]"); -// query1.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query2 = new MockRepositoryQuery("Test[ABC]"); -// query2.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query3 = new MockRepositoryQuery("Test[1]"); -// query3.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query4 = new MockRepositoryQuery("Test"); -// query4.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query5 = new MockRepositoryQuery("Test"); -// query5.setRepositoryUrl(repository.getRepositoryUrl()); -// -// queries.add(query1); -// queries.add(query2); -// queries.add(query3); -// queries.add(query4); -// queries.add(query5); -// -// // run tested functionality -// QueryImportAction action = new QueryImportAction(); -// action.insertQueries(queries); -// -// // extract results -// Set<RepositoryQuery> queriesSet = TasksUiPlugin.getTaskList().getQueries(); -// Map<String, RepositoryQuery> queriesMap = new HashMap<String, RepositoryQuery>(); -// for (RepositoryQuery query : queriesSet) { -// queriesMap.put(query.getHandleIdentifier(), query); -// } -// -// // check that the actual result is correct -// assertTrue("'Test[-10]' query inserted", queriesMap.containsKey("Test[-10]")); -// assertTrue("'Test[ABC]' query inserted", queriesMap.containsKey("Test[ABC]")); -// assertTrue("'Test[1]' query inserted", queriesMap.containsKey("Test[1]")); -// assertTrue("'Test' query inserted", queriesMap.containsKey("Test")); -// assertTrue("Another 'Test' query inserted", queriesMap.containsKey("Test[2]")); -// } -// -// public void testImportedBadQueries() { -// TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, -// MockRepositoryConnector.REPOSITORY_URL); -// TasksUiPlugin.getRepositoryManager().addRepository(repository); -// -// // create test data -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test Query"); -// query1.setRepositoryUrl(repository.getRepositoryUrl()); -// MockRepositoryQuery query2 = new MockRepositoryQuery("Bad Query"); -// query2.setRepositoryUrl("bad url"); -// -// queries.add(query1); -// queries.add(query2); -// -// // run tested functionality -// QueryImportAction action = new QueryImportAction(); -// List<RepositoryQuery> badQueries = action.insertQueries(queries); -// -// // extract results -// Set<RepositoryQuery> queriesSet = TasksUiPlugin.getTaskList().getQueries(); -// Map<String, RepositoryQuery> queriesMap = new HashMap<String, RepositoryQuery>(); -// for (RepositoryQuery query : queriesSet) { -// queriesMap.put(query.getHandleIdentifier(), query); -// } -// -// // check that the actual result is correct -// assertEquals("There is a bad query", 1, badQueries.size()); -// assertEquals(query2, badQueries.get(0)); -// assertTrue("'Test Query' query inserted", queriesMap.containsKey("Test Query")); -// } -// -// public void testExportImportQueryWithRepositoryInfo() throws Exception { -// TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, -// MockRepositoryConnector.REPOSITORY_URL); -// TasksUiPlugin.getRepositoryManager().addRepository(repository); -// -// // create test data -// List<RepositoryQuery> queries = new ArrayList<RepositoryQuery>(); -// MockRepositoryQuery query1 = new MockRepositoryQuery("Test Query"); -// query1.setRepositoryUrl(repository.getRepositoryUrl()); -// queries.add(query1); -// -// File outFile = new File(dest, "test-repository-query.xml.zip"); -// -// taskListWriter.writeQueries(queries, outFile); -// -// assertTrue(outFile.exists()); -// -// List<String> files = new ArrayList<String>(); -// ZipInputStream inputStream = new ZipInputStream(new FileInputStream(outFile)); -// ZipEntry entry = null; -// while ((entry = inputStream.getNextEntry()) != null) { -// files.add(entry.getName()); -// } -// inputStream.close(); -// -// assertTrue("exported file contains a file with queries", files.contains(ITasksCoreConstants.OLD_TASK_LIST_FILE)); -// assertTrue("exported file contains a file with repositories", -// files.contains(TaskRepositoryManager.OLD_REPOSITORIES_FILE)); -// -// TasksUiPlugin.getRepositoryManager().clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); -// assertTrue("There are currently no repositories defined", TasksUiPlugin.getRepositoryManager().getRepository( -// MockRepositoryConnector.REPOSITORY_URL) == null); -// -// List<RepositoryQuery> resultQueries = taskListWriter.readQueries(outFile); -// Set<TaskRepository> repositories = taskListWriter.readRepositories(outFile); -// -// TasksUiPlugin.getRepositoryManager().insertRepositories(repositories, -// TasksUiPlugin.getDefault().getRepositoriesFilePath()); -// QueryImportAction action = new QueryImportAction(); -// action.insertQueries(resultQueries); -// -// // extract results -// Set<RepositoryQuery> queriesSet = TasksUiPlugin.getTaskList().getQueries(); -// Map<String, RepositoryQuery> queriesMap = new HashMap<String, RepositoryQuery>(); -// for (RepositoryQuery query : queriesSet) { -// queriesMap.put(query.getHandleIdentifier(), query); -// } -// -// // check that the actual result is correct -// assertTrue("'Test Query' query inserted", queriesMap.containsKey("Test Query")); -// assertTrue("1 repository is loaded", TasksUiPlugin.getRepositoryManager().getRepository( -// MockRepositoryConnector.REPOSITORY_URL) != null); -// } -// -// private void removeFiles(File root) { -// if (root.isDirectory()) { -// for (File file : root.listFiles()) { -// if (file.isDirectory()) { -// removeFiles(file); -// } -// file.delete(); -// } -// } -// } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RefactorRepositoryUrlOperationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RefactorRepositoryUrlOperationTest.java deleted file mode 100644 index 1f2c123d9..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RefactorRepositoryUrlOperationTest.java +++ /dev/null @@ -1,206 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.util.Calendar; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.mylyn.internal.context.core.ContextCorePlugin; -import org.eclipse.mylyn.internal.context.core.InteractionContext; -import org.eclipse.mylyn.internal.context.core.InteractionContextManager; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants; -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.RefactorRepositoryUrlOperation; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.monitor.core.InteractionEvent; -import org.eclipse.mylyn.tasks.core.IRepositoryQuery; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.ITaskDataWorkingCopy; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.mylyn.tasks.ui.TasksUi; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; - -/** - * @author Robert Elves - * @author Steffen Pingel - */ -public class RefactorRepositoryUrlOperationTest extends TestCase { - - private TaskList taskList; - - @Override - protected void setUp() throws Exception { - super.setUp(); - taskList = TasksUiPlugin.getTaskList(); - TaskTestUtil.resetTaskList(); - } - - public void testMigrateTaskContextFiles() throws Exception { - File fileA = ContextCorePlugin.getContextStore().getFileForContext("http://a-1"); - fileA.createNewFile(); - fileA.deleteOnExit(); - assertTrue(fileA.exists()); - new RefactorRepositoryUrlOperation("http://a", "http://b").run(new NullProgressMonitor()); - File fileB = ContextCorePlugin.getContextStore().getFileForContext("http://b-1"); - assertTrue(fileB.exists()); - assertFalse(fileA.exists()); - } - - public void testMigrateQueryUrlHandles() throws Exception { - RepositoryQuery query = new MockRepositoryQuery("mquery"); - query.setRepositoryUrl("http://foo.bar"); - query.setUrl("http://foo.bar/b"); - taskList.addQuery(query); - assertTrue(taskList.getRepositoryQueries("http://foo.bar").size() > 0); - new RefactorRepositoryUrlOperation("http://foo.bar", "http://bar.baz").run(new NullProgressMonitor()); - assertTrue(taskList.getRepositoryQueries("http://foo.bar").size() == 0); - assertTrue(taskList.getRepositoryQueries("http://bar.baz").size() > 0); - IRepositoryQuery changedQuery = taskList.getRepositoryQueries("http://bar.baz").iterator().next(); - assertEquals("http://bar.baz/b", changedQuery.getUrl()); - } - - public void testMigrateQueryHandles() throws Exception { - RepositoryQuery query = new MockRepositoryQuery("mquery"); - query.setRepositoryUrl("http://a"); - taskList.addQuery(query); - new RefactorRepositoryUrlOperation("http://a", "http://b").run(new NullProgressMonitor()); - assertFalse(taskList.getRepositoryQueries("http://b").isEmpty()); - assertTrue(taskList.getRepositoryQueries("http://a").isEmpty()); - } - - public void testMigrateTaskHandles() throws Exception { - AbstractTask task = new MockTask("http://a", "123"); - AbstractTask task2 = new MockTask("http://other", "other"); - taskList.addTask(task); - taskList.addTask(task2); - - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://a"); - TasksUi.getRepositoryManager().addRepository(repository); - TaskRepository repository2 = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://other"); - TasksUi.getRepositoryManager().addRepository(repository2); - - try { - TaskData taskData = new TaskData(new TaskAttributeMapper(repository), task.getConnectorKind(), - task.getRepositoryUrl(), task.getTaskId()); - TasksUiPlugin.getTaskDataManager().putUpdatedTaskData(task, taskData, true); - - TaskData taskData2 = new TaskData(new TaskAttributeMapper(repository2), task2.getConnectorKind(), - task2.getRepositoryUrl(), task2.getTaskId()); - taskData2.getRoot().createAttribute("comment").setValue("TEST"); - TasksUiPlugin.getTaskDataManager().putUpdatedTaskData(task2, taskData2, true); - - new RefactorRepositoryUrlOperation("http://a", "http://b").run(new NullProgressMonitor()); - repository.setRepositoryUrl("http://b"); - assertNull(taskList.getTask("http://a-123")); - assertNotNull(taskList.getTask("http://b-123")); - assertNotNull(TasksUi.getTaskDataManager().getTaskData(task)); - TaskData otherData = TasksUi.getTaskDataManager().getTaskData(task2); - assertNotNull(otherData); - assertEquals("TEST", otherData.getRoot().getAttribute("comment").getValue()); - } finally { - TasksUiPlugin.getTaskDataManager().deleteTaskData(task); - TasksUiPlugin.getTaskDataManager().deleteTaskData(task2); - } - } - - public void testMigrateTaskHandlesWithExplicitSet() throws Exception { - AbstractTask task = new MockTask("http://aa", "123"); - task.setUrl("http://aa/task/123"); - taskList.addTask(task); - new RefactorRepositoryUrlOperation("http://aa", "http://bb").run(new NullProgressMonitor()); - assertNull(taskList.getTask("http://aa-123")); - assertNotNull(taskList.getTask("http://bb-123")); - assertEquals("http://bb/task/123", task.getUrl()); - } - - public void testRefactorMetaContextHandles() throws Exception { - String firstUrl = "http://repository1.com/bugs"; - String secondUrl = "http://repository2.com/bugs"; - AbstractTask task1 = new MockTask(firstUrl, "1"); - AbstractTask task2 = new MockTask(firstUrl, "2"); - taskList.addTask(task1); - taskList.addTask(task2); - Calendar startDate = Calendar.getInstance(); - Calendar endDate = Calendar.getInstance(); - endDate.add(Calendar.MINUTE, 5); - - Calendar startDate2 = Calendar.getInstance(); - startDate2.add(Calendar.MINUTE, 15); - Calendar endDate2 = Calendar.getInstance(); - endDate2.add(Calendar.MINUTE, 25); - - ContextCorePlugin.getContextManager().resetActivityMetaContext(); - InteractionContext metaContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertEquals(0, metaContext.getInteractionHistory().size()); - - ContextCorePlugin.getContextManager().processActivityMetaContextEvent( - new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), "origin", - null, InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startDate.getTime(), - endDate.getTime())); - - ContextCorePlugin.getContextManager().processActivityMetaContextEvent( - new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task2.getHandleIdentifier(), "origin", - null, InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startDate2.getTime(), - endDate2.getTime())); - - assertEquals(2, metaContext.getInteractionHistory().size()); - assertEquals(60 * 1000 * 5, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - assertEquals(2 * 60 * 1000 * 5, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task2)); - new RefactorRepositoryUrlOperation(firstUrl, secondUrl).run(new NullProgressMonitor()); - metaContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertEquals(2, metaContext.getInteractionHistory().size()); - assertEquals(60 * 1000 * 5, TasksUiPlugin.getTaskActivityManager().getElapsedTime(new MockTask(secondUrl, "1"))); - assertEquals(2 * 60 * 1000 * 5, TasksUiPlugin.getTaskActivityManager().getElapsedTime( - new MockTask(secondUrl, "2"))); - assertEquals(secondUrl + "-1", metaContext.getInteractionHistory().get(0).getStructureHandle()); - } - - public void testMigrateTaskHandlesUnsubmittedTask() throws Exception { - ITask task = TasksUiUtil.createOutgoingNewTask(MockRepositoryConnector.REPOSITORY_KIND, "http://a"); - String handleIdentifier = task.getHandleIdentifier(); - taskList.addTask(task); - assertEquals("http://a", task.getAttribute(ITasksCoreConstants.ATTRIBUTE_OUTGOING_NEW_REPOSITORY_URL)); - - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://a"); - TasksUi.getRepositoryManager().addRepository(repository); - - try { - TaskData taskData = new TaskData(new TaskAttributeMapper(repository), repository.getConnectorKind(), - repository.getRepositoryUrl(), ""); - ITaskDataWorkingCopy workingCopy = TasksUi.getTaskDataManager().createWorkingCopy(task, taskData); - workingCopy.save(null, null); - - new RefactorRepositoryUrlOperation("http://a", "http://b").run(new NullProgressMonitor()); - repository.setRepositoryUrl("http://b"); - assertEquals(task, taskList.getTask(handleIdentifier)); - assertEquals("http://b", task.getAttribute(ITasksCoreConstants.ATTRIBUTE_OUTGOING_NEW_REPOSITORY_URL)); - taskData = TasksUi.getTaskDataManager().getTaskData(task); - assertNotNull(taskData); - assertEquals("http://b", taskData.getRepositoryUrl()); - } finally { - TasksUiPlugin.getTaskDataManager().deleteTaskData(task); - } - } - -} 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 deleted file mode 100644 index 8034618fb..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositorySettingsPageTest.java +++ /dev/null @@ -1,268 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.jface.preference.StringFieldEditor; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnectorUi; -import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositorySettingsPage; -import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Event; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.PlatformUI; - -/** - * @author Steffen Pingel - */ -public class RepositorySettingsPageTest extends TestCase { - - public void testNeedsEncoding() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://localhost/"); - repository.setCharacterEncoding("UTF-8"); - - MockRepositorySettingsPage page = new MockRepositorySettingsPage(repository); - page.setNeedsEncoding(true); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - page.setVisible(true); - - TaskRepository repository2 = page.createTaskRepository(); - assertEquals("UTF-8", repository2.getCharacterEncoding()); - } - - public void testNeedsEncodingFalse() { - MockRepositorySettingsPage page = new MockRepositorySettingsPage(null); - page.setNeedsEncoding(false); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - page.setVisible(true); - - page.createTaskRepository(); - } - - public void testNeedsAnonyoumousLoginFalse() { - MockRepositorySettingsPage page = new MockRepositorySettingsPage(null); - page.setNeedsAnonymousLogin(false); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - page.setVisible(true); - - assertNull(page.getAnonymousButton()); - } - - public void testNeedsAnonyoumousLoginNoRepository() { - MockRepositorySettingsPage page = new MockRepositorySettingsPage(null); - page.setNeedsAnonymousLogin(true); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - page.setVisible(true); - - assertNotNull(page.getAnonymousButton()); - - assertTrue(page.getAnonymousButton().getSelection()); - assertFalse(page.getUserNameEditor().getTextControl(page.getParent()).isEnabled()); - assertFalse(page.getPasswordEditor().getTextControl(page.getParent()).isEnabled()); - assertEquals("", page.getUserName()); - assertEquals("", page.getPassword()); - page.getAnonymousButton().setSelection(false); - } - - public void testNeedsAnonyoumousLogin() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://localhost/"); - - TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockRepositoryConnectorUi()); - - MockRepositorySettingsPage page = new MockRepositorySettingsPage(repository); - page.setNeedsAnonymousLogin(true); - - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - page.setVisible(true); - - assertNotNull(page.getAnonymousButton()); - - assertTrue(page.getAnonymousButton().getSelection()); - assertFalse(page.getUserNameEditor().getTextControl(page.getParent()).isEnabled()); - assertFalse(page.getPasswordEditor().getTextControl(page.getParent()).isEnabled()); - assertEquals("", page.getUserName()); - assertEquals("", page.getPassword()); - - page.getAnonymousButton().setSelection(false); - page.getAnonymousButton().notifyListeners(SWT.Selection, new Event()); - assertTrue(page.getUserNameEditor().getTextControl(page.getParent()).isEnabled()); - assertTrue(page.getPasswordEditor().getTextControl(page.getParent()).isEnabled()); - page.getUserNameEditor().setStringValue("user"); - page.getPasswordEditor().setStringValue("password"); - assertEquals("user", page.getUserName()); - assertEquals("password", page.getPassword()); - - page.getAnonymousButton().setSelection(true); - page.getAnonymousButton().notifyListeners(SWT.Selection, new Event()); - assertFalse(page.getUserNameEditor().getTextControl(page.getParent()).isEnabled()); - assertFalse(page.getPasswordEditor().getTextControl(page.getParent()).isEnabled()); - assertEquals("", page.getUserName()); - assertEquals("", page.getPassword()); - - page.getAnonymousButton().setSelection(false); - page.getAnonymousButton().notifyListeners(SWT.Selection, new Event()); - assertTrue(page.getUserNameEditor().getTextControl(page.getParent()).isEnabled()); - assertTrue(page.getPasswordEditor().getTextControl(page.getParent()).isEnabled()); - assertEquals("user", page.getUserNameEditor().getStringValue()); - assertEquals("password", page.getPasswordEditor().getStringValue()); - assertEquals("user", page.getUserName()); - assertEquals("password", page.getPassword()); - } - - public void testSavePassword() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://localhost/"); - TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockRepositoryConnectorUi()); - - assertTrue(repository.getSavePassword(AuthenticationType.REPOSITORY)); - - MockRepositorySettingsPage page = new MockRepositorySettingsPage(repository); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertTrue(page.getSavePassword()); - } finally { - page.dispose(); - } - - repository.setCredentials(AuthenticationType.REPOSITORY, null, false); - page = new MockRepositorySettingsPage(repository); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertFalse(page.getSavePassword()); - } finally { - page.dispose(); - } - } - - public void testSaveHttpPassword() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://localhost/"); - TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockRepositoryConnectorUi()); - - assertTrue(repository.getSavePassword(AuthenticationType.HTTP)); - - MockRepositorySettingsPage page = new MockRepositorySettingsPage(repository); - page.setNeedsHttpAuth(true); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertTrue(page.getSaveHttpPassword()); - } finally { - page.dispose(); - } - - repository.setCredentials(AuthenticationType.HTTP, null, false); -// page = new MockRepositorySettingsPage(repository); - page.setNeedsHttpAuth(true); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertFalse(page.getSaveHttpPassword()); - } finally { - page.dispose(); - } - } - - public void testSaveProxyPassword() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, "http://localhost/"); - TasksUiPlugin.getDefault().addRepositoryConnectorUi(new MockRepositoryConnectorUi()); - - assertTrue(repository.getSavePassword(AuthenticationType.PROXY)); - - MockRepositorySettingsPage page = new MockRepositorySettingsPage(repository); - page.setNeedsProxy(true); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertTrue(page.getSaveProxyPassword()); - } finally { - page.dispose(); - } - - repository.setCredentials(AuthenticationType.PROXY, null, false); - page = new MockRepositorySettingsPage(repository); - page.setNeedsProxy(true); - try { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - page.createControl(shell); - assertFalse(page.getSaveProxyPassword()); - } finally { - page.dispose(); - } - } - - private class MockRepositorySettingsPage extends AbstractRepositorySettingsPage { - - public MockRepositorySettingsPage(TaskRepository taskRepository) { - super("title", "summary", taskRepository); - } - - @Override - protected void createAdditionalControls(Composite parent) { - // ignore - } - - @Override - protected boolean isValidUrl(String name) { - // ignore - return false; - } - - @Override - protected void validateSettings() { - // ignore - } - - Button getAnonymousButton() { - return anonymousButton; - } - - StringFieldEditor getUserNameEditor() { - return repositoryUserNameEditor; - } - - StringFieldEditor getPasswordEditor() { - return repositoryPasswordEditor; - } - - Composite getParent() { - return compositeContainer; - } - - @Override - protected Validator getValidator(TaskRepository repository) { - // ignore - return null; - } - - @Override - public String getConnectorKind() { - return MockRepositoryConnector.REPOSITORY_KIND; - } - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositoryTemplateManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositoryTemplateManagerTest.java deleted file mode 100644 index e6aa8e17f..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/RepositoryTemplateManagerTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.RepositoryTemplateManager; -import org.eclipse.mylyn.internal.tasks.ui.TaskRepositoryUtil; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.RepositoryTemplate; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; - -/** - * @author Steffen Pingel - */ -public class RepositoryTemplateManagerTest extends TestCase { - - private RepositoryTemplateManager manager; - - @Override - protected void setUp() throws Exception { - manager = TasksUiPlugin.getRepositoryTemplateManager(); - } - - public void testTemplateDeletion() { - RepositoryTemplate template = new RepositoryTemplate("Mock", MockRepositoryConnector.REPOSITORY_URL, "", "", - "", "", "", "", false, true); - try { - manager.addTemplate(MockRepositoryConnector.REPOSITORY_KIND, template); - assertFalse(TaskRepositoryUtil.isAddAutomaticallyDisabled(MockRepositoryConnector.REPOSITORY_URL)); - TaskRepositoryUtil.disableAddAutomatically(MockRepositoryConnector.REPOSITORY_URL); - assertTrue(TaskRepositoryUtil.isAddAutomaticallyDisabled(MockRepositoryConnector.REPOSITORY_URL)); - } finally { - manager.removeTemplate(MockRepositoryConnector.REPOSITORY_KIND, template); - } - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ScheduledPresentationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ScheduledPresentationTest.java deleted file mode 100644 index c64bc7a5b..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ScheduledPresentationTest.java +++ /dev/null @@ -1,181 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Calendar; -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.context.core.ContextCorePlugin; -import org.eclipse.mylyn.internal.context.core.InteractionContextManager; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.DateRange; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListInterestFilter; -import org.eclipse.mylyn.monitor.core.InteractionEvent; - -/** - * @author Rob Elves - */ -public class ScheduledPresentationTest extends TestCase { - - @Override - protected void setUp() throws Exception { - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - TaskTestUtil.resetTaskList(); - TasksUiPlugin.getExternalizationManager().requestSave(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskList(); - TasksUiPlugin.getExternalizationManager().requestSave(); - } - - public void testWeekStartChange() { - TaskListInterestFilter filter = new TaskListInterestFilter(); - TasksUiPlugin.getTaskActivityManager().setWeekStartDay(Calendar.MONDAY); - DateRange lastDay = TaskActivityUtil.getCurrentWeek().getDayOfWeek(Calendar.SUNDAY); - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - TasksUiPlugin.getTaskActivityManager().setScheduledFor(task1, lastDay); - assertTrue(filter.isInterestingForThisWeek(null, task1)); - - TasksUiPlugin.getTaskActivityManager().setWeekStartDay(Calendar.SUNDAY); - assertFalse(filter.isInterestingForThisWeek(null, task1)); - - } - -// public void testResetAndRollOver() { -// -// ScheduledTaskContainer pastWeeks = TasksUiPlugin.getTaskActivityManager().getActivityPast(); -// ScheduledTaskContainer thisWeek = TasksUiPlugin.getTaskActivityManager().getActivityThisWeek(); -// ScheduledTaskContainer nextWeek = TasksUiPlugin.getTaskActivityManager().getActivityNextWeek(); -// ScheduledTaskContainer futureWeeks = TasksUiPlugin.getTaskActivityManager().getActivityFuture(); -// -// assertEquals(0, thisWeek.getChildren().size()); -// assertTrue(thisWeek.isPresent()); -// assertTrue(nextWeek.isFuture()); -// -// long pastStartTime = pastWeeks.getEnd().getTimeInMillis(); -// long thisWeekStartTime = thisWeek.getStart().getTimeInMillis(); -// long nextStartTime = nextWeek.getStart().getTimeInMillis(); -// long futureStartTime = futureWeeks.getStart().getTimeInMillis(); -// -// Calendar pastWeeksTaskStart = Calendar.getInstance(); -// pastWeeksTaskStart.setTimeInMillis(pastStartTime - 10); -// assertTrue(pastWeeks.includes(pastWeeksTaskStart)); -// -// Calendar thisWeekTaskStart = Calendar.getInstance(); -// thisWeekTaskStart.setTimeInMillis(thisWeekStartTime + 10); -// assertTrue(thisWeek.includes(thisWeekTaskStart)); -// -// Calendar thisWeekTaskStop = Calendar.getInstance(); -// thisWeekTaskStop.setTimeInMillis(thisWeek.getEnd().getTimeInMillis() - 10); -// assertTrue(thisWeek.includes(thisWeekTaskStop)); -// -// Calendar nextWeekTaskStart = Calendar.getInstance(); -// nextWeekTaskStart.setTimeInMillis(nextStartTime + 10); -// assertTrue(nextWeek.includes(nextWeekTaskStart)); -// -// Calendar futureWeekTaskStart = Calendar.getInstance(); -// futureWeekTaskStart.setTimeInMillis(futureStartTime + 10); -// assertTrue(futureWeeks.includes(futureWeekTaskStart)); -// -// AbstractTask task1 = new LocalTask("task 1", "Task 1"); -// TasksUiPlugin.getTaskList().addTask(task1); -// -// assertEquals(0, TasksUiPlugin.getTaskActivityManager() -// .getScheduledTasks(thisWeek.getStart(), thisWeek.getEnd()) -// .size()); -// -// TasksUiPlugin.getTaskActivityManager().setScheduledFor(task1, thisWeek.getStart().getTime()); -// -//// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// assertEquals(1, TasksUiPlugin.getTaskActivityManager() -// .getScheduledTasks(thisWeek.getStart(), thisWeek.getEnd()) -// .size()); -// // assertEquals(thisWeekTaskStop.getTime().getTime() - -// // thisWeekTaskStart.getTime().getTime(), thisWeek -// // .getTotalElapsed()); -// -// // ROLL OVER -// Date oldStart = TasksUiPlugin.getTaskActivityManager().getStartTime(); -// Calendar newStart = Calendar.getInstance(); -// newStart.setTime(oldStart); -// newStart.add(Calendar.WEEK_OF_MONTH, 1); -// //TasksUiPlugin.getTaskListManager().snapToStartOfWeek(newStart); -// -// TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); -// -// //ScheduledTaskContainer newPastWeeks = TasksUiPlugin.getTaskListManager().getActivityPast(); -// ScheduledTaskContainer newPreviousWeek = TasksUiPlugin.getTaskActivityManager().getActivityPrevious(); -// ScheduledTaskContainer newThisWeek = TasksUiPlugin.getTaskActivityManager().getActivityThisWeek(); -// ScheduledTaskContainer newNextWeek = TasksUiPlugin.getTaskActivityManager().getActivityNextWeek(); -// // DateRangeContainer newFutureWeeks = -// // MylarTaskListPlugin.getTaskListManager().getActivityFuture(); -// -// assertTrue(newPreviousWeek.includes(thisWeekTaskStart)); -// assertTrue(newThisWeek.includes(nextWeekTaskStart)); -// assertTrue(newNextWeek.includes(futureWeekTaskStart)); -// -// assertFalse(newThisWeek.includes(thisWeekTaskStart)); -// assertFalse(newThisWeek.isPresent()); -// assertTrue(newThisWeek.isFuture()); -// -// assertEquals(0, TasksUiPlugin.getTaskActivityManager().getScheduledTasks(newThisWeek.getStart(), -// newThisWeek.getEnd()).size()); -// assertEquals(1, TasksUiPlugin.getTaskActivityManager().getScheduledTasks(newPreviousWeek.getStart(), -// newPreviousWeek.getEnd()).size()); -// -// TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); -// } - - public void testScheduledTaskContainer() { - - Calendar startDate = Calendar.getInstance(); - startDate.setTimeInMillis(1000); - Calendar endDate = Calendar.getInstance(); - endDate.setTimeInMillis(2000); - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - AbstractTask task2 = new LocalTask("task 2", "Task 2"); - TasksUiPlugin.getTaskList().addTask(task1); - TasksUiPlugin.getTaskList().addTask(task2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, startDate.getTime(), endDate.getTime()); - - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task2.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, startDate.getTime(), endDate.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - Calendar start = TaskActivityUtil.getCalendar(); - start.setTimeInMillis(0); - Calendar end = TaskActivityUtil.getCalendar(); - end.add(Calendar.MINUTE, 2); - Set<AbstractTask> tasks = TasksUiPlugin.getTaskActivityManager().getActiveTasks(start, end); - assertEquals(2, tasks.size()); - assertEquals(1000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - assertEquals(1000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task2)); - - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/StackTraceDuplicateDetectorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/StackTraceDuplicateDetectorTest.java deleted file mode 100644 index a3929262e..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/StackTraceDuplicateDetectorTest.java +++ /dev/null @@ -1,100 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Jeff Pound 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 - * - * Contributors: - * Jeff Pound - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.search.StackTraceDuplicateDetector; - -/** - * @author Jeff Pound - */ -public class StackTraceDuplicateDetectorTest extends TestCase { - - public void testStackTrace() throws Exception { - String stackTrace = "java.lang.NullPointerException\nat jeff.testing.stack.trace.functionality(jeff.java:481)"; - assertNotNull(StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testNoStackTrace() throws Exception { - String stackTrace = "this is not really a stacktrace"; - assertNull(StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceWithAppendedText() throws Exception { - String stackTrace = "java.lang.NullPointerException\nat jeff.testing.stack.trace.functionality(jeff.java:481)"; - String extraText = "\nExtra text that isnt' part of the stack trace java:"; - assertEquals(stackTrace + "\n", StackTraceDuplicateDetector.getStackTraceFromDescription(extraText + "\n" - + stackTrace + "\n")); - } - - public void testStackTraceMisaligned() throws Exception { - String stackTrace = "java.lang.IllegalStateException: zip file closed\n" - + " at java.util.zip.ZipFile.ensureOpen (ZipFile.java:518)\n" - + "at java.util.zip.ZipFile.getEntry (ZipFile.java:251)\n" - + " at java.util.jar.JarFile.getEntry(JarFile.java:200)\n" - + "at sun.net.www.protocol.jar.URLJarFile.getEntry\n" + " (URLJarFile.java:90)\n" - + "at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:112)\n" - + "at sun.net.www.protocol.jar.JarURLConnection.getInputStream\n" + "(JarURLConnection.java:124)\n" - + "at org.eclipse.jdt.internal.core.JavaElement\n.getURLContents(JavaElement.java:734)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceSUN() throws Exception { - // SUN, IBM (no space before brackets, one set of brackets) - String stackTrace = "java.lang.IllegalStateException: zip file closed\n" - + " at java.util.zip.ZipFile.ensureOpen(ZipFile.java:518)\n" - + " at java.util.zip.ZipFile.getEntry(ZipFile.java:251)\n" - + " at java.util.jar.JarFile.getEntry(JarFile.java:200)\n" - + " at sun.net.www.protocol.jar.URLJarFile.getEntry(URLJarFile.java:90)\n" - + " at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:112)\n" - + " at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:124)\n" - + " at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:734)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceGCJ() throws Exception { - // gcj/gij (path and lib names in additional brackets) - String stackTrace = "java.lang.Error: Something bad happened\n" - + " at testcase.main(java.lang.String[]) (Unknown Source)\n" - + " at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)\n" - + " at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceNoLineNums() throws Exception { - // ikvm (no line numbers) - String stackTrace = "java.lang.Error: Something bad happened\n" + " at testcase.main (testcase.java)\n" - + " at java.lang.reflect.Method.Invoke (Method.java)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceJRockit() throws Exception { - // jrockit (slash delimiters) - String stackTrace = "java.lang.Error: Something bad happened\n" - + " at java/io/BufferedReader.readLine(BufferedReader.java:331)\n" - + " at java/io/BufferedReader.readLine(BufferedReader.java:362)\n" - + " at java/util/Properties.load(Properties.java:192)\n" - + " at java/util/logging/LogManager.readConfiguration(L:555)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - - public void testStackTraceOther() throws Exception { - // jamvm, sablevm, kaffe, cacao (space before brackets, one set of brackets) - String stackTrace = "java.lang.Error: Something bad happened\n" + " at testcase.main (testcase.java:3)\n" - + " at java.lang.VirtualMachine.invokeMain (VirtualMachine.java)\n" - + " at java.lang.VirtualMachine.main (VirtualMachine.java:108)"; - assertEquals(stackTrace, StackTraceDuplicateDetector.getStackTraceFromDescription(stackTrace)); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationActionTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationActionTest.java deleted file mode 100644 index 1c2e62d72..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationActionTest.java +++ /dev/null @@ -1,50 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.actions.ToggleTaskActivationAction; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.mylyn.tasks.ui.TasksUi; - -/** - * @author Mik Kersten - */ -public class TaskActivationActionTest extends TestCase { - - @Override - protected void tearDown() throws Exception { - TasksUi.getTaskActivityManager().deactivateActiveTask(); - } - - public void testUpdateOnExternalActivation() { - MockTask task = new MockTask("test:activation"); - ToggleTaskActivationAction action = new ToggleTaskActivationAction(task); - assertFalse(action.isChecked()); - - TasksUi.getTaskActivityManager().activateTask(task); - assertTrue(action.isChecked()); - - TasksUi.getTaskActivityManager().deactivateTask(task); - assertFalse(action.isChecked()); - - action.dispose(); - - TasksUi.getTaskActivityManager().activateTask(task); - assertFalse(action.isChecked()); - - TasksUi.getTaskActivityManager().deactivateTask(task); - assertFalse(action.isChecked()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationHistoryTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationHistoryTest.java deleted file mode 100644 index 44edf4a68..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivationHistoryTest.java +++ /dev/null @@ -1,329 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Frank Becker 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 - * - * Contributors: - * Frank Becker - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Arrays; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.mylyn.internal.context.core.ContextCorePlugin; -import org.eclipse.mylyn.internal.context.ui.ContextUiPlugin; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.TaskActivationHistory; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityManager; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.actions.ActivateTaskHistoryDropDownAction; -import org.eclipse.mylyn.internal.tasks.ui.actions.TaskActivateAction; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.internal.tasks.ui.workingsets.TaskWorkingSetUpdater; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.ui.TasksUi; -import org.eclipse.ui.IWorkingSet; -import org.eclipse.ui.IWorkingSetManager; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.internal.WorkingSet; - -/** - * @author Frank Becker - * @author Wesley Coelho - */ -public class TaskActivationHistoryTest extends TestCase { - - private TaskActivationHistory history; - - private TaskList taskList; - - private AbstractTask task1; - - private AbstractTask task2; - - private AbstractTask task3; - - private AbstractTask task4; - - private AbstractTask task5; - - private ActivateTaskHistoryDropDownAction previousTaskAction; - - private TaskActivityManager taskActivityManager; - - @Override - protected void setUp() throws Exception { - taskActivityManager = TasksUiPlugin.getTaskActivityManager(); - history = taskActivityManager.getTaskActivationHistory(); - taskList = TasksUiPlugin.getTaskList(); - - taskActivityManager.deactivateActiveTask(); - taskActivityManager.clear(); - ContextCorePlugin.getContextManager().resetActivityMetaContext(); - - TaskTestUtil.resetTaskList(); - - task1 = TasksUiInternal.createNewLocalTask("task 1"); - taskList.addTask(task1); - task2 = TasksUiInternal.createNewLocalTask("task 2"); - taskList.addTask(task2); - task3 = TasksUiInternal.createNewLocalTask("task 3"); - taskList.addTask(task3); - task4 = TasksUiInternal.createNewLocalTask("task 4"); - taskList.addTask(task4); - task5 = TasksUiInternal.createNewLocalTask("task 5"); - taskList.addTask(task5); - - previousTaskAction = new ActivateTaskHistoryDropDownAction(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskList(); - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().setWorkingSets(new WorkingSet[0]); - } - - public void testWithWorkingSet() { - MockRepositoryQuery query1 = new MockRepositoryQuery("Query 1"); - MockRepositoryQuery query2 = new MockRepositoryQuery("Query 2"); - - AbstractTask task11 = TasksUiInternal.createNewLocalTask("Query1 Task 1"); - AbstractTask task12 = TasksUiInternal.createNewLocalTask("Query1 Task 2"); - AbstractTask task21 = TasksUiInternal.createNewLocalTask("Query2 Task 1"); - AbstractTask task22 = TasksUiInternal.createNewLocalTask("Query2 Task 2"); - taskList.addQuery(query1); - taskList.addQuery(query2); - createWorkingSet(query1); - (new TaskActivateAction()).run(task11); - history.addTask(task11); - taskList.addTask(task11, query1); - (new TaskActivateAction()).run(task12); - history.addTask(task12); - taskList.addTask(task12, query1); - - (new TaskActivateAction()).run(task21); - history.addTask(task21); - taskList.addTask(task21, query2); - (new TaskActivateAction()).run(task22); - history.addTask(task22); - taskList.addTask(task22, query2); - - List<AbstractTask> prevHistoryList = history.getPreviousTasks(); - - // Check that the previous history list looks right - assertTrue(prevHistoryList.size() >= 3); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 1) == task22); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 2) == task21); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 3) == task12); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 4) == task11); - - prevHistoryList = history.getPreviousTasks(TasksUiInternal.getContainersFromWorkingSet(TaskListView.getActiveWorkingSets())); - - // Check that the previous history list looks right - assertTrue(prevHistoryList.size() >= 2); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 1) == task12); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 2) == task11); - - prevHistoryList = history.getPreviousTasks(new HashSet<AbstractTaskContainer>()); - - // Check that the previous history list looks right - assertTrue(prevHistoryList.size() >= 3); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 1) == task22); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 2) == task21); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 3) == task12); - assertTrue(prevHistoryList.get(prevHistoryList.size() - 4) == task11); - } - - private IWorkingSet createWorkingSet(IAdaptable element) { - IWorkingSetManager workingSetManager1 = ContextUiPlugin.getDefault().getWorkbench().getWorkingSetManager(); - IWorkingSet workingSet = workingSetManager1.createWorkingSet("Task Working Set", new IAdaptable[] { element }); - workingSet.setId(TaskWorkingSetUpdater.ID_TASK_WORKING_SET); - assertTrue(Arrays.asList(workingSet.getElements()).contains(element)); - Set<IWorkingSet> sets = TaskListView.getActiveWorkingSets(); - sets.add(workingSet); - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().setWorkingSets( - sets.toArray(new WorkingSet[sets.size()])); - return workingSet; - } - - /** - * Tests the next task and previous task navigation. - */ - public void testBasicHistoryNavigation() { - // NOTE: legacy test - TasksUi.getTaskActivityManager().activateTask(task1); - history.addTask(task1); - TasksUi.getTaskActivityManager().activateTask(task2); - history.addTask(task2); - TasksUi.getTaskActivityManager().activateTask(task3); - history.addTask(task3); - - assertTrue(task3.isActive()); - assertFalse(task2.isActive()); - assertFalse(task1.isActive()); - // order 1 (2) 3 - - previousTaskAction.run(); - // order (1) 3 2 - assertEquals(task2, taskActivityManager.getActiveTask()); - assertTrue(task2.isActive()); - - previousTaskAction.run(); - // order (1) 2 3 - assertEquals(task1, taskActivityManager.getActiveTask()); - assertTrue(task1.isActive()); - - previousTaskAction.run(); - // order (1) 2 3 - assertEquals(task1, taskActivityManager.getActiveTask()); - assertTrue(task1.isActive()); - - // taskView.getPreviousTaskAction().run(); - // assertTrue(task1.isActive()); - // - // taskView.getPreviousTaskAction().run(); - // assertTrue(task1.isActive()); - - // taskView.getNextTaskAction().run(); - // assertTrue(task2.isActive()); - // - // taskView.getNextTaskAction().run(); - // assertTrue(task3.isActive()); - // - // taskView.getNextTaskAction().run(); - // assertTrue(task3.isActive()); - // - // taskView.getPreviousTaskAction().run(); - // assertTrue(task2.isActive()); - // - // taskView.getNextTaskAction().run(); - // assertTrue(task3.isActive()); - // - // TasksUi.getTaskActivityManager().activateTask(task4); - // history.addTask(task4); // Simulate clicking on it rather - // // than navigating next or previous - // assertTrue(task4.isActive()); - // - // taskView.getNextTaskAction().run(); - // assertTrue(task4.isActive()); - // - // taskView.getPreviousTaskAction().run(); - // assertTrue(task3.isActive()); - // - // taskView.getNextTaskAction().run(); - // assertTrue(task4.isActive()); - - } - - /** - * Tests navigation to previous/next tasks that are chosen from a list rather than being sequentially navigated - */ - public void testArbitraryHistoryNavigation() { - // Simulate activating the tasks by clicking rather than - // navigating previous/next - TasksUi.getTaskActivityManager().activateTask(task1); - history.addTask(task1); - TasksUi.getTaskActivityManager().activateTask(task2); - history.addTask(task2); - TasksUi.getTaskActivityManager().activateTask(task3); - history.addTask(task3); - TasksUi.getTaskActivityManager().activateTask(task4); - history.addTask(task4); - - assertTrue(task4.isActive()); - //TaskActivationHistory taskHistory = taskView.getTaskActivationHistory(); - List<AbstractTask> prevHistoryList = history.getPreviousTasks(); - - // Check that the previous history list looks right - assertTrue(prevHistoryList.size() >= 3); - assertEquals(task3, prevHistoryList.get(prevHistoryList.size() - 2)); - assertEquals(task2, prevHistoryList.get(prevHistoryList.size() - 3)); - assertEquals(task1, prevHistoryList.get(prevHistoryList.size() - 4)); - - // Get a task from the list and activate it - TasksUi.getTaskActivityManager().activateTask(task2); - assertEquals(task2, taskActivityManager.getActiveTask()); - assertTrue(task2.isActive()); - - // Now check that the next and prev lists look right - prevHistoryList = history.getPreviousTasks(); - assertEquals(task2, prevHistoryList.get(prevHistoryList.size() - 1)); - assertEquals(task4, prevHistoryList.get(prevHistoryList.size() - 2)); - assertEquals(task1, prevHistoryList.get(prevHistoryList.size() - 4)); - assertEquals(task3, prevHistoryList.get(prevHistoryList.size() - 3)); - - // Activation of task outside of history navigation tool - history.addTask(task3); - - prevHistoryList = history.getPreviousTasks(); - assertEquals(task3, prevHistoryList.get(prevHistoryList.size() - 1)); - assertEquals(task2, prevHistoryList.get(prevHistoryList.size() - 2)); - assertEquals(task4, prevHistoryList.get(prevHistoryList.size() - 3)); - assertEquals(task1, prevHistoryList.get(prevHistoryList.size() - 4)); - - // Pick a task from drop down history - TasksUi.getTaskActivityManager().activateTask(task4); - assertEquals(task4, taskActivityManager.getActiveTask()); - assertTrue(task4.isActive()); - - prevHistoryList = history.getPreviousTasks(); - assertEquals(task4, prevHistoryList.get(prevHistoryList.size() - 1)); - assertEquals(task3, prevHistoryList.get(prevHistoryList.size() - 2)); - assertEquals(task2, prevHistoryList.get(prevHistoryList.size() - 3)); - assertEquals(task1, prevHistoryList.get(prevHistoryList.size() - 4)); - - // Hit previous task button - previousTaskAction.run(); - assertEquals(task3, taskActivityManager.getActiveTask()); - assertTrue(task3.isActive()); - - prevHistoryList = history.getPreviousTasks(); - assertEquals(task3, prevHistoryList.get(prevHistoryList.size() - 1)); - assertEquals(task4, prevHistoryList.get(prevHistoryList.size() - 2)); - assertEquals(task2, prevHistoryList.get(prevHistoryList.size() - 3)); - assertEquals(task1, prevHistoryList.get(prevHistoryList.size() - 4)); - - TasksUi.getTaskActivityManager().deactivateTask(task3); - - // List<ITask> nextHistoryList = taskHistory.getNextTasks(); - // assertTrue(nextHistoryList.get(0) == task3); - // assertTrue(nextHistoryList.get(1) == task4); - // - // // Navigate to a next item - // NextTaskDropDownAction nextAction = new - // NextTaskDropDownAction(taskView, taskHistory); - // navigateAction = nextAction.new TaskNavigateAction(task4); - // navigateAction.run(); - // taskHistory.navigatedToTask(task4); - // - // assertTrue(task4.isActive()); - // - // // Check that the prev and next lists look right - // nextHistoryList = taskHistory.getNextTasks(); - // prevHistoryList = taskHistory.getPreviousTasks(); - // assertTrue(nextHistoryList.size() == 0); - // assertTrue(prevHistoryList.get(prevHistoryList.size() - 1) == task3); - // assertTrue(prevHistoryList.get(prevHistoryList.size() - 2) == task2); - // assertTrue(prevHistoryList.get(prevHistoryList.size() - 3) == task1); - // - // // Check that a deactivated task appears first on the history list - // TasksUi.getTaskActivityManager().activateTask(task5); - // (new TaskDeactivateAction()).run(task5); - // taskView.addTaskToHistory(task5); - // prevHistoryList = taskHistory.getPreviousTasks(); - // assertTrue(prevHistoryList.get(prevHistoryList.size() - 1) == task5); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityManagerTest.java deleted file mode 100644 index 239952a2a..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityManagerTest.java +++ /dev/null @@ -1,224 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Calendar; -import java.util.Date; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.commons.net.AuthenticationCredentials; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.DateRange; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityManager; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskActivationAdapter; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Shawn Minto - * @author Robert Elves - */ -public class TaskActivityManagerTest extends TestCase { - - private class MockTaskActivationListener extends TaskActivationAdapter { - - private boolean hasActivated = false; - - private boolean hasPreActivated = false; - - private boolean hasDeactivated = false; - - private boolean hasPreDeactivated = false; - - public void reset() { - hasActivated = false; - hasPreActivated = false; - - hasDeactivated = false; - hasPreDeactivated = false; - - } - - @Override - public void preTaskActivated(ITask task) { - assertFalse(hasActivated); - hasPreActivated = true; - } - - @Override - public void preTaskDeactivated(ITask task) { - assertFalse(hasDeactivated); - hasPreDeactivated = true; - } - - @Override - public void taskActivated(ITask task) { - assertTrue(hasPreActivated); - hasActivated = true; - } - - @Override - public void taskDeactivated(ITask task) { - assertTrue(hasPreDeactivated); - hasDeactivated = true; - } - - } - - private TaskActivityManager taskActivityManager; - - private TaskList taskList; - - private TaskRepository repository; - - @Override - protected void setUp() throws Exception { - taskActivityManager = TasksUiPlugin.getTaskActivityManager(); - taskActivityManager.deactivateActiveTask(); - taskList = TasksUiPlugin.getTaskList(); - - TaskTestUtil.resetTaskListAndRepositories(); - - repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - } - - public void testWeekEnd() { - AbstractTask task = new LocalTask("12", "task-12"); - assertFalse(taskActivityManager.isScheduledForToday(task)); - - // test end of next week - Calendar end = TaskActivityUtil.getNextWeek().getEndDate(); - Calendar start = TaskActivityUtil.getCalendar(); - start.setTimeInMillis(end.getTimeInMillis()); - TaskActivityUtil.snapStartOfDay(start); - taskActivityManager.setScheduledFor(task, new DateRange(start, end)); - assertTrue(taskActivityManager.isScheduledForNextWeek(task)); - taskActivityManager.setScheduledFor(task, TaskActivityUtil.getNextWeek()); - assertTrue(taskActivityManager.isScheduledForNextWeek(task)); - assertEquals(0, taskActivityManager.getScheduledTasks(new DateRange(start, end)).size()); - - // test end of two weeks - end = TaskActivityUtil.getNextWeek().next().getEndDate(); - start = TaskActivityUtil.getCalendar(); - start.setTimeInMillis(end.getTimeInMillis()); - TaskActivityUtil.snapStartOfDay(start); - taskActivityManager.setScheduledFor(task, new DateRange(start, end)); - assertEquals(1, taskActivityManager.getScheduledTasks(new DateRange(start, end)).size()); - assertEquals(1, taskActivityManager.getScheduledTasks(TaskActivityUtil.getNextWeek().next()).size()); - - } - - public void testTaskActivation() { - MockTask task = new MockTask("test:activation"); - MockTaskActivationListener listener = new MockTaskActivationListener(); - try { - taskActivityManager.addActivationListener(listener); - try { - taskActivityManager.activateTask(task); - assertTrue(listener.hasPreActivated); - assertTrue(listener.hasActivated); - assertFalse(listener.hasPreDeactivated); - assertFalse(listener.hasDeactivated); - - listener.reset(); - } finally { - taskActivityManager.deactivateTask(task); - } - assertFalse(listener.hasPreActivated); - assertFalse(listener.hasActivated); - assertTrue(listener.hasPreDeactivated); - assertTrue(listener.hasDeactivated); - } finally { - taskActivityManager.removeActivationListener(listener); - } - } - - public void testIsActiveToday() { - AbstractTask task = new LocalTask("1", "task-1"); - assertFalse(taskActivityManager.isScheduledForToday(task)); - - task.setScheduledForDate(TaskActivityUtil.getCurrentWeek().getToday()); - assertTrue(taskActivityManager.isScheduledForToday(task)); - - task.setReminded(true); - assertTrue(taskActivityManager.isScheduledForToday(task)); - task.setReminded(true); - -// Calendar inAnHour = Calendar.getInstance(); -// inAnHour.set(Calendar.HOUR_OF_DAY, inAnHour.get(Calendar.HOUR_OF_DAY) + 1); -// inAnHour.getTime(); -// task.setScheduledForDate(inAnHour.getTime()); -// Calendar tomorrow = Calendar.getInstance(); -// TaskActivityUtil.snapToNextDay(tomorrow); -// assertEquals(-1, inAnHour.compareTo(tomorrow)); -// assertTrue(taskActivityManager.isScheduledForToday(task)); - } - - public void testScheduledForToday() { - AbstractTask task = new LocalTask("1", "task-1"); - task.setScheduledForDate(TaskActivityUtil.getCurrentWeek().getToday()); - assertTrue(taskActivityManager.isScheduledForToday(task)); - task.setScheduledForDate(TaskActivityUtil.getCurrentWeek().getToday().next()); - assertFalse(taskActivityManager.isScheduledForToday(task)); - } - - public void testSchedulePastEndOfMonth() { - Calendar calendar = Calendar.getInstance(); - calendar.set(Calendar.MONTH, Calendar.SEPTEMBER); - calendar.set(Calendar.DAY_OF_MONTH, 30); - TaskActivityUtil.snapForwardNumDays(calendar, 1); - assertEquals("Should be October", Calendar.OCTOBER, calendar.get(Calendar.MONTH)); - } - - public void testIsCompletedToday() { - ITask task = new LocalTask("1", "task 1"); - task.setCompletionDate(new Date()); - assertTrue(taskActivityManager.isCompletedToday(task)); - - MockTask mockTask = new MockTask("1"); - mockTask.setOwner("unknown"); - taskList.addTask(mockTask); - mockTask.setCompletionDate(new Date()); - assertFalse("completed: " + mockTask.getCompletionDate(), taskActivityManager.isCompletedToday(mockTask)); - - mockTask = new MockTask("2"); - taskList.addTask(mockTask); - mockTask.setCompletionDate(new Date()); - mockTask.setOwner("testUser"); - repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("testUser", ""), false); - assertTrue(taskActivityManager.isCompletedToday(mockTask)); - } - - public void testAllTasksDeactivation() { - AbstractTask task1 = new LocalTask("task1", "description1"); - AbstractTask task2 = new LocalTask("task2", "description2"); - taskList.addTask(task1); - taskList.addTask(task2); - assertNull(taskActivityManager.getActiveTask()); - - taskActivityManager.activateTask(task2); - assertEquals(task2, taskActivityManager.getActiveTask()); - - taskActivityManager.deactivateActiveTask(); - assertNull(taskActivityManager.getActiveTask()); - } - -}
\ No newline at end of file diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityTimingTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityTimingTest.java deleted file mode 100644 index 4dd86d4f2..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskActivityTimingTest.java +++ /dev/null @@ -1,1331 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.Path; -import org.eclipse.mylyn.context.tests.support.FileTool; -import org.eclipse.mylyn.internal.context.core.ContextCorePlugin; -import org.eclipse.mylyn.internal.context.core.InteractionContext; -import org.eclipse.mylyn.internal.context.core.InteractionContextManager; -import org.eclipse.mylyn.internal.context.core.InteractionContextScaling; -import org.eclipse.mylyn.internal.context.core.LegacyActivityAdaptor; -import org.eclipse.mylyn.internal.monitor.ui.MonitorUiPlugin; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.ITaskList; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.ScheduledTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityManager; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.monitor.core.InteractionEvent; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.ui.TasksUi; - -/** - * @author Rob Elves - */ -public class TaskActivityTimingTest extends TestCase { - - private TaskActivityManager activityManager; - - private ITaskList taskList; - - @Override - protected void setUp() throws Exception { - activityManager = (TaskActivityManager) TasksUi.getTaskActivityManager(); - taskList = TasksUiInternal.getTaskList(); - TaskTestUtil.resetTaskListAndRepositories(); - TaskTestUtil.saveAndReadTasklist(); - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - } - - @Override - protected void tearDown() throws Exception { - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - TaskTestUtil.resetTaskList(); - } - - public void testLoadCorruptContext() throws Exception { - String contextPath = TasksUiPlugin.getDefault().getDataDirectory() + '/' + "contexts" + '/'; - File contexts = new File(contextPath); - if (!contexts.exists()) { - contexts.mkdir(); - } - File backup = new File(contexts, ".activity.xml.zip"); - - File good = FileTool.getFileInPlugin(TasksTestsPlugin.getDefault(), new Path( - "testdata/activityTests/.activity.xml.zip")); - - copy(good, backup); - - File corrupt = new File(contexts, "activity.xml.zip"); - - File corruptSource = FileTool.getFileInPlugin(TasksTestsPlugin.getDefault(), new Path( - "testdata/activityTests/activity.xml.zip")); - - copy(corruptSource, corrupt); - - InteractionContextManager manager = ContextCorePlugin.getContextManager(); - manager.loadActivityMetaContext(); - assertFalse(manager.getActivityMetaContext().getInteractionHistory().isEmpty()); - } - - public void testConstantWriting() throws Exception { - - String contextPath = TasksUiPlugin.getDefault().getDataDirectory() + '/' + "contexts" + '/'; - File contexts = new File(contextPath); - if (!contexts.exists()) { - contexts.mkdir(); - } - File backup = new File(contexts, ".activity.xml.zip"); - - File good = FileTool.getFileInPlugin(TasksTestsPlugin.getDefault(), new Path( - "testdata/activityTests/.activity.xml.zip")); - - copy(good, backup); - - InteractionContextManager manager = ContextCorePlugin.getContextManager(); - manager.loadActivityMetaContext(); - assertFalse(manager.getActivityMetaContext().getInteractionHistory().isEmpty()); - - for (int i = 0; i < 50; i++) { - manager.saveActivityMetaContext(); - } - - manager.loadActivityMetaContext(); - assertFalse(manager.getActivityMetaContext().getInteractionHistory().isEmpty()); - - } - - private void copy(File inFile, File outFile) throws Exception { - - FileOutputStream outStream = new FileOutputStream(outFile); - FileInputStream inStream = new FileInputStream(inFile); - - byte[] buffer = new byte[1024]; - while (inStream.read(buffer) != -1) { - outStream.write(buffer); - } - inStream.close(); - outStream.close(); - - } - - public void testActivityWithNoTaskActive() { - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.setTimeInMillis(start.getTimeInMillis()); - end.add(Calendar.HOUR_OF_DAY, 2); - - Calendar start2 = Calendar.getInstance(); - start2.add(Calendar.DAY_OF_MONTH, 1); - Calendar end2 = Calendar.getInstance(); - end2.setTime(start2.getTime()); - end2.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_WORKINGSET, "none", "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), end.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_WORKINGSET, "none", "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start2.getTime(), end2.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long expectedTotalTime = end.getTime().getTime() - start.getTime().getTime(); - assertEquals(2 * expectedTotalTime, activityManager.getElapsedForWorkingSet("none", start, end2)); - - } - - public void testActivityWithNoTaskActive2() { - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.setTimeInMillis(start.getTimeInMillis()); - end.add(Calendar.HOUR_OF_DAY, 2); - - Calendar start2 = Calendar.getInstance(); - start2.add(Calendar.DAY_OF_MONTH, 1); - Calendar end2 = Calendar.getInstance(); - end2.setTime(start2.getTime()); - end2.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_WORKINGSET, "set 1", "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), end.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_WORKINGSET, "set 2", "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start2.getTime(), end2.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long expectedTotalTime = end.getTime().getTime() - start.getTime().getTime(); - assertEquals(0, activityManager.getElapsedForWorkingSet("bogus", start, end2)); - assertEquals(0, activityManager.getElapsedForWorkingSet("none", start, end2)); - assertEquals(expectedTotalTime, activityManager.getElapsedForWorkingSet("set 1", start, end2)); - assertEquals(expectedTotalTime, activityManager.getElapsedForWorkingSet("set 2", start, end2)); - assertTrue(activityManager.getWorkingSets().contains("set 1")); - assertTrue(activityManager.getWorkingSets().contains("set 2")); - } - - public void testActivityCaptured() { - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - taskList.addTask(task1); - assertEquals(0, activityManager.getElapsedTime(task1)); - - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.setTimeInMillis(start.getTimeInMillis()); - end.add(Calendar.HOUR_OF_DAY, 2); - - Calendar start2 = Calendar.getInstance(); - start2.add(Calendar.DAY_OF_MONTH, 1); - Calendar end2 = Calendar.getInstance(); - end2.setTime(start2.getTime()); - end2.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), end.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start2.getTime(), end2.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long expectedTotalTime = end.getTime().getTime() - start.getTime().getTime(); - assertEquals(2 * expectedTotalTime, activityManager.getElapsedTime(task1)); - Calendar startEarly = Calendar.getInstance(); - startEarly.setTimeInMillis(start.getTimeInMillis()); - startEarly.add(Calendar.MONTH, -1); - Calendar endLate = Calendar.getInstance(); - endLate.setTimeInMillis(end.getTimeInMillis() + 60 * 5000); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, startEarly, end)); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start2, end2)); - assertEquals(2 * expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end2)); - } - - public void testActivityDelete() { - - AbstractTask task1 = new LocalTask("1", "Task 1"); - taskList.addTask(task1); - assertEquals(0, activityManager.getElapsedTime(task1)); - - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.setTimeInMillis(start.getTimeInMillis()); - end.add(Calendar.HOUR_OF_DAY, 2); - - Calendar start2 = Calendar.getInstance(); - start2.add(Calendar.DAY_OF_MONTH, 1); - Calendar end2 = Calendar.getInstance(); - end2.setTime(start2.getTime()); - end2.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), end.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start2.getTime(), end2.getTime()); - - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long expectedTotalTime = end.getTime().getTime() - start.getTime().getTime(); - assertEquals(2 * expectedTotalTime, activityManager.getElapsedTime(task1)); - Calendar startEarly = Calendar.getInstance(); - startEarly.setTimeInMillis(start.getTimeInMillis()); - startEarly.add(Calendar.MONTH, -1); - Calendar endLate = Calendar.getInstance(); - endLate.setTimeInMillis(end.getTimeInMillis() + 60 * 5000); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, startEarly, end)); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start2, end2)); - assertEquals(2 * expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end2)); - - MonitorUiPlugin.getDefault().getActivityContextManager().removeActivityTime(task1.getHandleIdentifier(), - start.getTimeInMillis(), end.getTimeInMillis()); - // Half gone since end date is exclusive (removes up to but not including hour) - assertEquals(expectedTotalTime, activityManager.getElapsedTime(task1)); - - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - ContextCorePlugin.getContextManager().loadActivityMetaContext(); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - - assertEquals(expectedTotalTime, activityManager.getElapsedTime(task1)); - - MonitorUiPlugin.getDefault().getActivityContextManager().removeActivityTime(task1.getHandleIdentifier(), - start2.getTimeInMillis(), end2.getTimeInMillis()); - - assertEquals(0, activityManager.getElapsedTime(task1)); - } - -// public void testActivityReset() { -// -// AbstractTask task1 = new LocalTask("1", "Task 1"); -// taskList.addTask(task1); -// assertEquals(0, activityManager.getElapsedTime(task1)); -// -// Calendar start = Calendar.getInstance(); -// Calendar end = Calendar.getInstance(); -// end.setTimeInMillis(start.getTimeInMillis()); -// end.add(Calendar.HOUR_OF_DAY, 2); -// -// Calendar start2 = Calendar.getInstance(); -// start2.add(Calendar.DAY_OF_MONTH, 1); -// Calendar end2 = Calendar.getInstance(); -// end2.setTime(start2.getTime()); -// end2.add(Calendar.HOUR_OF_DAY, 2); -// -// InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// IInteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), end.getTime()); -// InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// IInteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start2.getTime(), end2.getTime()); -// -// ContextCore.getContextManager().getActivityMetaContext().parseEvent(event1); -// TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1); -// ContextCore.getContextManager().getActivityMetaContext().parseEvent(event2); -// TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2); -// -// long expectedTotalTime = end.getTime().getTime() - start.getTime().getTime(); -// assertEquals(2 * expectedTotalTime, activityManager.getElapsedTime(task1)); -// Calendar startEarly = Calendar.getInstance(); -// startEarly.setTimeInMillis(start.getTimeInMillis()); -// startEarly.add(Calendar.MONTH, -1); -// Calendar endLate = Calendar.getInstance(); -// endLate.setTimeInMillis(end.getTimeInMillis() + 60 * 5000); -// assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, startEarly, end)); -// assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start2, end2)); -// assertEquals(2 * expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end2)); -// -// MonitorUiPlugin.getDefault().getActivityContextManager().clearActivityTime(task1.getHandleIdentifier(), -// start.getTimeInMillis(), end.getTimeInMillis()); -// // Half gone since end date is exclusive (removes up to but not including hour) -// assertEquals(expectedTotalTime, activityManager.getElapsedTime(task1)); -// assertTrue(activityManager.getActiveTasks(start, end).isEmpty()); -// assertFalse(activityManager.getActiveTasks(start2, end2).isEmpty()); -// -// MonitorUiPlugin.getDefault().getActivityContextManager().clearActivityTime(task1.getHandleIdentifier(), -// start.getTimeInMillis(), end2.getTimeInMillis() + (1000 * 60 * 60)); -// -// // with end = hour beyond should result in zero -// assertEquals(0, activityManager.getElapsedTime(task1)); -// -// TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2); -// // one event blocked now by activity date filter so only half time collected -// assertEquals(expectedTotalTime, activityManager.getElapsedTime(task1)); -// assertFalse(activityManager.getActiveTasks(start, end).isEmpty()); -// assertTrue(activityManager.getActiveTasks(start2, end2).isEmpty()); -// -// ContextCore.getContextManager().saveActivityContext(); -// ContextCore.getContextManager().loadActivityMetaContext(); -// TasksUiPlugin.getTaskListManager().resetAndRollOver(); -// -//// assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, startEarly, end)); -//// assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start2, end2)); -//// assertEquals(2 * expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end2)); -// -// // reset still valid after restart -// assertEquals(expectedTotalTime, activityManager.getElapsedTime(task1)); -// assertFalse(activityManager.getActiveTasks(start, end).isEmpty()); -// assertTrue(activityManager.getActiveTasks(start2, end2).isEmpty()); -// -// } - - public void testNegativeActivity() { - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - taskList.addTask(task1); - assertEquals(0, activityManager.getElapsedTime(task1)); - - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.add(Calendar.HOUR_OF_DAY, 2); - - Calendar start2 = Calendar.getInstance(); - start2.add(Calendar.DAY_OF_MONTH, 1); - Calendar end2 = Calendar.getInstance(); - end2.setTime(start2.getTime()); - end2.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, end.getTime(), start.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, end2.getTime(), start2.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - assertEquals(0, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - assertEquals(0, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end)); - assertEquals(0, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start2, end2)); - assertEquals(0, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1, start, end2)); - - } - - public void testNullTaskHandle() { - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - taskList.addTask(task1); - assertEquals(0, activityManager.getElapsedTime(task1)); - - Calendar start = Calendar.getInstance(); - Calendar end = Calendar.getInstance(); - end.add(Calendar.HOUR_OF_DAY, 2); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", null, - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), - end.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, "structureKind", "", - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, start.getTime(), - end.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - assertEquals(0, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - } - - public void testActivityNotLoggedTwice() { - InteractionContext metaContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - metaContext.reset(); - assertEquals(0, metaContext.getInteractionHistory().size()); - - ITask task1 = new LocalTask("local 1", "Task 1"); - ITask task2 = new LocalTask("local 2", "Task 2"); - - Calendar startTime1 = Calendar.getInstance(); - TaskActivityUtil.snapStartOfHour(startTime1); - Calendar endTime1 = Calendar.getInstance(); - endTime1.setTime(startTime1.getTime()); - endTime1.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.setTime(endTime1.getTime()); - startTime2.add(Calendar.SECOND, 20); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTime(startTime2.getTime()); - endTime2.add(Calendar.MINUTE, 2); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - InteractionEvent activityEvent3 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task2.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), startTime1.getTime()); - - // to activity events both within same hour will get collapsed - metaContext.parseEvent(activityEvent1); - metaContext.parseEvent(activityEvent2); - // This is a bogus 3rd event with zero activity and shouldn't be recorded - // this use to result in a second write of activity1 to the context - metaContext.parseEvent(activityEvent3); - metaContext = ContextCorePlugin.getContextManager().collapseActivityMetaContext(metaContext); - assertEquals(1, metaContext.getInteractionHistory().size()); - } - - public void testDoubleBookKeeping() { - AbstractTask task1 = new LocalTask("testDoubleBookKeeping", "testDoubleBookKeeping"); - TasksUiPlugin.getTaskList().addTask(task1); - { - Calendar startActiveTime = Calendar.getInstance(); - Calendar endActiveTime = Calendar.getInstance(); - endActiveTime.setTime(startActiveTime.getTime()); - endActiveTime.add(Calendar.SECOND, 20); - - Calendar startTime = Calendar.getInstance(); - startTime.setTime(startActiveTime.getTime()); - startTime.add(Calendar.SECOND, 5); - Calendar endTime = Calendar.getInstance(); - endTime.setTime(endActiveTime.getTime()); - endTime.add(Calendar.SECOND, -5); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, - "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, - startActiveTime.getTime(), startActiveTime.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, - "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, - endActiveTime.getTime(), endActiveTime.getTime()); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime.getTime(), endTime.getTime()); - - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(activityEvent1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long elapsed = TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1); - assertEquals(10000, elapsed); - - // 2nd activation - no activity - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - elapsed = TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1); - assertEquals(10000, elapsed); - assertTrue(TasksUiPlugin.getTaskActivityManager().isActiveThisWeek(task1)); - } - - assertEquals(10000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - ///--- 2nd activity on same task - { - Calendar startActiveTime2 = Calendar.getInstance(); - Calendar endActiveTime2 = Calendar.getInstance(); - endActiveTime2.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.setTimeInMillis(startActiveTime2.getTimeInMillis() + 2000); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTimeInMillis(endActiveTime2.getTimeInMillis() - 2000); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, - "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, - startActiveTime2.getTime(), startActiveTime2.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, - "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, - endActiveTime2.getTime(), endActiveTime2.getTime()); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(activityEvent1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - } - - assertEquals(26000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - ContextCorePlugin.getContextManager().loadActivityMetaContext(); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - - assertEquals(26000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - - } - - public void testAfterReloading() { - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - - Calendar startTime = Calendar.getInstance(); - Calendar endTime = Calendar.getInstance(); - endTime.add(Calendar.SECOND, 20); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, startTime.getTime(), startTime.getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, startTime.getTime(), startTime.getTime()); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime.getTime(), endTime.getTime()); - - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(activityEvent1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent1, false); - ContextCorePlugin.getContextManager().getActivityMetaContext().parseEvent(event2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - assertEquals(20000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - ContextCorePlugin.getContextManager().loadActivityMetaContext(); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - - assertEquals(20000, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - - } - - public void testCollapsedTiming() { - Calendar startTime1 = Calendar.getInstance(); - Calendar endTime1 = Calendar.getInstance(); - endTime1.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.setTimeInMillis(endTime1.getTimeInMillis()); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTimeInMillis(startTime2.getTimeInMillis() + 20 * 1000); - - Calendar startTime3 = Calendar.getInstance(); - startTime3.setTimeInMillis(endTime2.getTimeInMillis()); - Calendar endTime3 = Calendar.getInstance(); - endTime3.setTimeInMillis(startTime3.getTimeInMillis() + 20 * 1000); - - InteractionContext mockContext = new InteractionContext("doitest", new InteractionContextScaling()); - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - InteractionEvent activityEvent3 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime3.getTime(), endTime3.getTime()); - - mockContext.parseEvent(activityEvent1); - mockContext.parseEvent(activityEvent2); - mockContext.parseEvent(activityEvent3); - assertEquals(3, mockContext.getInteractionHistory().size()); - mockContext = ContextCorePlugin.getContextManager().collapseActivityMetaContext(mockContext); - assertEquals(1, mockContext.getInteractionHistory().size()); - - assertEquals(60 * 1000, mockContext.getInteractionHistory().get(0).getEndDate().getTime() - - mockContext.getInteractionHistory().get(0).getDate().getTime()); - } - - /** - * test that total collapsed time is same when events are separated in time - */ - public void testCollapsedTiming2() { - Calendar startTime1 = Calendar.getInstance(); - Calendar endTime1 = Calendar.getInstance(); - endTime1.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.setTimeInMillis(endTime1.getTimeInMillis()); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTimeInMillis(startTime2.getTimeInMillis() + 20 * 1000); - - Calendar startTime3 = Calendar.getInstance(); - startTime3.setTimeInMillis(endTime2.getTimeInMillis()); - Calendar endTime3 = Calendar.getInstance(); - endTime3.setTimeInMillis(startTime3.getTimeInMillis() + 50 * 1000); - - InteractionContext mockContext = new InteractionContext("doitest", new InteractionContextScaling()); - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent3 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime3.getTime(), endTime3.getTime()); - - mockContext.parseEvent(activityEvent1); - mockContext.parseEvent(activityEvent3); - assertEquals(2, mockContext.getInteractionHistory().size()); - mockContext = ContextCorePlugin.getContextManager().collapseActivityMetaContext(mockContext); - assertEquals(1, mockContext.getInteractionHistory().size()); - assertEquals(70 * 1000, mockContext.getInteractionHistory().get(0).getEndDate().getTime() - - mockContext.getInteractionHistory().get(0).getDate().getTime()); - } - - public void testCollapsedExternalization() { - - Calendar startTime1 = Calendar.getInstance(); - Calendar endTime1 = Calendar.getInstance(); - endTime1.setTime(startTime1.getTime()); - endTime1.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.add(Calendar.DAY_OF_MONTH, 1); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTime(startTime2.getTime()); - endTime2.add(Calendar.SECOND, 20); - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - InteractionContext metaContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - metaContext.reset(); - assertEquals(0, metaContext.getInteractionHistory().size()); - - TasksUiPlugin.getTaskActivityManager().activateTask(task1); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - metaContext.parseEvent(activityEvent1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent1, false); - metaContext.parseEvent(activityEvent2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent2, false); - TasksUiPlugin.getTaskActivityManager().deactivateActiveTask(); - assertEquals(4, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - - TaskTestUtil.saveTaskList(); - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - assertEquals(0, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - ContextCorePlugin.getContextManager().loadActivityMetaContext(); - - assertEquals(4, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - assertEquals((endTime1.getTimeInMillis() - startTime1.getTimeInMillis()) - + (endTime2.getTimeInMillis() - startTime2.getTimeInMillis()), TasksUiPlugin.getTaskActivityManager() - .getElapsedTime(task1)); - } - - public void testCollapsedTwoTasks() { - // test collapsing of attention events when two or more - // task attention events occur sequentially - Calendar startTime1 = Calendar.getInstance(); - Calendar endTime1 = Calendar.getInstance(); - endTime1.add(Calendar.SECOND, 20); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.setTime(endTime1.getTime()); - startTime2.add(Calendar.SECOND, 2); - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTime(startTime2.getTime()); - endTime2.add(Calendar.SECOND, 20); - - InteractionContext mockContext = new InteractionContext("doitest", new InteractionContextScaling()); - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle1", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, "handle2", - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - mockContext.parseEvent(activityEvent1); - mockContext.parseEvent(activityEvent2); - - // Since these event times are within same hour, normally they would get collapsed - // here we test that if the event belongs to two different tasks remain discrete - - assertEquals(2, mockContext.getInteractionHistory().size()); - mockContext = ContextCorePlugin.getContextManager().collapseActivityMetaContext(mockContext); - assertEquals(2, mockContext.getInteractionHistory().size()); - } - - public void testCollapeedByTheHour() { - Calendar startTime1 = Calendar.getInstance(); - startTime1.set(Calendar.MINUTE, 2); - startTime1.set(Calendar.SECOND, 0); - startTime1.set(Calendar.MILLISECOND, 0); - - Calendar endTime1 = Calendar.getInstance(); - endTime1.setTime(startTime1.getTime()); - endTime1.add(Calendar.MINUTE, 2); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.add(Calendar.HOUR_OF_DAY, 1); - startTime2.set(Calendar.MINUTE, 2); - startTime2.set(Calendar.SECOND, 0); - startTime2.set(Calendar.MILLISECOND, 0); - - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTime(startTime2.getTime()); - endTime2.add(Calendar.MINUTE, 3); - - Calendar startTime3 = Calendar.getInstance(); - startTime3.add(Calendar.HOUR_OF_DAY, 1); - startTime3.set(Calendar.MINUTE, 20); - startTime3.set(Calendar.SECOND, 0); - startTime3.set(Calendar.MILLISECOND, 0); - - Calendar endTime3 = Calendar.getInstance(); - endTime3.setTime(startTime3.getTime()); - endTime3.add(Calendar.MINUTE, 5); - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - InteractionEvent activityEvent3 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime3.getTime(), endTime3.getTime()); - - List<InteractionEvent> events = new ArrayList<InteractionEvent>(); - events.add(activityEvent1); - events.add(activityEvent2); - events.add(activityEvent3); - List<InteractionEvent> collapsedEvents = ContextCorePlugin.getContextManager().collapseEventsByHour(events); - - assertEquals(2, collapsedEvents.size()); - } - - public void testTaskListManagerInactivity() { - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - - ScheduledTaskContainer activityThisWeek = new ScheduledTaskContainer(TasksUiPlugin.getTaskActivityManager(), - TaskActivityUtil.getCurrentWeek()); - assertNotNull(activityThisWeek); - assertEquals(0, activityThisWeek.getChildren().size()); - - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, activityThisWeek.getStart().getTime(), - activityThisWeek.getStart().getTime()); - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", - task1.getHandleIdentifier(), "originId", "navigatedRelation", - InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, activityThisWeek.getEnd().getTime(), - activityThisWeek.getEnd().getTime()); - - Calendar activityStart = Calendar.getInstance(); - Calendar activityEnd = Calendar.getInstance(); - activityEnd.add(Calendar.HOUR_OF_DAY, 1); - - InteractionEvent activityEvent = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, activityStart.getTime(), activityEnd.getTime()); - - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event1, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent, false); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(event2, false); - - long expectedTotalTime = (activityEnd.getTime().getTime() - activityStart.getTime().getTime()); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - } - - public void testElapsedSameAfterRead() { - // test that granularity of elapsed time map is retained after - // being re-read from disk - - Calendar startTime1 = Calendar.getInstance(); - startTime1.set(Calendar.MINUTE, 2); - startTime1.set(Calendar.SECOND, 0); - startTime1.set(Calendar.MILLISECOND, 0); - - Calendar endTime1 = Calendar.getInstance(); - endTime1.setTime(startTime1.getTime()); - endTime1.add(Calendar.MINUTE, 2); - - Calendar startTime2 = Calendar.getInstance(); - startTime2.add(Calendar.HOUR_OF_DAY, 1); - startTime2.set(Calendar.MINUTE, 2); - startTime2.set(Calendar.SECOND, 0); - startTime2.set(Calendar.MILLISECOND, 0); - - Calendar endTime2 = Calendar.getInstance(); - endTime2.setTime(startTime2.getTime()); - endTime2.add(Calendar.MINUTE, 3); - - Calendar startTime3 = Calendar.getInstance(); - startTime3.add(Calendar.HOUR_OF_DAY, 1); - startTime3.set(Calendar.MINUTE, 20); - startTime3.set(Calendar.SECOND, 0); - startTime3.set(Calendar.MILLISECOND, 0); - - Calendar endTime3 = Calendar.getInstance(); - endTime3.setTime(startTime3.getTime()); - endTime3.add(Calendar.MINUTE, 5); - - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - TasksUiPlugin.getTaskActivityManager().activateTask(task1); - InteractionContext metaContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - metaContext.reset(); - assertEquals(0, metaContext.getInteractionHistory().size()); - - InteractionEvent activityEvent1 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime1.getTime(), endTime1.getTime()); - - InteractionEvent activityEvent2 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime2.getTime(), endTime2.getTime()); - - InteractionEvent activityEvent3 = new InteractionEvent(InteractionEvent.Kind.ATTENTION, - InteractionContextManager.ACTIVITY_STRUCTUREKIND_TIMING, task1.getHandleIdentifier(), - InteractionContextManager.ACTIVITY_ORIGINID_WORKBENCH, null, - InteractionContextManager.ACTIVITY_DELTA_ADDED, 1f, startTime3.getTime(), endTime3.getTime()); - - metaContext.parseEvent(activityEvent1); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent1, false); - metaContext.parseEvent(activityEvent2); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent2, false); - metaContext.parseEvent(activityEvent3); - TasksUiPlugin.getTaskActivityMonitor().parseInteractionEvent(activityEvent3, false); - - assertEquals(1000 * 60 * 10, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - assertEquals(1000 * 60 * 2, activityManager.getElapsedTime(task1, startTime1, endTime1)); - assertEquals(1000 * 60 * 8, activityManager.getElapsedTime(task1, startTime2, endTime2)); - - TasksUi.getTaskActivityManager().deactivateActiveTask(); - assertEquals(4, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - TaskTestUtil.saveTaskList(); - ContextCorePlugin.getContextManager().saveActivityMetaContext(); - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - assertEquals(0, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - assertEquals(0, activityManager.getElapsedTime(task1)); - assertEquals(0, activityManager.getElapsedTime(task1, startTime1, endTime1)); - assertEquals(0, activityManager.getElapsedTime(task1, startTime2, endTime2)); - - ContextCorePlugin.getContextManager().loadActivityMetaContext(); - assertEquals(3, ContextCorePlugin.getContextManager().getActivityMetaContext().getInteractionHistory().size()); - TasksUiPlugin.getTaskActivityMonitor().reloadActivityTime(); - - startTime1 = Calendar.getInstance(); - startTime1.set(Calendar.MINUTE, 0); - startTime1.set(Calendar.SECOND, 0); - startTime1.set(Calendar.MILLISECOND, 0); - - assertEquals(1000 * 60 * 10, activityManager.getElapsedTime(task1)); - assertEquals(1000 * 60 * 2, activityManager.getElapsedTime(task1, startTime1, endTime1)); - assertEquals(1000 * 60 * 8, activityManager.getElapsedTime(task1, startTime2, endTime2)); - } - - /** - * @author Yuri Baburov (burchik@gmail.com) - * @author Rob Elves adaption to test LegacyActivityAdaptor - */ - public void testLegacyTimingMigration() { - AbstractTask task1 = new LocalTask("task 1", "Task 1"); - TasksUiPlugin.getTaskList().addTask(task1); - -// ScheduledTaskContainer thisWeekActivity = new ScheduledTaskContainer(TasksUiPlugin.getTaskActivityManager(), -// TaskActivityUtil.getCurrentWeek()); -// -// assertNotNull(thisWeekActivity); -// assertEquals(0, thisWeekActivity.getChildren().size()); -// thisWeekActivity.getStart().setTimeInMillis(1149490800000L); -// // Start -// // of -// // the -// // week -// // Jun 5 -// // 2006 -// // - Jun -// // 11 -// // 2006, -// // NOVST -// thisWeekActivity.getEnd().setTimeInMillis(1150095600000L); // End of -// // the week - - Date time1 = new Date(1150007053171L); // Sun Jun 11 13:24:13 NOVST - // 2006 - task 1 - activated - Date time2 = new Date(1150007263468L); // Sun Jun 11 13:27:43 NOVST - // 2006 - attention - - // deactivated - Date time3 = new Date(1150021535953L); // Sun Jun 11 17:25:35 NOVST - // 2006 - attention - activated - Date time4 = new Date(1150021658500L); // Sun Jun 11 17:27:38 NOVST - // 2006 - attention - - // deactivated - Date time5 = new Date(1150031089250L); // Sun Jun 11 20:04:49 NOVST - // 2006 - attention - activated - Date time6 = new Date(1150031111578L); // Sun Jun 11 20:05:11 NOVST - // 2006 - attention - - // deactivated - Date time7 = new Date(1150031111578L); // Sun Jun 11 20:05:11 NOVST - // 2006 - task 1 - deactivated - - String task1handle = task1.getHandleIdentifier(); - InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time1, time1); - - InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", "attention", - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time1, time2); - InteractionEvent event3 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", "attention", - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time3, time4); - InteractionEvent event5 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", "attention", - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time5, time6); - InteractionEvent event7 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, - "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, time7, time7); - - LegacyActivityAdaptor legacyAdaptor = new LegacyActivityAdaptor(); - TasksUiPlugin.getTaskActivityMonitor() - .parseInteractionEvent(legacyAdaptor.parseInteractionEvent(event1), false); - TasksUiPlugin.getTaskActivityMonitor() - .parseInteractionEvent(legacyAdaptor.parseInteractionEvent(event2), false); - TasksUiPlugin.getTaskActivityMonitor() - .parseInteractionEvent(legacyAdaptor.parseInteractionEvent(event3), false); - // TasksUiPlugin.getTaskListManager().parseInteractionEvent(event4); - TasksUiPlugin.getTaskActivityMonitor() - .parseInteractionEvent(legacyAdaptor.parseInteractionEvent(event5), false); - // TaskActivityManager.getInstance().parseInteractionEvent(event6); - TasksUiPlugin.getTaskActivityMonitor() - .parseInteractionEvent(legacyAdaptor.parseInteractionEvent(event7), false); - long expectedTotalTime = time6.getTime() - time5.getTime() + time4.getTime() - time3.getTime() - + time2.getTime() - time1.getTime(); - assertEquals(expectedTotalTime, TasksUiPlugin.getTaskActivityManager().getElapsedTime(task1)); - } - -// DND: OLD ACTIVITY TESTS - Will be using to test activity report/view -// public void testInterleavedActivation() { -// -// AbstractTask task1 = new LocalTask("task 1", "Task 1"); -// TasksUiPlugin.getTaskList().addTask(task1); -// -// ScheduledTaskContainer activityThisWeek = TasksUiPlugin.getTaskListManager().getActivityThisWeek(); -// assertNotNull(activityThisWeek); -// assertEquals(0, activityThisWeek.getChildren().size()); -// -// Calendar taskActivationStart = GregorianCalendar.getInstance(); -// taskActivationStart.add(Calendar.MILLISECOND, 15); -// Calendar taskActivationStop = GregorianCalendar.getInstance(); -// taskActivationStop.add(Calendar.MILLISECOND, 25); -// -// Calendar inactivityStart1 = GregorianCalendar.getInstance(); -// inactivityStart1.add(Calendar.MILLISECOND, 5); -// Calendar inactivityStop1 = GregorianCalendar.getInstance(); -// inactivityStop1.add(Calendar.MILLISECOND, 10); -// -// Calendar inactivityStart2 = GregorianCalendar.getInstance(); -// inactivityStart2.add(Calendar.MILLISECOND, 18); -// Calendar inactivityStop2 = GregorianCalendar.getInstance(); -// inactivityStop2.add(Calendar.MILLISECOND, 25); -// -// InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, taskActivationStart.getTime(), -// taskActivationStart.getTime()); -// InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, taskActivationStop.getTime(), -// taskActivationStop.getTime()); -// -// InteractionEvent inactivityEvent1 = new InteractionEvent(InteractionEvent.Kind.COMMAND, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, inactivityStart1.getTime(), -// inactivityStop1.getTime()); -// InteractionEvent inactivityEvent2 = new InteractionEvent(InteractionEvent.Kind.COMMAND, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, inactivityStart2.getTime(), -// inactivityStop2.getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(inactivityEvent1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(inactivityEvent2); -// assertEquals(1, activityThisWeek.getChildren().size()); -// -// // long expectedTotalTime = taskActivationStop.getTimeInMillis() - -// // taskActivationStart.getTimeInMillis(); -// long expectedTotalTime = 0; -// assertEquals(expectedTotalTime, activityThisWeek.getTotalElapsed()); -// assertEquals(expectedTotalTime, activityThisWeek.getElapsed(new ScheduledTaskDelegate(activityThisWeek, task1, -// null, null))); -// } -// -// public void testInterleavedActivation2() { -// -// AbstractTask task1 = new LocalTask("task 1", "Task 1"); -// TasksUiPlugin.getTaskList().addTask(task1); -// -// ScheduledTaskContainer activityThisWeek = TasksUiPlugin.getTaskListManager().getActivityThisWeek(); -// assertNotNull(activityThisWeek); -// assertEquals(0, activityThisWeek.getChildren().size()); -// -// Calendar taskActivationStart = GregorianCalendar.getInstance(); -// taskActivationStart.add(Calendar.MILLISECOND, 10); -// Calendar taskActivationStop = GregorianCalendar.getInstance(); -// taskActivationStop.add(Calendar.MILLISECOND, 25); -// -// Calendar inactivityStart = GregorianCalendar.getInstance(); -// inactivityStart.add(Calendar.MILLISECOND, 15); -// Calendar inactivityStop = GregorianCalendar.getInstance(); -// inactivityStop.add(Calendar.MILLISECOND, 20); -// -// InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, taskActivationStart.getTime(), -// taskActivationStart.getTime()); -// InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, taskActivationStop.getTime(), -// taskActivationStop.getTime()); -// -// InteractionEvent inactivityEvent1 = new InteractionEvent(InteractionEvent.Kind.COMMAND, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ADDED, 2f, inactivityStart.getTime(), -// inactivityStop.getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(inactivityEvent1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(inactivityEvent1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// -// assertEquals(1, activityThisWeek.getChildren().size()); -// -// long expectedTotalTime = 2 * (inactivityStart.getTimeInMillis() - taskActivationStart.getTimeInMillis()); -// assertEquals(expectedTotalTime, activityThisWeek.getTotalElapsed()); -// assertEquals(expectedTotalTime, activityThisWeek.getElapsed(new ScheduledTaskDelegate(activityThisWeek, task1, -// null, null))); -// } -// -// -// /** -// * Some 'attention' events when all tasks are inactive -// * -// * @author Yuri Baburov (burchik@gmail.com) -// */ -// public void testTaskListManagerActivity2() { -// AbstractTask task1 = new LocalTask("task 1", "Task 1"); -// TasksUiPlugin.getTaskList().addTask(task1); -// ScheduledTaskContainer thisWeekActivity = TasksUiPlugin.getTaskListManager().getActivityThisWeek(); -// assertNotNull(thisWeekActivity); -// assertEquals(0, thisWeekActivity.getChildren().size()); -// assertEquals(0, thisWeekActivity.getTotalElapsed()); -// thisWeekActivity.getStart().setTimeInMillis(1149490800000L); // Start -// // of -// // the -// // week -// // Jun 5 -// // 2006 -// // - Jun -// // 11 -// // 2006, -// // NOVST -// thisWeekActivity.getEnd().setTimeInMillis(1150095600000L); // End of -// // the week -// -// Date time1 = new Date(1149911820812L); // Sat Jun 10 10:57:00 NOVST -// // 2006 - task 1 - activated -// Date time2 = new Date(1149911820812L); // Sat Jun 10 10:57:00 NOVST -// // 2006 - task 1 - deactivated -// Date time3 = new Date(1149911840812L); // Sat Jun 10 10:57:20 NOVST -// // 2006 - attention - -// // deactivated -// Date time4 = new Date(1149911941765L); // Sat Jun 10 10:59:01 NOVST -// // 2006 - attention - activated -// Date time5 = new Date(1149911948953L); // Sat Jun 10 10:59:08 NOVST -// // 2006 - task 1 - activated -// Date time6 = new Date(1149911988781L); // Sat Jun 10 10:59:48 NOVST -// // 2006 - task 1 - deactivated -// -// String task1handle = task1.getHandleIdentifier(); -// InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time1, time1); -// InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, time2, time2); -// InteractionEvent event3 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", "attention", -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, time3, time3); -// InteractionEvent event4 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", "attention", -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time4, time4); -// InteractionEvent event5 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, time5, time5); -// InteractionEvent event6 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task1handle, -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, time6, time6); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event3); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event4); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event5); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event6); -// assertEquals(1, thisWeekActivity.getChildren().size()); -// long expectedTotalTime = 0;// time6.getTime() - time5.getTime() + -// // time2.getTime() - time1.getTime(); -// assertEquals(expectedTotalTime, thisWeekActivity.getTotalElapsed()); -// assertEquals(expectedTotalTime, TasksUiPlugin.getTaskListManager().getElapsedTime(task1)); -// assertEquals(expectedTotalTime, thisWeekActivity.getElapsed(new ScheduledTaskDelegate(thisWeekActivity, task1, -// null, null))); -// } -// -// public void testTaskListManagerActivity() { -// -// AbstractTask task1 = new LocalTask("task 1", "Task 1"); -// AbstractTask task2 = new LocalTask("task 2", "Task 2"); -// TasksUiPlugin.getTaskList().addTask(task1); -// TasksUiPlugin.getTaskList().addTask(task2); -// -// // test this week -// ScheduledTaskContainer thisWeekActivity = TasksUiPlugin.getTaskListManager().getActivityThisWeek(); -// assertNotNull(thisWeekActivity); -// assertEquals(0, thisWeekActivity.getChildren().size()); -// assertEquals(0, thisWeekActivity.getTotalElapsed()); -// Calendar thisWeekCalendarStart = GregorianCalendar.getInstance(); -// thisWeekCalendarStart.setTime(thisWeekActivity.getStart().getTime()); -// Calendar thisWeekCalendarStop = GregorianCalendar.getInstance(); -// thisWeekCalendarStop.setTime(thisWeekActivity.getStart().getTime()); -// thisWeekCalendarStop.add(Calendar.MILLISECOND, 2); -// assertTrue(thisWeekActivity.includes(thisWeekCalendarStart)); -// -// InteractionEvent event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, thisWeekCalendarStart.getTime(), -// thisWeekCalendarStart.getTime()); -// InteractionEvent event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task1.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, thisWeekCalendarStop.getTime(), -// thisWeekCalendarStop.getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// assertEquals(1, thisWeekActivity.getChildren().size()); -// assertEquals(0, thisWeekActivity.getTotalElapsed()); -// // assertEquals(thisWeekCalendarStop.getTime().getTime() - -// // thisWeekCalendarStart.getTime().getTime(), -// // thisWeekActivity.getTotalElapsed()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// assertEquals(1, thisWeekActivity.getChildren().size()); -// // assertEquals(2 * (thisWeekCalendarStop.getTime().getTime() - -// // thisWeekCalendarStart.getTime().getTime()), -// // thisWeekActivity.getTotalElapsed()); -// // assertEquals(2 * (thisWeekCalendarStop.getTime().getTime() - -// // thisWeekCalendarStart.getTime().getTime()), -// // thisWeekActivity.getElapsed(new -// // DateRangeActivityDelegate(thisWeekActivity, task1, null, null))); -// -// // multiple tasks in category -// event1 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task2.getHandleIdentifier(), -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, -// thisWeekCalendarStart.getTime(), thisWeekCalendarStart.getTime()); -// event2 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", task2.getHandleIdentifier(), -// "originId", "navigatedRelation", InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, -// thisWeekCalendarStop.getTime(), thisWeekCalendarStop.getTime()); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event1); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event2); -// assertEquals(2, thisWeekActivity.getChildren().size()); -// -// // test Past -// ScheduledTaskContainer pastActivity = TasksUiPlugin.getTaskListManager().getActivityPast(); -// assertNotNull(pastActivity); -// assertEquals(0, pastActivity.getChildren().size()); -// -// InteractionEvent event3 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, pastActivity.getStart().getTime(), -// pastActivity.getStart().getTime()); -// InteractionEvent event4 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, pastActivity.getEnd().getTime(), -// pastActivity.getEnd().getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event3); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event4); -// assertEquals(1, pastActivity.getChildren().size()); -// -// // test Future -// ScheduledTaskContainer futureActivity = TasksUiPlugin.getTaskListManager().getActivityFuture(); -// assertNotNull(futureActivity); -// assertEquals(0, futureActivity.getChildren().size()); -// -// InteractionEvent event5 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, futureActivity.getStart().getTime(), -// futureActivity.getStart().getTime()); -// InteractionEvent event6 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, futureActivity.getEnd().getTime(), -// futureActivity.getEnd().getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event5); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event6); -// // No longer adding activity to future bins (days of week, next week, or -// // future) -// assertEquals(0, futureActivity.getChildren().size()); -// -// // test Next week activity -// ScheduledTaskContainer activityNextWeek = TasksUiPlugin.getTaskListManager().getActivityNextWeek(); -// assertNotNull(activityNextWeek); -// assertEquals(0, activityNextWeek.getChildren().size()); -// -// InteractionEvent event7 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, activityNextWeek.getStart().getTime(), -// activityNextWeek.getStart().getTime()); -// InteractionEvent event8 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, activityNextWeek.getEnd().getTime(), -// activityNextWeek.getEnd().getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event7); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event8); -// // No longer adding activity to future bins (days of week, next week, or -// // future) -// assertEquals(0, activityNextWeek.getChildren().size()); -// -// // test Previous week activity -// ScheduledTaskContainer activityPreviousWeek = TasksUiPlugin.getTaskListManager().getActivityPrevious(); -// assertNotNull(activityPreviousWeek); -// assertEquals(0, activityPreviousWeek.getChildren().size()); -// -// InteractionEvent event9 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_ACTIVATED, 2f, activityPreviousWeek.getStart().getTime(), -// activityPreviousWeek.getStart().getTime()); -// InteractionEvent event10 = new InteractionEvent(InteractionEvent.Kind.SELECTION, "structureKind", -// task2.getHandleIdentifier(), "originId", "navigatedRelation", -// InteractionContextManager.ACTIVITY_DELTA_DEACTIVATED, 2f, activityPreviousWeek.getEnd().getTime(), -// activityPreviousWeek.getEnd().getTime()); -// -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event9); -// TasksUiPlugin.getTaskListManager().parseInteractionEvent(event10); -// assertEquals(1, activityPreviousWeek.getChildren().size()); -// } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskAttachmentTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskAttachmentTest.java deleted file mode 100644 index b0e134b39..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskAttachmentTest.java +++ /dev/null @@ -1,112 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.RandomAccessFile; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.Status; -import org.eclipse.mylyn.internal.tasks.core.TaskAttachment; -import org.eclipse.mylyn.internal.tasks.core.TaskRepositoryManager; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.CopyAttachmentToClipboardJob; -import org.eclipse.mylyn.internal.tasks.ui.util.DownloadAttachmentJob; -import org.eclipse.mylyn.tasks.core.ITaskAttachment; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.tests.connector.MockAttachmentHandler; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.swt.dnd.Clipboard; -import org.eclipse.swt.dnd.TextTransfer; -import org.eclipse.ui.PlatformUI; - -/** - * Test task attachment jobs. - * - * @author Steffen Pingel - */ -public class TaskAttachmentTest extends TestCase { - - private TaskRepositoryManager manager; - - private MockRepositoryConnector connector; - - private MockAttachmentHandler attachmentHandler; - - private TaskRepository repository; - - private ITaskAttachment attachment; - - @Override - protected void setUp() throws Exception { - super.setUp(); - - manager = TasksUiPlugin.getRepositoryManager(); - - repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL); - manager.addRepository(repository); - - attachmentHandler = new MockAttachmentHandler(); - - connector = new MockRepositoryConnector(); - connector.setTaskAttachmentHandler(attachmentHandler); - manager.addRepositoryConnector(connector); - - TaskData taskData = new TaskData(new TaskAttributeMapper(repository), MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, "1"); - attachment = new TaskAttachment(repository, new MockTask("1"), taskData.getRoot().createAttribute("attachment")); - } - - @Override - protected void tearDown() throws Exception { - manager.removeRepository(repository, TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } - - public void testCopyToClipboardAction() throws Exception { - String expected = "attachment content"; - attachmentHandler.setAttachmentData(expected.getBytes()); - - CopyAttachmentToClipboardJob job = new CopyAttachmentToClipboardJob(attachment); - job.schedule(); - job.join(); - - Clipboard clipboard = new Clipboard(PlatformUI.getWorkbench().getDisplay()); - assertEquals(expected, clipboard.getContents(TextTransfer.getInstance())); - } - - public void testDownloadAttachmentJob() throws Exception { - File file = File.createTempFile("mylyn", null); - file.deleteOnExit(); - - String expected = "attachment\ncontent"; - attachmentHandler.setAttachmentData(expected.getBytes()); - - DownloadAttachmentJob job = new DownloadAttachmentJob(attachment, file); - job.schedule(); - job.join(); - - assertEquals(Status.OK_STATUS, job.getResult()); - - RandomAccessFile raf = new RandomAccessFile(file, "r"); - byte[] data = new byte[expected.getBytes().length]; - try { - raf.readFully(data); - } finally { - raf.close(); - } - assertEquals(expected, new String(data)); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskContainerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskContainerTest.java deleted file mode 100644 index e65783e0c..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskContainerTest.java +++ /dev/null @@ -1,39 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Steffen Pingel - */ -public class TaskContainerTest extends TestCase { - - public void testGetChildren() { - MockTask task1 = new MockTask("1"); - MockTask task2 = new MockTask("2"); - MockTask task3 = new MockTask("3"); - MockTask task4 = new MockTask("4"); - - task1.internalAddChild(task2); - task2.internalAddChild(task3); - task3.internalAddChild(task1); - task3.internalAddChild(task4); - - assertTrue(task1.contains(task4.getHandleIdentifier())); - assertTrue(task3.contains(task4.getHandleIdentifier())); - assertFalse(task3.contains("abc")); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataExportTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataExportTest.java deleted file mode 100644 index 1b26119a7..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataExportTest.java +++ /dev/null @@ -1,169 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.FileInputStream; -import java.util.ArrayList; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.mylyn.commons.tests.support.CommonsTestUtil; -import org.eclipse.mylyn.context.tests.AbstractContextTest; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TaskDataExportOperation; -import org.eclipse.mylyn.internal.tasks.ui.util.TaskDataSnapshotOperation; -import org.eclipse.mylyn.internal.tasks.ui.wizards.TaskDataExportWizard; -import org.eclipse.mylyn.internal.tasks.ui.wizards.TaskDataExportWizardPage; -import org.eclipse.swt.widgets.Shell; - -/** - * Test case for the Task Export Wizard - * - * @author Wesley Coelho - * @author Mik Kersten (fixes) - */ -public class TaskDataExportTest extends AbstractContextTest { - - private TaskDataExportWizard wizard; - - private TaskDataExportWizardPage wizardPage; - - private File destinationDir; - - @Override - protected void setUp() throws Exception { - super.setUp(); - - // Create the export wizard - wizard = new TaskDataExportWizard(); - wizard.addPages(); - wizard.createPageControls(new Shell()); - wizardPage = (TaskDataExportWizardPage) wizard.getPage("org.eclipse.mylyn.tasklist.exportPage"); - assertNotNull(wizardPage); - - // Create test export destination directory - File mylynFolder = new File(TasksUiPlugin.getDefault().getDataDirectory()); - destinationDir = new File(mylynFolder.getParent(), "TestDir"); - CommonsTestUtil.deleteFolder(destinationDir); - destinationDir.mkdir(); - - // Create folder/file structure - File tasklist = new File(mylynFolder, "tasks.xml.zip"); - if (!tasklist.exists()) { - assertTrue(tasklist.createNewFile()); - } - File hidden = new File(mylynFolder, ".hidden"); - if (!hidden.exists()) { - assertTrue(hidden.createNewFile()); - } - File tasksandstuff = new File(mylynFolder, "tasksandstuff"); - if (!tasksandstuff.exists()) { - assertTrue(tasksandstuff.mkdir()); - } - File backup = new File(mylynFolder, "backup"); - if (!backup.exists()) { - assertTrue(backup.mkdir()); - } - File tasksFile = new File(tasksandstuff, "file1.xml.zip"); - if (!tasksFile.exists()) { - assertTrue(tasksFile.createNewFile()); - } - - File tasksSubDir = new File(tasksandstuff, "sub"); - if (!tasksSubDir.exists()) { - assertTrue(tasksSubDir.mkdir()); - } - - File tasksSubDirFile = new File(tasksSubDir, "file2.xml.zip"); - if (!tasksSubDirFile.exists()) { - assertTrue(tasksSubDirFile.createNewFile()); - } - - } - - @Override - protected void tearDown() throws Exception { - wizard.dispose(); - wizardPage.dispose(); - CommonsTestUtil.deleteFolder(destinationDir); - File mylynFolder = new File(TasksUiPlugin.getDefault().getDataDirectory()); - // Create folder/file structure - File tasklist = new File(mylynFolder, "tasks.xml.zip"); - tasklist.delete(); - File hidden = new File(mylynFolder, ".hidden"); - hidden.delete(); - File tasks = new File(mylynFolder, "tasksandstuff"); - File tasksSubDir = new File(tasks, "sub"); - File backup = new File(mylynFolder, "backup"); - CommonsTestUtil.deleteFolder(backup); - CommonsTestUtil.deleteFolder(tasksSubDir); - CommonsTestUtil.deleteFolder(tasks); - super.tearDown(); - } - - /** - * Tests the wizard when it has been asked to export all task data to a zip file. - */ - public void testExportAllToZip() throws Exception { - // set parameters in the wizard to simulate a user setting them and clicking "Finish" - wizardPage.setDestinationDirectory(destinationDir.getPath()); - wizard.performFinish(); - - // check that the task list file was exported - File[] files = destinationDir.listFiles(); - assertEquals(1, files.length); - ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(files[0])); - try { - ArrayList<String> entries = new ArrayList<String>(); - ZipEntry entry = zipInputStream.getNextEntry(); - while (entry != null) { - entries.add(entry.getName()); - entry = zipInputStream.getNextEntry(); - } - assertFalse(entries.contains(".hidden")); - assertTrue(entries.contains("tasks.xml.zip")); - assertTrue(entries.contains("tasksandstuff/file1.xml.zip")); - assertTrue(entries.contains("tasksandstuff/sub/file2.xml.zip")); - assertFalse(entries.contains("backup")); - } finally { - zipInputStream.close(); - } - } - - public void testSnapshot() throws Exception { - final TaskDataExportOperation backupJob = new TaskDataSnapshotOperation(destinationDir.getPath(), - "testBackup.zip"); - backupJob.run(new NullProgressMonitor()); - // check that the task list file was exported - File[] files = destinationDir.listFiles(); - assertEquals(1, files.length); - ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(files[0])); - try { - ArrayList<String> entries = new ArrayList<String>(); - ZipEntry entry = zipInputStream.getNextEntry(); - while (entry != null) { - entries.add(entry.getName()); - entry = zipInputStream.getNextEntry(); - } - assertFalse(entries.contains(".hidden")); - assertTrue(entries.contains("tasks.xml.zip")); - assertTrue(entries.contains("repositories.xml.zip")); - assertTrue(entries.contains("contexts/activity.xml.zip")); - assertFalse(entries.contains("tasks")); - assertEquals(3, entries.size()); - } finally { - zipInputStream.close(); - } - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataImportTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataImportTest.java deleted file mode 100644 index 90ed04c0d..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataImportTest.java +++ /dev/null @@ -1,124 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.util.Collection; - -import org.eclipse.mylyn.context.tests.AbstractContextTest; -import org.eclipse.mylyn.internal.context.core.ContextCorePlugin; -import org.eclipse.mylyn.internal.context.core.InteractionContext; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.wizards.TaskDataImportWizard; -import org.eclipse.mylyn.internal.tasks.ui.wizards.TaskDataImportWizardPage; -import org.eclipse.swt.widgets.Shell; - -/** - * Test case for the Task Import Wizard - * - * @author Rob Elves - */ -public class TaskDataImportTest extends AbstractContextTest { - - private TaskDataImportWizard wizard = null; - - private TaskDataImportWizardPage wizardPage = null; - - private final String sourceZipPath = "testdata/taskdataimporttest/mylardata-2007-01-19.zip"; - - private File sourceZipFile = null; - - @Override - protected void setUp() throws Exception { - super.setUp(); - - // Create the import wizard - wizard = new TaskDataImportWizard(); - wizard.addPages(); - wizard.createPageControls(new Shell()); - wizardPage = (TaskDataImportWizardPage) wizard.getPage("org.eclipse.mylyn.tasklist.importPage"); - assertNotNull(wizardPage); - - TaskTestUtil.resetTaskListAndRepositories(); - - sourceZipFile = TaskTestUtil.getLocalFile(sourceZipPath); - assertTrue(sourceZipFile.exists()); - - ContextCorePlugin.getContextManager().getActivityMetaContext().reset(); - } - - @Override - protected void tearDown() throws Exception { - wizard.dispose(); - wizardPage.dispose(); - ContextCorePlugin.getContextManager().resetActivityMetaContext(); - TasksUiPlugin.getRepositoryManager().clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - TaskTestUtil.resetTaskList(); - super.tearDown(); - } - - /** - * Tests the wizard when it has been asked to import all task data from a zip file - */ - public void testImportRepositoriesZip() { - TaskList taskList = TasksUiPlugin.getTaskList(); - InteractionContext historyContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertNotNull(taskList); - assertNotNull(historyContext); - assertTrue(taskList.getAllTasks().size() == 0); - assertTrue(historyContext.getInteractionHistory().size() == 0); - - wizardPage.setSource(true, sourceZipFile.getPath()); - wizard.performFinish(); - - Collection<AbstractTask> tasks = taskList.getAllTasks(); - assertEquals(2, tasks.size()); - for (AbstractTask task : tasks) { - assertTrue(ContextCorePlugin.getContextManager().hasContext(task.getHandleIdentifier())); - } - historyContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertNotNull(historyContext); - assertTrue(historyContext.getInteractionHistory().size() > 0); - assertTrue(TasksUiPlugin.getRepositoryManager().getAllRepositories().size() > 2); - } - - public void testImportOverwritesAllTasks() { - TaskList taskList = TasksUiPlugin.getTaskList(); - InteractionContext historyContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertNotNull(taskList); - assertNotNull(historyContext); - assertTrue(taskList.getAllTasks().size() == 0); - assertTrue(historyContext.getInteractionHistory().size() == 0); - - AbstractTask task1 = new LocalTask("999", "label"); - taskList.addTask(task1); - Collection<AbstractTask> tasks = taskList.getAllTasks(); - assertEquals(1, tasks.size()); - - wizardPage.setSource(true, sourceZipFile.getPath()); - wizard.performFinish(); - - tasks = taskList.getAllTasks(); - assertEquals(2, tasks.size()); - assertTrue(!taskList.getAllTasks().contains(task1)); - for (AbstractTask task : tasks) { - assertTrue(ContextCorePlugin.getContextManager().hasContext(task.getHandleIdentifier())); - } - historyContext = ContextCorePlugin.getContextManager().getActivityMetaContext(); - assertNotNull(historyContext); - assertTrue(historyContext.getInteractionHistory().size() > 0); - assertTrue(TasksUiPlugin.getRepositoryManager().getAllRepositories().size() > 2); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataManagerTest.java deleted file mode 100644 index 8eda90899..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataManagerTest.java +++ /dev/null @@ -1,293 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.internal.tasks.core.data.TaskDataManager; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.ITask.SynchronizationState; -import org.eclipse.mylyn.tasks.core.data.TaskData; - -/** - * @author Rob Elves - * @author Steffen Pingel - */ -public class TaskDataManagerTest extends TestCase { - - private TaskDataManager taskDataManger; - - @Override - protected void setUp() throws Exception { - taskDataManger = TasksUiPlugin.getTaskDataManager(); - } - - public void testPutUpdatedTaskData() throws Exception { - TaskRepository taskRepository = TaskTestUtil.createMockRepository(); - TaskTask task = TaskTestUtil.createMockTask("1"); - task.setSynchronizationState(SynchronizationState.SYNCHRONIZED); - TaskData taskData = TaskTestUtil.createTaskData(taskRepository, "1"); - taskDataManger.putUpdatedTaskData(task, taskData, true, null); - assertEquals(SynchronizationState.SYNCHRONIZED, task.getSynchronizationState()); - } - -// public void testHasIncomingDateComparison() { -// final Stack<Date> dates = new Stack<Date>(); -// MockTask task = new MockTask(MOCCK_ID); -// RepositoryTaskData taskData = new RepositoryTaskData(new MockAttributeFactory() { -// private static final long serialVersionUID = 1L; -// -// @Override -// public Date getDateForAttributeType(String attributeKey, String dateString) { -// return dates.pop(); -// } -// }, connector.getConnectorKind(), MockRepositoryConnector.REPOSITORY_URL, MOCCK_ID); -// task.setLastReadTimeStamp("never"); -// -// assertTrue(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// -// // strings and dates mismatch -// dates.push(new Date(1)); -// dates.push(new Date(2)); -// taskData.setAttributeValue(RepositoryTaskAttribute.DATE_MODIFIED, "2006-06-21 15:29:39"); -// assertTrue(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// -// dates.push(null); -// dates.push(new Date(2)); -// assertTrue(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// -// dates.push(new Date()); -// dates.push(null); -// assertTrue(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// -// // strings mismatch but dates match -// dates.push(new Date(1)); -// dates.push(new Date(1)); -// assertFalse(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// -// // strings match, dates should not be checked -// task.setLastReadTimeStamp("2006-06-21 15:29:39"); -// assertFalse(TasksUiPlugin.getTaskDataManager().checkHasIncoming(task, taskData)); -// } - -// public void testIncomingToIncoming() { - /* - * - Synchronize task with incoming changes - Make another change using - * browser - Open report in tasklist (editor opens with old 'new' data - * and background sync occurs) - Incoming status set again on task due - * to 2nd occurrence of new incoming data - */ - -// // Test unforced -// AbstractTask task = primeTaskAndRepository(SynchronizationState.INCOMING, SynchronizationState.INCOMING); -// RepositoryTaskData taskData = TasksUiPlugin.getTaskDataStorageManager().getNewTaskData(task.getRepositoryUrl(), -// task.getTaskId()); -// assertEquals(DATE_STAMP_1, task.getLastReadTimeStamp()); -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// assertEquals(DATE_STAMP_2, newData.getLastModified()); -// TasksUiPlugin.getTaskDataManager().saveIncoming(task, newData, false); -// assertEquals(DATE_STAMP_1, task.getLastReadTimeStamp()); -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// // TasksUiPlugin.getSynchronizationManager().setTaskRead(task, true); -// // assertEquals(DATE_STAMP_2, task.getLastSyncDateStamp()); -// // and again... -// -// RepositoryTaskData taskData3 = new RepositoryTaskData(new MockAttributeFactory(), connector.getConnectorKind(), -// MockRepositoryConnector.REPOSITORY_URL, "1"); -// taskData3.setAttributeValue(RepositoryTaskAttribute.DATE_MODIFIED, DATE_STAMP_3); -// TasksUiPlugin.getTaskDataManager().saveIncoming(task, taskData3, false); -// // last modified stamp not updated until user synchronizes (newdata == -// // olddata) -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// assertEquals(DATE_STAMP_1, task.getLastReadTimeStamp()); -// taskData = TasksUiPlugin.getTaskDataStorageManager().getNewTaskData(task.getRepositoryUrl(), task.getTaskId()); -// assertEquals(DATE_STAMP_3, taskData.getLastModified()); -// -// // Should keep INCOMING state state since new data has same date samp -// // and sych is not forced. -// TasksUiPlugin.getTaskDataManager().saveIncoming(task, taskData3, false); -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// assertEquals(DATE_STAMP_1, task.getLastReadTimeStamp()); -// taskData = TasksUiPlugin.getTaskDataStorageManager().getNewTaskData(task.getRepositoryUrl(), task.getTaskId()); -// assertEquals(DATE_STAMP_3, taskData.getLastModified()); -// } - // public void testIncomingToSynchronizedWithVoidSyncTime() { - // // IF the last sync time (modified timestamp on task) is null, this can - // result - // // in the editor refresh/repoen going into an infinite loops since the - // task never - // // gets to a synchronized state if the last mod time isn't set. It is now - // being set - // // if found to be null. - // AbstractTask task = - // primeTaskAndRepository(SynchronizationState.INCOMING, - // SynchronizationState.SYNCHRONIZED); - // assertEquals(DATE_STAMP_1, task.getLastSyncDateStamp()); - // task.setLastSyncDateStamp(null); - // TasksUiPlugin.getSynchronizationManager().updateOfflineState(task, - // newData, false); - // assertEquals(SynchronizationState.INCOMING, task.getSyncState()); - // assertEquals(DATE_STAMP_1, task.getLastSyncDateStamp()); - // - // TasksUiPlugin.getSynchronizationManager().updateOfflineState(task, - // newData, false); - // assertEquals(SynchronizationState.SYNCHRONIZED, task.getSyncState()); - // assertEquals(DATE_STAMP_1, task.getLastSyncDateStamp()); - // } -// public void testMarkRead() { -// AbstractTask task = primeTaskAndRepository(SynchronizationState.INCOMING, SynchronizationState.SYNCHRONIZED); -// task.setLastReadTimeStamp(null); -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// TasksUiPlugin.getTaskDataManager().setTaskRead(task, true); -// assertEquals(DATE_STAMP_1, task.getLastReadTimeStamp()); -// assertEquals(SynchronizationState.SYNCHRONIZED, task.getSynchronizationState()); -// } -// -// public void testMarkUnread() { -// AbstractTask task = primeTaskAndRepository(SynchronizationState.SYNCHRONIZED, SynchronizationState.SYNCHRONIZED); -// task.setLastReadTimeStamp(null); -// assertEquals(SynchronizationState.SYNCHRONIZED, task.getSynchronizationState()); -// TasksUiPlugin.getTaskDataManager().setTaskRead(task, false); -// assertEquals(SynchronizationState.INCOMING, task.getSynchronizationState()); -// } -// public void testClearOutgoing() { -// AbstractTask task = primeTaskAndRepository(SynchronizationState.SYNCHRONIZED, SynchronizationState.SYNCHRONIZED); -// RepositoryTaskData taskData1 = new RepositoryTaskData(new MockAttributeFactory(), -// MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL, "1"); -// TasksUiPlugin.getTaskDataStorageManager().setNewTaskData(taskData1); -// taskData1 = TasksUiPlugin.getTaskDataStorageManager() -// .getEditableCopy(task.getRepositoryUrl(), task.getTaskId()); -// -// taskData1.setNewComment("Testing"); -// Set<RepositoryTaskAttribute> edits = new HashSet<RepositoryTaskAttribute>(); -// edits.add(taskData1.getAttribute(RepositoryTaskAttribute.COMMENT_NEW)); -// TasksUiPlugin.getTaskDataStorageManager().saveEdits(task.getRepositoryUrl(), task.getTaskId(), edits); -// -// RepositoryTaskData editedData = TasksUiPlugin.getTaskDataStorageManager().getEditableCopy( -// task.getRepositoryUrl(), task.getTaskId()); -// assertEquals("Testing", editedData.getNewComment()); -// -// TasksUiPlugin.getTaskDataManager().discardOutgoing(task); -// -// assertTrue(task.getSynchronizationState().equals(SynchronizationState.SYNCHRONIZED)); -// RepositoryTaskData taskData = TasksUiPlugin.getTaskDataStorageManager().getEditableCopy( -// task.getRepositoryUrl(), task.getTaskId()); -// assertEquals("", taskData.getNewComment()); -// -// } -// -// public void testMarkTaskRead() { -// // TODO reimplement -// String repositoryUrl = "http://mylyn.eclipse.org/bugs222"; -// MockTask task1 = new MockTask(repositoryUrl, "1"); -// MockTask task2 = new MockTask(repositoryUrl, "2"); -// task1.setSynchronizationState(SynchronizationState.INCOMING); -// task2.setSynchronizationState(SynchronizationState.INCOMING); -// List<ITaskElement> elements = new ArrayList<ITaskElement>(); -// elements.add(task1); -// elements.add(task2); -// MarkTaskReadAction readAction = new MarkTaskReadAction(elements); -// readAction.run(); -// assertEquals(SynchronizationState.SYNCHRONIZED, task1.getSynchronizationState()); -// assertEquals(SynchronizationState.SYNCHRONIZED, task2.getSynchronizationState()); -// -// taskList.reset(); -// MockTask hit1 = new MockTask("1"); -// MockTask hit2 = new MockTask("2"); -// MockRepositoryQuery query = new MockRepositoryQuery("summary"); -// taskList.addQuery(query); -// taskList.addTask(hit1, query); -// taskList.addTask(hit2, query); -// -// elements.clear(); -// elements.add(query); -// readAction = new MarkTaskReadAction(elements); -// readAction.run(); -// assertEquals(2, query.getChildren().size()); -// for (ITaskElement element : query.getChildren()) { -// if (element instanceof MockTask) { -// MockTask mockTask = (MockTask) element; -// assertEquals(SynchronizationState.SYNCHRONIZED, mockTask.getSynchronizationState()); -// } -// } -// } -// public void testMarkUnRead() { - // TODO reimplement -// String repositoryUrl = "http://mylyn.eclipse.org/bugs222"; -// MockTask task1 = new MockTask(repositoryUrl, "1"); -// MockTask task2 = new MockTask(repositoryUrl, "2"); -// assertEquals(SynchronizationState.SYNCHRONIZED, task1.getSynchronizationState()); -// assertEquals(SynchronizationState.SYNCHRONIZED, task2.getSynchronizationState()); -// List<ITaskElement> elements = new ArrayList<ITaskElement>(); -// elements.add(task1); -// elements.add(task2); -// MarkTaskUnreadAction unreadAction = new MarkTaskUnreadAction(elements); -// unreadAction.run(); -// assertEquals(SynchronizationState.INCOMING, task1.getSynchronizationState()); -// assertEquals(SynchronizationState.INCOMING, task2.getSynchronizationState()); -// -// taskList.reset(); -// MockTask hit1 = new MockTask("1"); -// MockTask hit2 = new MockTask("2"); -// MockRepositoryQuery query = new MockRepositoryQuery("summary"); -// taskList.addQuery(query); -// taskList.addTask(hit1, query); -// taskList.addTask(hit2, query); -// -// elements.clear(); -// elements.add(query); -// MarkTaskReadAction readAction = new MarkTaskReadAction(elements); -// readAction.run(); -// assertEquals(2, query.getChildren().size()); -// for (ITaskElement element : query.getChildren()) { -// if (element instanceof MockTask) { -// MockTask mockTask = (MockTask) element; -// assertEquals(SynchronizationState.SYNCHRONIZED, mockTask.getSynchronizationState()); -// } else { -// fail(); -// } -// } -// -// unreadAction = new MarkTaskUnreadAction(elements); -// unreadAction.run(); -// assertEquals(2, query.getChildren().size()); -// for (ITaskElement element : query.getChildren()) { -// if (element instanceof MockTask) { -// MockTask mockTask = (MockTask) element; -// assertEquals(SynchronizationState.INCOMING, mockTask.getSynchronizationState()); -// } else { -// fail(); -// } -// } -// } -// public void testQueryHitsNotDropped() { -// MockTask task1 = new MockTask("1"); -// MockTask task2 = new MockTask("2"); -// task1.setLastReadTimeStamp("today"); -// task2.setLastReadTimeStamp("today"); -// MockRepositoryQuery query = new MockRepositoryQuery("summary"); -// taskList.addQuery(query); -// taskList.addTask(task1, query); -// taskList.addTask(task2, query); -// //assertEquals(0, taskList.getArchiveContainer().getChildren().size()); -// assertEquals(2, query.getChildren().size()); -// TaskRepository repository = TasksUiPlugin.getRepositoryManager().getRepository( -// MockRepositoryConnector.REPOSITORY_URL); -// Set<RepositoryQuery> queries = new HashSet<RepositoryQuery>(); -// queries.add(query); -// TasksUiInternal.synchronizeQueries(new MockRepositoryConnector(), repository, queries, null, true); -// //assertEquals(2, taskList.getArchiveContainer().getChildren().size()); -// assertEquals(0, query.getChildren().size()); -// } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataStoreTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataStoreTest.java deleted file mode 100644 index 3e41040af..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDataStoreTest.java +++ /dev/null @@ -1,196 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.util.Date; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.CoreException; -import org.eclipse.mylyn.internal.tasks.core.TaskRepositoryManager; -import org.eclipse.mylyn.internal.tasks.core.data.TaskDataState; -import org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttachmentMapper; -import org.eclipse.mylyn.tasks.core.data.TaskAttribute; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskCommentMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.core.data.TaskMapper; -import org.eclipse.mylyn.tasks.core.data.TaskOperation; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; - -/** - * @author Robert Elves - * @author Steffen Pingel - */ -public class TaskDataStoreTest extends TestCase { - - private static final String MOCK_ID = "1"; - - private TaskDataStore storage; - - private TaskRepository taskRepository; - - private File file; - - private TaskData data; - - private TaskDataState state; - - @Override - protected void setUp() throws Exception { - TaskRepositoryManager taskRepositoryManager = new TaskRepositoryManager(); - storage = new TaskDataStore(taskRepositoryManager); - taskRepository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - file = File.createTempFile("mylyn", null); - file.deleteOnExit(); - - taskRepositoryManager.addRepositoryConnector(new MockRepositoryConnector()); - taskRepositoryManager.addRepository(taskRepository); - } - - @Override - protected void tearDown() throws Exception { - file.delete(); - } - - public void testPutAndGet() throws Exception { - TaskDataState state = new TaskDataState(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - - TaskData data = new TaskData(new TaskAttributeMapper(taskRepository), MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - TaskMapper mapper = new TaskMapper(data, true); - mapper.getTaskData().getRoot().createAttribute("attributeKey1").setValue("attValue!"); - mapper.setDescription("description"); - mapper.setSummary("summary"); - mapper.setTaskKind("task kind"); - - TaskData oldData = new TaskData(new TaskAttributeMapper(taskRepository), - MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - - state.setRepositoryData(data); - state.setLastReadData(oldData); - state.setEditsData(null); - - storage.putTaskData(file, state); - - TaskDataState retrieved = storage.getTaskDataState(file); - assertNotNull(retrieved); - TaskData newTaskData = retrieved.getRepositoryData(); - assertNotNull(newTaskData); - assertEquals(MockRepositoryConnector.REPOSITORY_KIND, newTaskData.getConnectorKind()); - mapper = new TaskMapper(newTaskData); - assertEquals("description", mapper.getDescription()); - assertEquals("summary", mapper.getSummary()); - assertEquals("task kind", mapper.getTaskKind()); - } - - public void testDelete() throws Exception { - TaskData data = new TaskData(new TaskAttributeMapper(taskRepository), MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - TaskDataState state = new TaskDataState(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - state.setRepositoryData(data); - storage.putTaskData(file, state); - storage.deleteTaskData(file); - assertFalse(file.exists()); - assertNull(storage.getTaskDataState(file)); - } - - private void setupData() { - data = new TaskData(new TaskAttributeMapper(taskRepository), MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL, MOCK_ID); - state = new TaskDataState(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL, - MOCK_ID); - state.setRepositoryData(data); - } - - public void testAttributes() throws Exception { - setupData(); - - TaskAttribute attribute = data.getRoot().createAttribute("testId"); - attribute.getMetaData().setLabel("testName").setReadOnly(true); - attribute.putOption("Option Name 1", "Option Value 1"); - attribute.putOption("Option Name 2", "Option Value 2"); - attribute.addValue("Value 1"); - attribute.addValue("Value 2"); - attribute.addValue("Value 3"); - attribute.getMetaData().putValue("MetaKey1", "MetaValue1"); - attribute.getMetaData().putValue("MetaKey2", "MetaValue2"); - attribute.getMetaData().putValue("MetaKey3", "MetaValue3"); - attribute.getMetaData().putValue("MetaKey4", "MetaValue4"); - - assertData(1); - } - - private void assertData(int attributeCount) throws CoreException { - storage.putTaskData(file, state); - state = storage.getTaskDataState(file); - - assertNotNull(state); - assertNotNull(state.getRepositoryData()); - assertEquals(data.getRoot().toString(), state.getRepositoryData().getRoot().toString()); - assertEquals(attributeCount, state.getRepositoryData().getRoot().getAttributes().size()); - } - - public void testOperations() throws Exception { - setupData(); - - TaskOperation.applyTo(data.getRoot().createAttribute("op1"), "op1 id", "op1 label"); - TaskOperation.applyTo(data.getRoot().createAttribute("op2"), "op2 id", "op2 label"); - - assertData(2); - } - - public void testComments() throws Exception { - setupData(); - - TaskCommentMapper comment1 = new TaskCommentMapper(); - comment1.setCommentId("attachmentId1"); - TaskAttribute attr = data.getRoot().createAttribute("1"); - comment1.applyTo(attr); - attr.createAttribute("attr1").setValue("attr1Name"); - - TaskCommentMapper comment2 = new TaskCommentMapper(); - comment2.setCommentId("attachmentId2"); - comment2.setCreationDate(new Date()); - comment2.setNumber(100); - comment2.applyTo(data.getRoot().createAttribute("2")); - - assertData(2); - } - - public void testAttachments() throws Exception { - setupData(); - - TaskAttachmentMapper attachment1 = new TaskAttachmentMapper(); - attachment1.setAuthor(taskRepository.createPerson("thecreator")); - attachment1.setDeprecated(false); - attachment1.setPatch(true); - TaskAttribute attr = data.getRoot().createAttribute("1"); - attachment1.applyTo(attr); - attr.createAttribute("attr1").setValue("attr1Name"); - attr.createAttribute("attr2").setValue("attr1Name"); - - TaskAttachmentMapper attachment2 = new TaskAttachmentMapper(); - attachment2.setAuthor(taskRepository.createPerson("thecreator2")); - attachment2.setDeprecated(true); - attachment2.setPatch(false); - attachment2.applyTo(data.getRoot().createAttribute("2")); - - assertData(2); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDiffUtilTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDiffUtilTest.java deleted file mode 100644 index 9d8fdf320..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskDiffUtilTest.java +++ /dev/null @@ -1,56 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Eugene Kuleshov 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 - * - * Contributors: - * Eugene Kuleshov - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.notifications.TaskDiffUtil; - -/** - * @author Eugene Kuleshov - * @author Steffen Pingel - */ -public class TaskDiffUtilTest extends TestCase { - - public void testFoldSpaces() { - assertEquals("a b", TaskDiffUtil.foldSpaces("a b")); - assertEquals("", TaskDiffUtil.foldSpaces(" ")); - assertEquals("a b c d", TaskDiffUtil.cleanCommentText("a b c d")); - assertEquals("b", TaskDiffUtil.cleanCommentText(" b ")); - assertEquals("b", TaskDiffUtil.cleanCommentText(" b")); - } - - public void testCleanComment() { - assertEquals("attachment: some attachment. attachment description", - TaskDiffUtil.cleanCommentText(("Created an attachment (id=111)\n" // - + "some attachment\n" // - + "\n" // - + "attachment description"))); - assertEquals("attachment: some attachment", TaskDiffUtil.cleanCommentText(("Created an attachment (id=111)\n" // - + "some attachment\n" // - + "\n"))); - assertEquals("some comment", TaskDiffUtil.cleanCommentText(("(In reply to comment #11)\n" // - + "some comment\n"))); - assertEquals("some comment. other comment", TaskDiffUtil.cleanCommentText((" (In reply to comment #11)\n" // - + "some comment\n" // - + "\n" // - + " (In reply to comment #12)\n" // - + "other comment\n"))); - assertEquals("some comment. other comment", TaskDiffUtil.cleanCommentText((" (In reply to comment #11)\n" // - + "some comment. \n" // - + "\n" // - + " (In reply to comment #12)\n" // - + "> loren ipsum\n" + "> loren ipsum\n" + "other comment\n"))); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskExportImportTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskExportImportTest.java deleted file mode 100644 index 25d2f9208..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskExportImportTest.java +++ /dev/null @@ -1,117 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Jevgeni Holodkov - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import org.eclipse.mylyn.context.tests.AbstractContextTest; - -/** - * - * @author Jevgeni Holodkov - */ -//FIXME fix test -public class TaskExportImportTest extends AbstractContextTest { - - public void testRewriteTestCases() { - } - -// private File destinationDir; -// -// @Override -// protected void setUp() throws Exception { -// TasksUi.getTaskActivityManager().deactivateActiveTask(); -// super.setUp(); -// -// // Create test export destination directory -// destinationDir = new File(TasksUiPlugin.getDefault().getDataDirectory(), "TestDir"); -// CommonsTestUtil.deleteFolder(destinationDir); -// destinationDir.mkdir(); -// assertTrue(destinationDir.exists()); -// } -// -// @Override -// protected void tearDown() throws Exception { -// CommonsTestUtil.deleteFolder(destinationDir); -// super.tearDown(); -// } -// -// public void testTaskContextExport() throws Exception { -// -// LocalTask task = TasksUiInternal.createNewLocalTask("Test local task"); -// TaskList taskList = TasksUiPlugin.getTaskList(); -// taskList.addTask(task, taskList.getDefaultCategory()); -// assertTrue(taskList.getAllTasks().size() > 0); -// -// InteractionContext mockContext = (InteractionContext) ContextCorePlugin.getContextStore().loadContext( -// task.getHandleIdentifier()); -// -// ContextCorePlugin.getContextManager().internalActivateContext(mockContext); -// InteractionEvent event = new InteractionEvent(InteractionEvent.Kind.EDIT, "structureKind", "handle", "originId"); -// mockContext.parseEvent(event); -// ContextCore.getContextManager().deactivateContext(mockContext.getHandleIdentifier()); -// -// assertTrue(ContextCorePlugin.getContextStore().getContextDirectory().exists()); -// ContextCorePlugin.getContextStore().saveContext(mockContext); -// assertTrue(ContextCore.getContextManager().hasContext(task.getHandleIdentifier())); -// -// File outFile = new File(destinationDir + File.separator + "local-task.xml.zip"); -// TasksUiPlugin.getTaskListWriter().writeTask(task, outFile); -// assertTrue(outFile.exists()); -// -// // check the content of the archive -// List<String> files = new ArrayList<String>(); -// ZipInputStream inputStream = new ZipInputStream(new FileInputStream(outFile)); -// ZipEntry entry = null; -// while ((entry = inputStream.getNextEntry()) != null) { -// files.add(entry.getName()); -// } -// inputStream.close(); -// -// assertTrue("exported file contains a file with queries", files.contains(ITasksCoreConstants.OLD_TASK_LIST_FILE)); -// -// String handleIdentifier = mockContext.getHandleIdentifier(); -// String encoded = URLEncoder.encode(handleIdentifier, InteractionContextManager.CONTEXT_FILENAME_ENCODING); -// String contextName = encoded + InteractionContextManager.CONTEXT_FILE_EXTENSION_OLD; -// assertTrue("exported file contains a file with context", files.contains(contextName)); -// -// // reset all data -// TaskTestUtil.resetTaskList(); -// assertTrue(taskList.getAllTasks().size() == 0); -// -// ContextCore.getContextManager().deleteContext(handleIdentifier); -// assertFalse(ContextCore.getContextManager().hasContext(task.getHandleIdentifier())); -// -// // load data back -// List<AbstractTask> tasks = TasksUiPlugin.getTaskListWriter().readTasks(outFile); -// IInteractionContext loadedContext = ContextCore.getContextStore().importContext(task.getHandleIdentifier(), -// outFile); -// -// // check with original one -// assertEquals("There is 1 task loaded", 1, tasks.size()); -// assertEquals("Loaded task is correct", task, tasks.get(0)); -// assertEquals("Loaded context is correct", mockContext, loadedContext); -// -// // import data -// for (AbstractTask loadedTask : tasks) { -// taskList.addTask(loadedTask); -// } -// ContextCore.getContextStore().importContext(task.getHandleIdentifier(), outFile); -//// ContextCorePlugin.getContextStore().importContext(loadedContext); -// -// // check that context was imported and is the same as original one -// IInteractionContext savedContext = ContextCorePlugin.getContextStore().loadContext(task.getHandleIdentifier()); -// assertEquals("Saved context is the same as original one", mockContext, savedContext); -// assertEquals("Saved task is the same as original one", task, taskList.getTask(task.getHandleIdentifier())); -// -// ContextCorePlugin.getContextManager().deactivateAllContexts(); -// } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskKeyComparatorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskKeyComparatorTest.java deleted file mode 100644 index 1e087c3c0..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskKeyComparatorTest.java +++ /dev/null @@ -1,69 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Eugene Kulehsov - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Arrays; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.views.TaskKeyComparator; - -/** - * @author Eugene Kuleshov - bug 129511 - * @author Mik Kersten - */ -public class TaskKeyComparatorTest extends TestCase { - - public void testPatterns() { - comparisonCheck("", new String[] { null, null, "" }); - comparisonCheck(" ", new String[] { null, null, " " }); - comparisonCheck("aa", new String[] { null, null, "aa" }); - comparisonCheck("11", new String[] { "", "11", "" }); - comparisonCheck("11 aa", new String[] { "", "11", " aa" }); - comparisonCheck(" 11 aa", new String[] { null, null, " 11 aa" }); - comparisonCheck("aa11 bb", new String[] { "aa", "11", " bb" }); - comparisonCheck("aa-11 bb", new String[] { "aa-", "11", " bb" }); - comparisonCheck("aa 11 bb", new String[] { null, null, "aa 11 bb" }); - comparisonCheck("aa bb 11 cc", new String[] { null, null, "aa bb 11 cc" }); - - comparisonCheck("aa", "aa", 0); - comparisonCheck("aa", "bb", -1); - comparisonCheck("bb", "aa", 1); - - comparisonCheck("aa11", "aa11", 0); - comparisonCheck("aa11", "aa12", -1); - comparisonCheck("aa12", "aa11", 1); - - comparisonCheck("aa1", "aa11", -1); - comparisonCheck("aa1", "aa2", -1); - comparisonCheck("aa1", "aa21", -1); - - comparisonCheck("aa1 aaa", "aa1 aaa", 0); - comparisonCheck("aa1 aaa", "aa1 bbb", -1); - comparisonCheck("aa1 bbb", "aa11 aaa", -1); - } - - private void comparisonCheck(String s, String[] exptecation) { - String[] res = new TaskKeyComparator().split(s); - assertTrue("Invalid " + Arrays.asList(res) + " " + Arrays.asList(exptecation), Arrays.equals(res, exptecation)); - } - - private static final TaskKeyComparator tkc = new TaskKeyComparator(); - - public void comparisonCheck(String s1, String s2, int n) { - final String[] c1 = new String[] { null, null, s1 }; - final String[] c2 = new String[] { null, null, s2 }; - assertEquals(n, tkc.compare(c1, c2)); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListBackupManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListBackupManagerTest.java deleted file mode 100644 index 6cb74b8bf..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListBackupManagerTest.java +++ /dev/null @@ -1,69 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.commons.tests.support.CommonsTestUtil; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.ui.TaskListBackupManager; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; - -/** - * @author Rob Elves - */ -public class TaskListBackupManagerTest extends TestCase { - - private AbstractTask task1; - - private TaskListBackupManager backupManager; - - @Override - protected void setUp() throws Exception { - backupManager = TasksUiPlugin.getBackupManager(); - CommonsTestUtil.deleteFolder(new File(TasksUiPlugin.getDefault().getBackupFolderPath())); - TaskTestUtil.resetTaskList(); - } - - public void testAutoBackupDisabled() throws Exception { - backupManager.start(5); - Thread.sleep(1000); - assertEquals(0, backupManager.getBackupFiles().size()); - - task1 = new LocalTask("handle", "label"); - TasksUiPlugin.getTaskList().addTask(task1); - backupManager.stop(); - backupManager.start(5); - Thread.sleep(1000); - assertEquals(1, backupManager.getBackupFiles().size()); - } - - public void testAutoBackupEnabled() throws Exception { - task1 = new LocalTask("handle", "label"); - TasksUiPlugin.getTaskList().addTask(task1); - backupManager.backupNow(true, null); - assertEquals(1, backupManager.getBackupFiles().size()); - - // make sure a new date stamp is generated - Thread.sleep(1000); - backupManager.backupNow(true, null); - assertEquals(2, backupManager.getBackupFiles().size()); - - // test removal of old backups - TasksUiPlugin.getBackupManager().removeOldBackups(); - assertEquals(1, backupManager.getBackupFiles().size()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListContentProviderTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListContentProviderTest.java deleted file mode 100644 index 9dc62c7fb..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListContentProviderTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Felix Schwartz - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Date; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.ITasksUiPreferenceConstants; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListContentProvider; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; - -/** - * @author Felix Schwarz - */ -public class TaskListContentProviderTest extends TestCase { - - private TaskListContentProvider provider; - - private TaskListView view; - - private TaskList taskList; - - @Override - protected void setUp() throws Exception { - super.setUp(); - TasksUiUtil.openTasksViewInActivePerspective(); - view = TaskListView.getFromActivePerspective(); - provider = (TaskListContentProvider) view.getViewer().getContentProvider(); - TasksUiPlugin.getDefault().getPreferenceStore().setValue(ITasksUiPreferenceConstants.GROUP_SUBTASKS, true); - view.clearFilters(); - view.addFilter(view.getCompleteFilter()); - taskList = TasksUiPlugin.getTaskList(); - } - - @Override - protected void tearDown() throws Exception { - view.clearFilters(); - super.tearDown(); - } - - public void testHasChildren() { - - AbstractTask parent = new LocalTask("parent", "parent label"); - AbstractTask completedChild = new LocalTask("completed child", "completed child label"); - completedChild.setCompletionDate(new Date()); - taskList.addTask(parent); - taskList.addTask(completedChild, parent); - assertFalse(provider.hasChildren(parent)); - - AbstractTask incompleteChild = new LocalTask("incomplete child", "incomplete child label"); - incompleteChild.setCompletionDate(null); - taskList.addTask(incompleteChild, parent); - assertTrue(provider.hasChildren(parent)); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListDropAdapterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListDropAdapterTest.java deleted file mode 100644 index 7072f409c..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListDropAdapterTest.java +++ /dev/null @@ -1,66 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Collection; - -import junit.framework.TestCase; - -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListDropAdapter; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.tasks.core.ITask; - -/** - * @author Rob Elves - * @author Mik Kersten - */ -public class TaskListDropAdapterTest extends TestCase { - - private TaskListDropAdapter dropAdapter; - - private TaskList taskList; - - @Override - protected void setUp() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - - TreeViewer viewer = TaskListView.getFromActivePerspective().getViewer(); - assertNotNull(viewer); - dropAdapter = new TaskListDropAdapter(viewer); - taskList = TasksUiPlugin.getTaskList(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskList(); - } - - public void testUrlDrop() { - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - String url = "http://eclipse.org/mylyn"; - String title = "Mylyn Project"; - String urlData = url + "\n" + title; - - dropAdapter.performDrop(urlData); - Collection<ITask> tasks = taskList.getDefaultCategory().getChildren(); - assertNotNull(tasks); - assertEquals(1, tasks.size()); - assertEquals(url, tasks.iterator().next().getUrl()); - - // TODO: Failing due to asynchronous retrieval of title from url - // assertEquals(title, tasks.get(0).getDescription(false)); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListExternalizationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListExternalizationTest.java deleted file mode 100644 index 0df25e2ec..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListExternalizationTest.java +++ /dev/null @@ -1,384 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Collection; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskCategory; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.internal.tasks.ui.ITasksUiPreferenceConstants; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.ITaskContainer; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; - -/** - * @author Robert Elves - * @author Steffen Pingel - */ -public class TaskListExternalizationTest extends TestCase { - - private TaskList taskList; - - private TaskRepository repository; - - @Override - protected void setUp() throws Exception { - super.setUp(); - TasksUiPlugin.getDefault().getPreferenceStore().setValue( - ITasksUiPreferenceConstants.REPOSITORY_SYNCH_SCHEDULE_ENABLED, false); - - TaskTestUtil.resetTaskListAndRepositories(); - - repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - - taskList = TasksUiPlugin.getTaskList(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskList(); - } - - public void testTaskAttributes() throws Exception { - AbstractTask task1 = TasksUiInternal.createNewLocalTask("task 1"); - task1.setAttribute("key", "value"); - assertEquals(1, task1.getAttributes().size()); - - TaskTestUtil.saveAndReadTasklist(); - - task1 = taskList.getTask(task1.getHandleIdentifier()); - assertNotNull(task1); - assertEquals(1, task1.getAttributes().size()); - assertEquals("value", task1.getAttribute("key")); - } - - public void testTaskAttributeDelete() throws Exception { - AbstractTask task1 = TasksUiInternal.createNewLocalTask("task 1"); - task1.setAttribute("key", "value"); - task1.setAttribute("key", null); - assertEquals(0, task1.getAttributes().size()); - assertEquals(null, task1.getAttribute("key")); - - TaskTestUtil.saveAndReadTasklist(); - - task1 = taskList.getTask(task1.getHandleIdentifier()); - assertNotNull(task1); - assertEquals(0, task1.getAttributes().size()); - assertEquals(null, task1.getAttribute("key")); - } - - public void testUncategorizedTasksNotLost() throws Exception { - RepositoryQuery query = TaskTestUtil.createMockQuery("1"); - taskList.addQuery(query); - TaskTask task = TaskTestUtil.createMockTask("1"); - taskList.addTask(task, query); - taskList.addTask(task, taskList.getDefaultCategory()); - assertTrue(query.contains(task.getHandleIdentifier())); - assertTrue(taskList.getDefaultCategory().contains(task.getHandleIdentifier())); - - TaskTestUtil.saveAndReadTasklist(); - - assertTrue(taskList.getDefaultCategory().contains(task.getHandleIdentifier())); - } - - public void testUniqueTaskId() throws Exception { - LocalTask task1 = TasksUiInternal.createNewLocalTask("label"); - taskList.addTask(task1); - LocalTask task2 = TasksUiInternal.createNewLocalTask("label"); - taskList.addTask(task2); - assertEquals(2, taskList.getLastLocalTaskId()); - taskList.deleteTask(task2); - LocalTask task3 = TasksUiInternal.createNewLocalTask("label"); - taskList.addTask(task3); - assertTrue(task3.getHandleIdentifier() + " should end with 3", task3.getHandleIdentifier().endsWith("3")); - assertEquals(3, taskList.getLastLocalTaskId()); - assertEquals(2, taskList.getAllTasks().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(2, taskList.getAllTasks().size()); - assertEquals(3, taskList.getLastLocalTaskId()); - ITask task4 = TasksUiInternal.createNewLocalTask("label"); - assertTrue(task4.getHandleIdentifier() + " should end with 4", task4.getHandleIdentifier().endsWith("4")); - } - - public void testSingleTaskDeletion() throws Exception { - TaskTask task = TaskTestUtil.createMockTask("1"); - taskList.addTask(task, taskList.getUnmatchedContainer(LocalRepositoryConnector.REPOSITORY_URL)); - assertEquals(1, taskList.getAllTasks().size()); - taskList.deleteTask(task); - assertEquals(0, taskList.getAllTasks().size()); - taskList.addTask(task, taskList.getUnmatchedContainer(LocalRepositoryConnector.REPOSITORY_URL)); - assertEquals(1, taskList.getAllTasks().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getAllTasks().size()); - - taskList.deleteTask(task); - assertEquals(0, taskList.getAllTasks().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(0, taskList.getAllTasks().size()); - } - - public void testCategoryPersistance() throws Exception { - TaskTask task = TaskTestUtil.createMockTask("1"); - TaskCategory category = new TaskCategory("cat"); - taskList.addCategory(category); - taskList.addTask(task, category); - assertNotNull(taskList); - assertEquals(2, taskList.getCategories().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals("" + taskList.getCategories(), 2, taskList.getCategories().size()); - assertEquals(1, taskList.getAllTasks().size()); - } - - public void testCreate() throws Exception { - TaskTask repositoryTask = TaskTestUtil.createMockTask("1"); - taskList.addTask(repositoryTask, taskList.getDefaultCategory()); - assertEquals(1, taskList.getDefaultCategory().getChildren().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getAllTasks().size()); - } - - public void testCreateAndMove() throws Exception { - TaskTask repositoryTask = TaskTestUtil.createMockTask("1"); - taskList.addTask(repositoryTask); - assertEquals(1, taskList.getAllTasks().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getAllTasks().size()); - assertEquals(1, taskList.getUnmatchedContainer(MockRepositoryConnector.REPOSITORY_URL).getChildren().size()); - } - - public void testArchiveRepositoryTaskExternalization() throws Exception { - TaskTask repositoryTask = TaskTestUtil.createMockTask("1"); - taskList.addTask(repositoryTask); - assertEquals(1, taskList.getUnmatchedContainer(MockRepositoryConnector.REPOSITORY_URL).getChildren().size()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getUnmatchedContainer(MockRepositoryConnector.REPOSITORY_URL).getChildren().size()); - } - - public void testRepositoryTasksAndCategoriesMultiRead() throws Exception { - TaskCategory cat1 = new TaskCategory("Category 1"); - taskList.addCategory(cat1); - - TaskTask reportInCat1 = TaskTestUtil.createMockTask("123"); - taskList.addTask(reportInCat1, cat1); - assertEquals(cat1, TaskCategory.getParentTaskCategory(reportInCat1)); - - TaskTestUtil.saveAndReadTasklist(); - - // read once - Set<AbstractTaskCategory> readCats = taskList.getTaskCategories(); - assertTrue(taskList.getCategories().contains(cat1)); - Iterator<AbstractTaskCategory> iterator = readCats.iterator(); - - boolean found = false; - while (iterator.hasNext()) { - ITaskContainer readCat1 = iterator.next(); - if (cat1.equals(readCat1)) { - found = true; - assertEquals(1, readCat1.getChildren().size()); - } - } - if (!found) { - fail(" Category not found afer tasklist read"); - } - - TaskTestUtil.saveAndReadTasklist(); - - // read again - readCats = taskList.getTaskCategories(); - assertTrue(taskList.getCategories().contains(cat1)); - - iterator = readCats.iterator(); - found = false; - while (iterator.hasNext()) { - ITaskContainer readCat1 = iterator.next(); - if (cat1.equals(readCat1)) { - found = true; - assertEquals(1, readCat1.getChildren().size()); - } - } - if (!found) { - fail(" Category not found afer tasklist read"); - } - } - - public void testSubTaskExternalization() throws Exception { - Set<AbstractTask> rootTasks = new HashSet<AbstractTask>(); - AbstractTask task1 = new LocalTask("1", "task1"); - taskList.addTask(task1); - rootTasks.add(task1); - - AbstractTask sub2 = new LocalTask("2", "sub 2"); - taskList.addTask(sub2, task1); - assertEquals(1, task1.getChildren().size()); - assertTrue(rootTasks.containsAll(taskList.getDefaultCategory().getChildren())); - - TaskTestUtil.saveAndReadTasklist(); - - // XXX: This should pass once sub tasks are handled properly -// assertTrue(rootTasks.containsAll(taskList.getOrphanContainer( -// LocalRepositoryConnector.REPOSITORY_URL).getChildren())); - - Collection<ITask> readList = taskList.getDefaultCategory().getChildren(); - for (ITask task : readList) { - if (task.equals(task1)) { - assertEquals(task1.getSummary(), task.getSummary()); - assertEquals(1, ((ITaskContainer) task).getChildren().size()); - } - } - } - - public void testCreationAndExternalization() throws Exception { - Set<AbstractTask> rootTasks = new HashSet<AbstractTask>(); - AbstractTask task1 = TasksUiInternal.createNewLocalTask("task 1"); - rootTasks.add(task1); - assertEquals(1, taskList.getAllTasks().size()); - - AbstractTask sub1 = TasksUiInternal.createNewLocalTask("sub 1"); - taskList.addTask(sub1, task1); - // default category, mock orphans, mock unsubmitted - int baseRootElementsCount = 3; - assertEquals(baseRootElementsCount, taskList.getRootElements().size()); - - //taskList.moveToContainer(sub1, taskList.getArchiveContainer()); - - AbstractTask task2 = TasksUiInternal.createNewLocalTask("task 2"); - rootTasks.add(task2); - assertEquals(3, taskList.getAllTasks().size()); - - Set<TaskCategory> categories = new HashSet<TaskCategory>(); - Set<AbstractTask> cat1Contents = new HashSet<AbstractTask>(); - TaskCategory cat1 = new TaskCategory("Category 1"); - taskList.addCategory(cat1); - categories.add(cat1); - assertEquals(baseRootElementsCount + 1, taskList.getRootElements().size()); - - AbstractTask task3 = TasksUiInternal.createNewLocalTask("task 3"); - taskList.addTask(task3, cat1); - cat1Contents.add(task3); - assertEquals(4, taskList.getAllTasks().size()); - assertEquals(cat1, TaskCategory.getParentTaskCategory(task3)); - AbstractTask sub2 = TasksUiInternal.createNewLocalTask("sub 2"); - assertEquals(5, taskList.getAllTasks().size()); - taskList.addTask(sub2, task3); - //taskList.moveToContainer(sub2, taskList.getArchiveContainer()); - - AbstractTask task4 = TasksUiInternal.createNewLocalTask("task 4"); - taskList.addTask(task4, cat1); - cat1Contents.add(task4); - assertEquals(6, taskList.getAllTasks().size()); - - TaskTask reportInCat1 = TaskTestUtil.createMockTask("123"); - taskList.addTask(reportInCat1, cat1); - assertEquals(cat1, TaskCategory.getParentTaskCategory(reportInCat1)); - cat1Contents.add(reportInCat1); - assertEquals(7, taskList.getAllTasks().size()); - - assertEquals(baseRootElementsCount + 1, taskList.getRootElements().size()); - - TaskTestUtil.saveAndReadTasklist(); - - Collection<ITask> readList = taskList.getDefaultCategory().getChildren(); - for (ITask task : readList) { - if (task.equals(task1)) { - assertEquals(task1.getSummary(), task.getSummary()); - assertEquals(1, ((AbstractTaskContainer) task).getChildren().size()); - } - } - - Set<AbstractTaskCategory> readCats = taskList.getTaskCategories(); - assertTrue(taskList.getCategories().contains(cat1)); - Iterator<AbstractTaskCategory> iterator = readCats.iterator(); - boolean found = false; - while (iterator.hasNext()) { - ITaskContainer readCat1 = iterator.next(); - if (cat1.equals(readCat1)) { - found = true; - for (ITask task : readCat1.getChildren()) { - assertTrue(cat1Contents.contains(task)); - } - } - } - if (!found) { - fail(" Category not found afer tasklist read"); - } - } - - public void testExternalizationOfHandlesWithDash() throws Exception { - AbstractTask task1 = TasksUiInternal.createNewLocalTask("task 1"); - taskList.addTask(task1, taskList.getDefaultCategory()); - - TaskTestUtil.saveAndReadTasklist(); - assertTrue(taskList.getDefaultCategory().getChildren().contains(task1)); - } - - /** - * If a task exists in a category and is a query hit it should not be removed from the category - * - * @throws Exception - */ - public void testQueryRemovedTaskInCategory() throws Exception { - TaskTask mockTask = TaskTestUtil.createMockTask("1"); - RepositoryQuery mockQuery = TaskTestUtil.createMockQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - assertTrue(taskList.getDefaultCategory().isEmpty()); - taskList.addTask(mockTask, taskList.getDefaultCategory()); - assertEquals(1, taskList.getCategories().size()); - assertFalse(taskList.getDefaultCategory().isEmpty()); - - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getCategories().size()); - assertEquals(1, taskList.getQueries().size()); - assertFalse(taskList.getDefaultCategory().isEmpty()); - - taskList.deleteQuery(mockQuery); - TaskTestUtil.saveAndReadTasklist(); - assertEquals(1, taskList.getCategories().size()); - assertEquals(0, taskList.getQueries().size()); - assertFalse(taskList.getDefaultCategory().isEmpty()); - } - - /** - * New local tasks should automatically be created in the Local orphaned folder. - */ - public void testAddLocalTask() { - Set<ITask> tasks = taskList.getTasks(LocalRepositoryConnector.REPOSITORY_URL); - assertTrue(tasks.isEmpty()); - ITask localTask = TasksUiInternal.createNewLocalTask("Task 1"); - assertNotNull(localTask); - assertEquals(1, ((AbstractTask) localTask).getParentContainers().size()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListPresentationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListPresentationTest.java deleted file mode 100644 index d3034d9c9..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListPresentationTest.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.List; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.views.AbstractTaskListPresentation; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; - -/** - * @author Mik Kersten - */ -public class TaskListPresentationTest extends TestCase { - - public void testDefaultPresentations() { - - List<AbstractTaskListPresentation> presentations = TaskListView.getPresentations(); - // depends on whether Sandbox is running - assertTrue(presentations.size() == 2 || presentations.size() == 7); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSaveManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSaveManagerTest.java deleted file mode 100644 index bfded4a7f..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSaveManagerTest.java +++ /dev/null @@ -1,109 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.IOException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Locale; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; - -/** - * @author Rob Elves - */ -public class TaskListSaveManagerTest extends TestCase { - - @Override - protected void setUp() throws Exception { - super.setUp(); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - } - - public void testRemovalOfSnapshots() throws IOException { - String backupPath = TasksUiPlugin.getDefault().getBackupFolderPath(); - File backupFolder = new File(backupPath); - if (!backupFolder.exists()) { - backupFolder.mkdir(); - } - - Calendar time = TaskActivityUtil.getCalendar(); - - File thisHour = createFile(backupFolder, time); - time.add(Calendar.MILLISECOND, -1000); - File thisHourEarlier = createFile(backupFolder, time); - - TaskActivityUtil.snapStartOfHour(time); - time.add(Calendar.HOUR_OF_DAY, -1); - time.add(Calendar.MILLISECOND, -3000); - File previousHour = createFile(backupFolder, time); - - time.add(Calendar.MILLISECOND, -3000); - File previousHour2 = createFile(backupFolder, time); - - time.add(Calendar.DAY_OF_YEAR, -1); - File previousDay = createFile(backupFolder, time); - - time.add(Calendar.HOUR_OF_DAY, -1); - File previousDay2 = createFile(backupFolder, time); - - time.add(Calendar.DAY_OF_YEAR, -3); - File previousDay3 = createFile(backupFolder, time); - - time.add(Calendar.HOUR_OF_DAY, -1); - File previousDay4 = createFile(backupFolder, time); - - time.add(Calendar.MILLISECOND, -4000); - File previousDay5 = createFile(backupFolder, time); - - TasksUiPlugin.getBackupManager().removeOldBackups(); - assertTrue(thisHour.exists()); - assertFalse(thisHourEarlier.exists()); - assertTrue(previousHour.exists()); - assertFalse(previousHour2.exists()); - assertTrue(previousDay.exists()); - assertFalse(previousDay2.exists()); - assertTrue(previousDay3.exists()); - assertFalse(previousDay4.exists()); - assertFalse(previousDay5.exists()); - } - - public void testAddTaskDuringSave() { - // add task - // save - // try to add task during save - } - - // test cancellation - - private File createFile(File backupFolder, Calendar time) { - SimpleDateFormat format = new SimpleDateFormat(ITasksCoreConstants.FILENAME_TIMESTAMP_FORMAT, Locale.ENGLISH); - File newFile = new File(backupFolder, ITasksCoreConstants.OLD_PREFIX_TASKLIST + "-" - + format.format(time.getTime()) + ITasksCoreConstants.FILE_EXTENSION); - try { - newFile.createNewFile(); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - return newFile; - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSorterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSorterTest.java deleted file mode 100644 index ccbaff249..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListSorterTest.java +++ /dev/null @@ -1,222 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - * George Lindholm - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Calendar; -import java.util.Date; - -import junit.framework.TestCase; - -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.DateRange; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; -import org.eclipse.mylyn.internal.tasks.core.TaskActivityUtil; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskGroup; -import org.eclipse.mylyn.internal.tasks.core.UncategorizedTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.UnmatchedTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.UnsubmittedTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.WeekDateRange; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TaskComparator; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListInterestSorter; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListSorter; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.swt.widgets.Control; - -/** - * @author Mik Kersten - * @author George Lindholm - * @author Frank Becker - */ -public class TaskListSorterTest extends TestCase { - - public void testRootTaskSorting() { - TaskListSorter sorter = new TaskListSorter(); - sorter.getComparator().setSortByIndex(TaskComparator.SortByIndex.SUMMARY); - - AbstractTask task = new LocalTask("1", ""); - UncategorizedTaskContainer uncategorizedTaskContainer = new UncategorizedTaskContainer(); - UnsubmittedTaskContainer unsubmittedTaskContainer = new UnsubmittedTaskContainer("connectorKind", - "repositoryUrl"); - TaskCategory category = new TaskCategory("cat"); - RepositoryQuery repositoryQuery = new RepositoryQuery("connectorKind", "queryName"); - TaskGroup taskGroup = new TaskGroup("parentHandle", "summary", "groupBy"); - UnmatchedTaskContainer unmatchedTaskContainer = new UnmatchedTaskContainer("connectorKind", "repositoryUrl"); - - checkToRootElements(sorter, uncategorizedTaskContainer, unsubmittedTaskContainer); - checkToRootElements(sorter, uncategorizedTaskContainer, category); - checkToRootElements(sorter, uncategorizedTaskContainer, repositoryQuery); - checkToRootElements(sorter, uncategorizedTaskContainer, taskGroup); - checkToRootElements(sorter, uncategorizedTaskContainer, unmatchedTaskContainer); - - checkToRootElements(sorter, unsubmittedTaskContainer, category); - checkToRootElements(sorter, unsubmittedTaskContainer, repositoryQuery); - checkToRootElements(sorter, unsubmittedTaskContainer, taskGroup); - checkToRootElements(sorter, unsubmittedTaskContainer, unmatchedTaskContainer); - - checkToRootElements(sorter, category, repositoryQuery); - checkToRootElements(sorter, category, taskGroup); - checkToRootElements(sorter, category, unmatchedTaskContainer); - - checkToRootElements(sorter, repositoryQuery, taskGroup); - checkToRootElements(sorter, repositoryQuery, unmatchedTaskContainer); - - checkToRootElements(sorter, taskGroup, unmatchedTaskContainer); - - checkToRootElements(sorter, task, uncategorizedTaskContainer); - checkToRootElements(sorter, task, unsubmittedTaskContainer); - checkToRootElements(sorter, task, category); - checkToRootElements(sorter, task, repositoryQuery); - checkToRootElements(sorter, task, taskGroup); - checkToRootElements(sorter, task, unmatchedTaskContainer); - } - - private void checkToRootElements(TaskListSorter sorter, AbstractTaskContainer e1, AbstractTaskContainer e2) { - assertEquals(-1, sorter.compare(null, e1, e2)); - assertEquals(1, sorter.compare(null, e2, e1)); - } - - public class EmptyViewer extends Viewer { - public EmptyViewer() { - } - - @Override - public Control getControl() { - return null; - } - - @Override - public Object getInput() { - return null; - } - - @Override - public ISelection getSelection() { - return null; - } - - @Override - public void refresh() { - } - - @Override - public void setInput(Object input) { - } - - @Override - public void setSelection(ISelection selection, boolean reveal) { - } - } - - public void testScheduledTaskSorting() { - final TaskListInterestSorter sorter = new TaskListInterestSorter(); - MockTask task1 = new MockTask("local", "MYLN:1", "1"); - MockTask task2 = new MockTask("local", "MYLN:2", "2"); - - Calendar start1 = TaskActivityUtil.getCalendar(); - start1.add(Calendar.WEEK_OF_YEAR, -1); - TaskActivityUtil.snapStartOfWorkWeek(start1); - Calendar end1 = TaskActivityUtil.getCalendar(); - end1.setTimeInMillis(start1.getTimeInMillis()); - TaskActivityUtil.snapEndOfWeek(end1); - WeekDateRange range1 = new WeekDateRange(start1, end1); - TasksUiPlugin.getTaskActivityManager().setScheduledFor(task1, range1); - - Calendar start2 = TaskActivityUtil.getCalendar(); - start2.add(Calendar.HOUR_OF_DAY, -1); - Calendar end2 = TaskActivityUtil.getCalendar(); - DateRange range2 = new DateRange(start2, end2); - TasksUiPlugin.getTaskActivityManager().setScheduledFor(task2, range2); - - assertTrue(sorter.compare(new EmptyViewer(), task1, task2) < 0); - } - - public void testSummaryOrderSorting() { - MockTask[] tasks = new MockTask[6]; - tasks[0] = new MockTask("local", "4", "c"); - tasks[1] = new MockTask("local", "1", "b"); - tasks[2] = new MockTask("local", "11", "a"); - tasks[3] = new MockTask("local", "11", "d"); - tasks[4] = new MockTask("local", "3", "c"); - tasks[5] = new MockTask("local", "5", "a"); - Date start = new Date(); - tasks[5].setCreationDate(start); - tasks[4].setCreationDate(new Date(start.getTime() - 1)); - tasks[3].setCreationDate(new Date(start.getTime() - 2)); - tasks[2].setCreationDate(new Date(start.getTime() - 3)); - tasks[1].setCreationDate(new Date(start.getTime() - 4)); - tasks[0].setCreationDate(new Date(start.getTime() - 5)); - - TaskListSorter sorter = new TaskListSorter(); - sorter.getComparator().setSortByIndex(TaskComparator.SortByIndex.SUMMARY); - sorter.getComparator().setSortByIndex2(TaskComparator.SortByIndex.DATE_CREATED); - sorter.sort(new EmptyViewer(), tasks); - - assertEquals("11", tasks[0].getTaskKey()); - assertEquals("a", tasks[0].getSummary()); - assertEquals("5", tasks[1].getTaskKey()); - assertEquals("1", tasks[2].getTaskKey()); - assertEquals("4", tasks[3].getTaskKey()); - assertEquals("3", tasks[4].getTaskKey()); - assertEquals("11", tasks[5].getTaskKey()); - assertEquals("d", tasks[5].getSummary()); - } - - public void testModuleSummaryOrderSorting() { - MockTask[] tasks = new MockTask[5]; - tasks[0] = new MockTask("local", "MYLN:4", "c"); - tasks[1] = new MockTask("local", "MYLN:1", "b"); - tasks[2] = new MockTask("local", "MYLN:11", "a"); - tasks[3] = new MockTask("local", "MYLN:11", "b"); - tasks[4] = new MockTask("local", "MYLN:5", "a"); - Date start = new Date(); - tasks[4].setCreationDate(start); - tasks[3].setCreationDate(new Date(start.getTime() - 1)); - tasks[2].setCreationDate(new Date(start.getTime() - 2)); - tasks[1].setCreationDate(new Date(start.getTime() - 3)); - tasks[0].setCreationDate(new Date(start.getTime() - 4)); - - TaskListSorter sorter = new TaskListSorter(); - sorter.getComparator().setSortByIndex(TaskComparator.SortByIndex.SUMMARY); - sorter.getComparator().setSortByIndex2(TaskComparator.SortByIndex.DATE_CREATED); - sorter.sort(new EmptyViewer(), tasks); - - assertEquals("MYLN:11", tasks[0].getTaskKey()); - assertEquals("a", tasks[0].getSummary()); - assertEquals("MYLN:5", tasks[1].getTaskKey()); - assertEquals("MYLN:1", tasks[2].getTaskKey()); - assertEquals("MYLN:11", tasks[3].getTaskKey()); - assertEquals("b", tasks[3].getSummary()); - assertEquals("MYLN:4", tasks[4].getTaskKey()); - } - - public void testLocalTaskSort() { - final TaskListSorter sorter = new TaskListSorter(); - ITask task1 = new LocalTask("1", "task1"); - ITask task2 = new LocalTask("2", "task2"); - ITask task3 = new LocalTask("3", "task3"); - ITask[] tasks = { task1, task2, task3 }; - Date start = new Date(); - task3.setCreationDate(start); - task2.setCreationDate(new Date(start.getTime() - 1)); - task1.setCreationDate(new Date(start.getTime() - 2)); - sorter.sort(new EmptyViewer(), tasks); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java deleted file mode 100644 index fedeb6c19..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java +++ /dev/null @@ -1,555 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskCategory; -import org.eclipse.mylyn.internal.tasks.core.AbstractTaskContainer; -import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.ITaskContainer; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Mik Kersten - * @author Rob Elves - * @author Shawn Minto - */ -public class TaskListTest extends TestCase { - - private TaskList taskList; - - @Override - protected void setUp() throws Exception { - taskList = new TaskList(); - } - - public void testGetCategories() { - taskList.addCategory(new TaskCategory("a")); - assertEquals(2, taskList.getCategories().size()); - } - - public void testLocalSubTaskAdd() { - LocalTask task = new LocalTask("1", "summary"); - LocalTask subTask = new LocalTask("2", "subTask"); - - taskList.addTask(task); - taskList.addTask(subTask, task); - - assertEquals(1, task.getChildren().size()); - assertEquals(subTask, task.getChildren().iterator().next()); - } - - public void testLocalTaskAddToSelf() { - LocalTask task = new LocalTask("1", "summary"); - - taskList.addTask(task); - assertFalse(taskList.addTask(task, task)); - assertEquals(0, task.getChildren().size()); - assertEquals(1, task.getParentContainers().size()); - } - - public void testLocalSubTaskAddCycle() { - LocalTask task = new LocalTask("1", "summary"); - LocalTask subTask = new LocalTask("2", "subTask"); - - taskList.addTask(task); - taskList.addTask(subTask, task); - taskList.addTask(task, subTask); - - assertEquals(2, taskList.getAllTasks().size()); - assertEquals(1, taskList.getCategories().size()); - assertEquals(1, taskList.getCategories().iterator().next().getChildren().size()); - assertEquals(1, task.getChildren().size()); - assertEquals(0, subTask.getChildren().size()); - assertEquals(subTask, task.getChildren().iterator().next()); - } - - public void testLocalSubTaskAddDeepCycle() { - LocalTask task = new LocalTask("1", "summary"); - LocalTask subTask1 = new LocalTask("2", "subTask"); - LocalTask subTask2 = new LocalTask("3", "subTask"); - LocalTask subTask3 = new LocalTask("4", "subTask"); - LocalTask subTask4 = new LocalTask("5", "subTask"); - LocalTask subTask5 = new LocalTask("6", "subTask"); - LocalTask subTask6 = new LocalTask("7", "subTask"); - LocalTask subTask7 = new LocalTask("8", "subTask"); - LocalTask subTask8 = new LocalTask("9", "subTask"); - LocalTask subTask9 = new LocalTask("10", "subTask"); - LocalTask subTask10 = new LocalTask("11", "subTask"); - - taskList.addTask(task); - taskList.addTask(subTask1, task); - taskList.addTask(subTask2, subTask1); - taskList.addTask(subTask3, subTask2); - taskList.addTask(subTask4, subTask3); - taskList.addTask(subTask5, subTask4); - taskList.addTask(subTask6, subTask5); - taskList.addTask(subTask7, subTask6); - taskList.addTask(subTask8, subTask7); - taskList.addTask(subTask9, subTask8); - taskList.addTask(subTask10, subTask9); - - taskList.addTask(task, subTask10); - - assertEquals(11, taskList.getAllTasks().size()); - assertEquals(1, taskList.getCategories().size()); - assertEquals(1, taskList.getCategories().iterator().next().getChildren().size()); - assertEquals(1, task.getChildren().size()); - assertEquals(subTask1, task.getChildren().iterator().next()); - - assertEquals(1, subTask1.getChildren().size()); - assertEquals(subTask2, subTask1.getChildren().iterator().next()); - - assertEquals(1, subTask2.getChildren().size()); - assertEquals(subTask3, subTask2.getChildren().iterator().next()); - - assertEquals(1, subTask3.getChildren().size()); - assertEquals(subTask4, subTask3.getChildren().iterator().next()); - - assertEquals(1, subTask4.getChildren().size()); - assertEquals(subTask5, subTask4.getChildren().iterator().next()); - - assertEquals(1, subTask5.getChildren().size()); - assertEquals(subTask6, subTask5.getChildren().iterator().next()); - - assertEquals(1, subTask6.getChildren().size()); - assertEquals(subTask7, subTask6.getChildren().iterator().next()); - - assertEquals(1, subTask7.getChildren().size()); - assertEquals(subTask8, subTask7.getChildren().iterator().next()); - - assertEquals(1, subTask8.getChildren().size()); - assertEquals(subTask9, subTask8.getChildren().iterator().next()); - - assertEquals(1, subTask9.getChildren().size()); - assertEquals(subTask10, subTask9.getChildren().iterator().next()); - - assertEquals(0, subTask10.getChildren().size()); - } - - public void testLocalSubTaskAddMaxSubTaskDepthDeepCycle() { - LocalTask task = new LocalTask("1", "summary"); - LocalTask subTask1 = new LocalTask("2", "subTask"); - LocalTask subTask2 = new LocalTask("3", "subTask"); - LocalTask subTask3 = new LocalTask("4", "subTask"); - LocalTask subTask4 = new LocalTask("5", "subTask"); - LocalTask subTask5 = new LocalTask("6", "subTask"); - LocalTask subTask6 = new LocalTask("7", "subTask"); - LocalTask subTask7 = new LocalTask("8", "subTask"); - LocalTask subTask8 = new LocalTask("9", "subTask"); - LocalTask subTask9 = new LocalTask("10", "subTask"); - LocalTask subTask10 = new LocalTask("11", "subTask"); - LocalTask subTask11 = new LocalTask("12", "subTask"); - - taskList.addTask(task); - taskList.addTask(subTask1, task); - taskList.addTask(subTask2, subTask1); - taskList.addTask(subTask3, subTask2); - taskList.addTask(subTask4, subTask3); - taskList.addTask(subTask5, subTask4); - taskList.addTask(subTask6, subTask5); - taskList.addTask(subTask7, subTask6); - taskList.addTask(subTask8, subTask7); - taskList.addTask(subTask9, subTask8); - taskList.addTask(subTask10, subTask9); - taskList.addTask(subTask11, subTask10); - - taskList.addTask(task, subTask11); - - assertEquals(12, taskList.getAllTasks().size()); - assertEquals(1, taskList.getCategories().size()); - assertEquals(1, taskList.getCategories().iterator().next().getChildren().size()); - assertEquals(1, task.getChildren().size()); - assertEquals(subTask1, task.getChildren().iterator().next()); - - assertEquals(1, subTask1.getChildren().size()); - assertEquals(subTask2, subTask1.getChildren().iterator().next()); - - assertEquals(1, subTask2.getChildren().size()); - assertEquals(subTask3, subTask2.getChildren().iterator().next()); - - assertEquals(1, subTask3.getChildren().size()); - assertEquals(subTask4, subTask3.getChildren().iterator().next()); - - assertEquals(1, subTask4.getChildren().size()); - assertEquals(subTask5, subTask4.getChildren().iterator().next()); - - assertEquals(1, subTask5.getChildren().size()); - assertEquals(subTask6, subTask5.getChildren().iterator().next()); - - assertEquals(1, subTask6.getChildren().size()); - assertEquals(subTask7, subTask6.getChildren().iterator().next()); - - assertEquals(1, subTask7.getChildren().size()); - assertEquals(subTask8, subTask7.getChildren().iterator().next()); - - assertEquals(1, subTask8.getChildren().size()); - assertEquals(subTask9, subTask8.getChildren().iterator().next()); - - assertEquals(1, subTask9.getChildren().size()); - assertEquals(subTask10, subTask9.getChildren().iterator().next()); - - assertEquals(1, subTask10.getChildren().size()); - assertEquals(subTask11, subTask10.getChildren().iterator().next()); - - assertEquals(0, subTask11.getChildren().size()); - } - - public void testLocalSubTaskAddReallyDeepCycle() { - LocalTask task = new LocalTask("1", "summary"); - LocalTask subTask1 = new LocalTask("2", "subTask"); - LocalTask subTask2 = new LocalTask("3", "subTask"); - LocalTask subTask3 = new LocalTask("4", "subTask"); - LocalTask subTask4 = new LocalTask("5", "subTask"); - LocalTask subTask5 = new LocalTask("6", "subTask"); - LocalTask subTask6 = new LocalTask("7", "subTask"); - LocalTask subTask7 = new LocalTask("8", "subTask"); - LocalTask subTask8 = new LocalTask("9", "subTask"); - LocalTask subTask9 = new LocalTask("10", "subTask"); - LocalTask subTask10 = new LocalTask("11", "subTask"); - LocalTask subTask11 = new LocalTask("12", "subTask"); - LocalTask subTask12 = new LocalTask("13", "subTask"); - LocalTask subTask13 = new LocalTask("14", "subTask"); - LocalTask subTask14 = new LocalTask("15", "subTask"); - LocalTask subTask15 = new LocalTask("16", "subTask"); - LocalTask subTask16 = new LocalTask("17", "subTask"); - LocalTask subTask17 = new LocalTask("18", "subTask"); - LocalTask subTask18 = new LocalTask("19", "subTask"); - - taskList.addTask(task); - taskList.addTask(subTask1, task); - taskList.addTask(subTask2, subTask1); - taskList.addTask(subTask3, subTask2); - taskList.addTask(subTask4, subTask3); - taskList.addTask(subTask5, subTask4); - taskList.addTask(subTask6, subTask5); - taskList.addTask(subTask7, subTask6); - taskList.addTask(subTask8, subTask7); - taskList.addTask(subTask9, subTask8); - taskList.addTask(subTask10, subTask9); - taskList.addTask(subTask11, subTask10); - taskList.addTask(subTask12, subTask11); - taskList.addTask(subTask13, subTask12); - taskList.addTask(subTask14, subTask13); - taskList.addTask(subTask15, subTask14); - taskList.addTask(subTask16, subTask15); - taskList.addTask(subTask17, subTask16); - taskList.addTask(subTask18, subTask17); - - taskList.addTask(task, subTask18); - - assertEquals(19, taskList.getAllTasks().size()); - assertEquals(1, taskList.getCategories().size()); - assertEquals(1, taskList.getCategories().iterator().next().getChildren().size()); - assertEquals(1, task.getChildren().size()); - assertEquals(subTask1, task.getChildren().iterator().next()); - - assertEquals(1, subTask1.getChildren().size()); - assertEquals(subTask2, subTask1.getChildren().iterator().next()); - - assertEquals(1, subTask2.getChildren().size()); - assertEquals(subTask3, subTask2.getChildren().iterator().next()); - - assertEquals(1, subTask3.getChildren().size()); - assertEquals(subTask4, subTask3.getChildren().iterator().next()); - - assertEquals(1, subTask4.getChildren().size()); - assertEquals(subTask5, subTask4.getChildren().iterator().next()); - - assertEquals(1, subTask5.getChildren().size()); - assertEquals(subTask6, subTask5.getChildren().iterator().next()); - - assertEquals(1, subTask6.getChildren().size()); - assertEquals(subTask7, subTask6.getChildren().iterator().next()); - - assertEquals(1, subTask7.getChildren().size()); - assertEquals(subTask8, subTask7.getChildren().iterator().next()); - - assertEquals(1, subTask8.getChildren().size()); - assertEquals(subTask9, subTask8.getChildren().iterator().next()); - - assertEquals(1, subTask9.getChildren().size()); - assertEquals(subTask10, subTask9.getChildren().iterator().next()); - - assertEquals(1, subTask10.getChildren().size()); - assertEquals(subTask11, subTask10.getChildren().iterator().next()); - - assertEquals(1, subTask11.getChildren().size()); - assertEquals(subTask12, subTask11.getChildren().iterator().next()); - - assertEquals(1, subTask11.getChildren().size()); - assertEquals(subTask12, subTask11.getChildren().iterator().next()); - - assertEquals(1, subTask12.getChildren().size()); - assertEquals(subTask13, subTask12.getChildren().iterator().next()); - - assertEquals(1, subTask13.getChildren().size()); - assertEquals(subTask14, subTask13.getChildren().iterator().next()); - - assertEquals(1, subTask14.getChildren().size()); - assertEquals(subTask15, subTask14.getChildren().iterator().next()); - - assertEquals(1, subTask15.getChildren().size()); - assertEquals(subTask16, subTask15.getChildren().iterator().next()); - - assertEquals(1, subTask16.getChildren().size()); - assertEquals(subTask17, subTask16.getChildren().iterator().next()); - - assertEquals(1, subTask17.getChildren().size()); - assertEquals(subTask18, subTask17.getChildren().iterator().next()); - - assertEquals(0, subTask18.getChildren().size()); - } - - public void testQueryAndCategoryNameClash() { - TaskCategory category = new TaskCategory("TestClash"); - taskList.addCategory(category); - assertTrue(taskList.getCategories().contains(category)); - assertEquals(2, taskList.getCategories().size()); - - MockRepositoryQuery query = new MockRepositoryQuery("TestClash"); - taskList.addQuery(query); - assertTrue(taskList.getCategories().contains(category)); - assertEquals(2, taskList.getCategories().size()); - } - - public void testMoveToRoot() { - AbstractTask task1 = new LocalTask("t1", "t1"); - taskList.addTask(task1, taskList.getUnmatchedContainer(LocalRepositoryConnector.REPOSITORY_URL)); - assertEquals(1, taskList.getDefaultCategory().getChildren().size()); - assertEquals(taskList.getDefaultCategory(), TaskCategory.getParentTaskCategory(task1)); - - TaskCategory cat1 = new TaskCategory("c1"); - taskList.addCategory(cat1); - - taskList.addTask(task1, cat1); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - assertEquals(cat1, TaskCategory.getParentTaskCategory(task1)); - - taskList.addTask(task1, taskList.getUnmatchedContainer(LocalRepositoryConnector.REPOSITORY_URL)); - assertEquals(1, taskList.getDefaultCategory().getChildren().size()); - assertEquals(0, cat1.getChildren().size()); - assertEquals(taskList.getDefaultCategory(), TaskCategory.getParentTaskCategory(task1)); - } - - public void testDeleteCategory() { - assertEquals(1, taskList.getCategories().size()); - TaskCategory category = new TaskCategory("cat"); - taskList.addCategory(category); - assertEquals(2, taskList.getCategories().size()); - taskList.deleteCategory(category); - assertEquals(1, taskList.getCategories().size()); - } - - public void testDeleteCategoryMovesTasksToRoot() { - AbstractTask task = new MockTask("delete"); - TaskCategory category = new TaskCategory("cat"); - taskList.addCategory(category); - taskList.addTask(task, category); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - taskList.deleteCategory(category); - taskList.getUnmatchedContainer(MockRepositoryConnector.REPOSITORY_URL); - } - - @SuppressWarnings("deprecation") - public void testRenameCategory() { - TaskCategory category = new TaskCategory("handle", "cat"); - taskList.addCategory(category); - assertEquals(2, taskList.getCategories().size()); - taskList.renameContainer(category, "newDescription"); - AbstractTaskCategory container = taskList.getContainerForHandle("handle"); - assertNotNull(container); - assertEquals("newDescription", container.getSummary()); - taskList.deleteCategory(container); - assertEquals(1, taskList.getCategories().size()); - } - - @SuppressWarnings("deprecation") - public void testDeleteCategoryAfterRename() { - String newDesc = "newDescription"; - assertNotNull(taskList); - assertEquals(1, taskList.getCategories().size()); - TaskCategory category = new TaskCategory("cat"); - taskList.addCategory(category); - assertEquals(2, taskList.getCategories().size()); - taskList.renameContainer(category, newDesc); - taskList.deleteCategory(category); - assertEquals(1, taskList.getCategories().size()); - } - - public void testCreateSameCategoryName() { - assertEquals(1, taskList.getCategories().size()); - TaskCategory category = new TaskCategory("cat"); - taskList.addCategory(category); - assertEquals(2, taskList.getCategories().size()); - TaskCategory category2 = new TaskCategory("cat"); - try { - taskList.addCategory(category2); - fail("expected IllegalArgumentException"); - } catch (IllegalArgumentException e) { - } - assertEquals(2, taskList.getCategories().size()); - ITaskContainer container = taskList.getContainerForHandle("cat"); - assertEquals(container, category); - } - - public void testDeleteRootTask() { - AbstractTask task = new LocalTask("1", "label"); - taskList.addTask(task); - taskList.deleteTask(task); - assertEquals(0, taskList.getAllTasks().size()); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - } - - public void testDeleteFromCategory() { - assertEquals(0, taskList.getAllTasks().size()); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - //assertEquals(0, taskList.getArchiveContainer().getChildren().size()); - assertEquals(1, taskList.getCategories().size()); - - AbstractTask task = new LocalTask("1", "label"); - TaskCategory category = new TaskCategory("handleAndDescription"); - taskList.addTask(task); - assertEquals(1, taskList.getDefaultCategory().getChildren().size()); - - taskList.addCategory(category); - taskList.addTask(task, category); - assertEquals(2, taskList.getCategories().size()); - assertEquals(1, category.getChildren().size()); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - assertEquals(1, taskList.getAllTasks().size()); - - taskList.deleteTask(task); - assertEquals(0, taskList.getAllTasks().size()); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - assertEquals(0, category.getChildren().size()); - } - - public void testDeleteRepositoryTask() { - String repositoryUrl = "http://somewhere.com"; - MockTask task = new MockTask(repositoryUrl, "1"); - taskList.addTask(task, taskList.getDefaultCategory()); - MockRepositoryQuery query = new MockRepositoryQuery("query"); - taskList.addQuery(query); - taskList.addTask(task, query); - assertEquals(1, taskList.getAllTasks().size()); - assertEquals(1, taskList.getDefaultCategory().getChildren().size()); - taskList.deleteTask(task); - assertEquals(0, taskList.getAllTasks().size()); - assertEquals(0, taskList.getDefaultCategory().getChildren().size()); - } - - public void testgetQueriesAndHitsForHandle() { - MockTask hit1 = new MockTask("1"); - MockTask hit2 = new MockTask("2"); - MockTask hit3 = new MockTask("3"); - - MockTask hit1twin = new MockTask("1"); - MockTask hit2twin = new MockTask("2"); - MockTask hit3twin = new MockTask("3"); - - MockRepositoryQuery query1 = new MockRepositoryQuery("query1"); - MockRepositoryQuery query2 = new MockRepositoryQuery("query2"); - - taskList.addQuery(query1); - taskList.addQuery(query2); - taskList.addTask(hit1, query1); - taskList.addTask(hit2, query1); - taskList.addTask(hit3, query1); - - assertEquals(3, query1.getChildren().size()); - - taskList.addTask(hit1twin, query2); - taskList.addTask(hit2twin, query2); - taskList.addTask(hit3twin, query2); - - assertEquals(3, query2.getChildren().size()); - - Set<AbstractTaskContainer> queriesReturned = hit1.getParentContainers(); - assertNotNull(queriesReturned); - assertEquals(2, queriesReturned.size()); - assertTrue(queriesReturned.contains(query1)); - assertTrue(queriesReturned.contains(query2)); - } - - public void testUpdateQueryHits() { - MockTask hit1 = new MockTask("1"); - MockTask hit2 = new MockTask("2"); - MockTask hit3 = new MockTask("3"); - - MockTask hit1twin = new MockTask("1"); - MockTask hit2twin = new MockTask("2"); - MockTask hit3twin = new MockTask("3"); - - MockRepositoryQuery query1 = new MockRepositoryQuery("query1"); - taskList.addQuery(query1); - - taskList.addTask(hit1, query1); - taskList.addTask(hit2, query1); - taskList.addTask(hit3, query1); - - taskList.addTask(hit1twin, query1); - taskList.addTask(hit2twin, query1); - taskList.addTask(hit3twin, query1); - - assertEquals(3, query1.getChildren().size()); - for (ITask child : query1.getChildren()) { - taskList.removeFromContainer(query1, child); - } - assertEquals(0, query1.getChildren().size()); - taskList.addTask(hit1, query1); - taskList.addTask(hit2, query1); - assertEquals(2, query1.getChildren().size()); - hit1.setNotified(true); - - taskList.addTask(hit1twin, query1); - taskList.addTask(hit2twin, query1); - taskList.addTask(hit3twin, query1); - assertEquals(3, query1.getChildren().size()); - assertTrue(query1.getChildren().contains(hit1twin)); - assertTrue(query1.getChildren().contains(hit2twin)); - assertTrue(query1.getChildren().contains(hit3twin)); - for (ITask hit : query1.getChildren()) { - if (hit.equals(hit1twin)) { - assertTrue(((AbstractTask) hit).isNotified()); - } else { - assertFalse(((AbstractTask) hit).isNotified()); - } - } - } - - public void testGetRepositoryTasks() { - String repositoryUrl = "https://bugs.eclipse.org/bugs"; - String bugNumber = "106939"; - MockTask task1 = new MockTask(repositoryUrl, bugNumber); - taskList.addTask(task1); - MockTask task2 = new MockTask("https://unresolved", bugNumber); - taskList.addTask(task2); - - assertEquals(2, taskList.getAllTasks().size()); - Set<ITask> tasksReturned = taskList.getTasks(repositoryUrl); - assertNotNull(tasksReturned); - assertEquals(1, tasksReturned.size()); - assertTrue(tasksReturned.contains(task1)); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListUiTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListUiTest.java deleted file mode 100644 index ba3de5558..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListUiTest.java +++ /dev/null @@ -1,357 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Ken Sueda 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 - * - * Contributors: - * Ken Sueda - initial API and implementation - * Tasktop Technologies - improvements - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.Date; -import java.util.List; -import java.util.Set; -import java.util.Vector; - -import junit.framework.TestCase; - -import org.eclipse.jface.action.IContributionItem; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.ITaskListChangeListener; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.MoveToCategoryMenuContributor; -import org.eclipse.mylyn.internal.tasks.ui.TaskPriorityFilter; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.actions.NewCategoryAction; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.tasks.core.IRepositoryElement; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.ITask.PriorityLevel; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; -import org.eclipse.swt.widgets.TreeItem; - -/** - * Tests TaskListView's filtering mechanism. - * - * @author Ken Sueda - * @author Steffen Pingel - */ -public class TaskListUiTest extends TestCase { - - private TaskCategory cat1 = null; - - private AbstractTask cat1task1 = null; - - private AbstractTask cat1task2 = null; - - private AbstractTask cat1task3 = null; - - private AbstractTask cat1task4 = null; - - private AbstractTask cat1task5 = null; - - private AbstractTask cat1task1sub1 = null; - - private TaskCategory cat2 = null; - - private AbstractTask cat2task1 = null; - - private AbstractTask cat2task2 = null; - - private AbstractTask cat2task3 = null; - - private AbstractTask cat2task4 = null; - - private AbstractTask cat2task5 = null; - - private AbstractTask cat2task1sub1 = null; - - private TaskList taskList; - - private final static int CHECK_COMPLETE_FILTER = 1; - - private final static int CHECK_INCOMPLETE_FILTER = 2; - - private final static int CHECK_PRIORITY_FILTER = 3; - - @Override - public void setUp() throws Exception { - taskList = TasksUiPlugin.getTaskList(); - - // make sure no unmatched folders exist - TaskTestUtil.resetTaskListAndRepositories(); - TasksUiUtil.openTasksViewInActivePerspective(); - - cat1 = new TaskCategory("First Category"); - taskList.addCategory(cat1); - - cat1task1 = TasksUiInternal.createNewLocalTask("task 1"); - cat1task1.setPriority(PriorityLevel.P1.toString()); - cat1task1.setCompletionDate(new Date()); - taskList.addTask(cat1task1, cat1); - - cat1task1sub1 = TasksUiInternal.createNewLocalTask("sub task 1"); - cat1task1sub1.setPriority(PriorityLevel.P1.toString()); - cat1task1sub1.setCompletionDate(new Date()); - taskList.addTask(cat1task1sub1, cat1task1); - - cat1task2 = TasksUiInternal.createNewLocalTask("task 2"); - cat1task2.setPriority(PriorityLevel.P2.toString()); - taskList.addTask(cat1task2, cat1); - - cat1task3 = TasksUiInternal.createNewLocalTask("task 3"); - cat1task3.setPriority(PriorityLevel.P3.toString()); - cat1task3.setCompletionDate(new Date()); - taskList.addTask(cat1task3, cat1); - - cat1task4 = TasksUiInternal.createNewLocalTask("task 4"); - cat1task4.setPriority(PriorityLevel.P4.toString()); - taskList.addTask(cat1task4, cat1); - - cat1task5 = TasksUiInternal.createNewLocalTask("task 5"); - cat1task5.setPriority(PriorityLevel.P5.toString()); - cat1task5.setCompletionDate(new Date()); - taskList.addTask(cat1task5, cat1); - - assertEquals(cat1.getChildren().size(), 5); - - cat2 = new TaskCategory("Second Category"); - taskList.addCategory(cat2); - - cat2task1 = TasksUiInternal.createNewLocalTask("task 1"); - cat2task1.setPriority(PriorityLevel.P1.toString()); - taskList.addTask(cat2task1, cat2); - - cat2task1sub1 = TasksUiInternal.createNewLocalTask("sub task 1"); - cat2task1sub1.setPriority(PriorityLevel.P1.toString()); - taskList.addTask(cat2task1sub1, cat2task1); - - cat2task2 = TasksUiInternal.createNewLocalTask("task 2"); - cat2task2.setPriority(PriorityLevel.P2.toString()); - cat2task2.setCompletionDate(new Date()); - taskList.addTask(cat2task2, cat2); - - cat2task3 = TasksUiInternal.createNewLocalTask("task 3"); - cat2task3.setPriority(PriorityLevel.P3.toString()); - taskList.addTask(cat2task3, cat2); - - cat2task4 = TasksUiInternal.createNewLocalTask("task 4"); - cat2task4.setPriority(PriorityLevel.P4.toString()); - cat2task4.setCompletionDate(new Date()); - taskList.addTask(cat2task4, cat2); - - cat2task5 = TasksUiInternal.createNewLocalTask("task 5"); - cat2task5.setPriority(PriorityLevel.P5.toString()); - taskList.addTask(cat2task5, cat2); - } - - @Override - public void tearDown() throws Exception { - // clear everything - } - - public void testUiFilter() { - assertNotNull(TaskListView.getFromActivePerspective()); - TreeViewer viewer = TaskListView.getFromActivePerspective().getViewer(); - TaskListView.getFromActivePerspective().addFilter(TaskListView.getFromActivePerspective().getCompleteFilter()); - viewer.refresh(); - viewer.expandAll(); - TreeItem[] items = viewer.getTree().getItems(); - assertTrue(checkFilter(CHECK_COMPLETE_FILTER, items)); - TaskListView.getFromActivePerspective().removeFilter( - TaskListView.getFromActivePerspective().getCompleteFilter()); - - TaskPriorityFilter filter = TaskListView.getFromActivePerspective().getPriorityFilter(); - filter.displayPrioritiesAbove("P2"); - TaskListView.getFromActivePerspective().addFilter(filter); - viewer.refresh(); - viewer.expandAll(); - items = viewer.getTree().getItems(); - - // check priority tasks - assertTrue(checkFilter(CHECK_PRIORITY_FILTER, items)); - } - - /** - * Tests that TaskEditors remove all listeners when closed - */ - public void testListenersRemoved() { - int numListenersBefore = 0; - int numListenersDuring = 0; - int numListenersAfter = 0; - - Set<ITaskListChangeListener> listeners = taskList.getChangeListeners(); - numListenersBefore = listeners.size(); - - TasksUiUtil.openTask(cat1task1); - TasksUiUtil.openTask(cat1task2); - - listeners = taskList.getChangeListeners(); - numListenersDuring = listeners.size(); - - assertEquals(numListenersDuring, numListenersBefore + 2); - - TasksUiPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false); - - listeners = taskList.getChangeListeners(); - numListenersAfter = listeners.size(); - assertEquals(numListenersBefore, numListenersAfter); - } - - /** - * Tests whether an additional NewCategory action is added to the category - */ - public void testGetSubMenuManagerContainsAllCategoriesPlusNewCategory() { - // setup - MoveToCategoryMenuContributor moveToMenuContrib = new MoveToCategoryMenuContributor(); - List<IRepositoryElement> selectedElements = new Vector<IRepositoryElement>(); - selectedElements.add(cat1task1); - int numCategories = taskList.getCategories().size(); - int numSeparators = 1; - // adding a separator and the New Category... action - int expectedNrOfSubMenuEntries = numCategories + numSeparators + 1; - NewCategoryAction newCatActon = new NewCategoryAction(); - - // execute sytem under test - MenuManager menuManager = moveToMenuContrib.getSubMenuManager(selectedElements); - IContributionItem[] items = menuManager.getItems(); - IContributionItem item = items[menuManager.getItems().length - 1]; - - // +1 for separator - assertEquals(expectedNrOfSubMenuEntries, menuManager.getItems().length); - - if (item instanceof NewCategoryAction) { - NewCategoryAction action = (NewCategoryAction) item; - assertEquals(newCatActon.getText(), action.getText()); - } - - // teardown - } - - /** - * Tests visibility of SubMenuManager - */ - public void testVisibilityOfSubMenuManager() { - //setup - MoveToCategoryMenuContributor moveToMenuContrib = new MoveToCategoryMenuContributor(); - MenuManager menuManager = null; - List<IRepositoryElement> selectedElements = new Vector<IRepositoryElement>(); - selectedElements.add(cat1task1); - - List<IRepositoryElement> emptySelection = new Vector<IRepositoryElement>(); - - List<IRepositoryElement> categorySelection = new Vector<IRepositoryElement>(); - categorySelection.add(cat1); - - List<IRepositoryElement> querySelection = new Vector<IRepositoryElement>(); - querySelection.add(new MockRepositoryQuery("query", null)); - - //execute system under test & assert - menuManager = moveToMenuContrib.getSubMenuManager(selectedElements); - assertTrue(menuManager.isVisible()); - - menuManager = null; - menuManager = moveToMenuContrib.getSubMenuManager(emptySelection); - assertFalse(menuManager.isVisible()); - - menuManager = null; - menuManager = moveToMenuContrib.getSubMenuManager(categorySelection); - assertFalse(menuManager.isVisible()); - - menuManager = null; - menuManager = moveToMenuContrib.getSubMenuManager(querySelection); - assertFalse(menuManager.isVisible()); - - //teardown - } - - /** - * Tests that the category name is shown in the Move To Category submenu, even when they have an @ in their name - */ - public void testCategoryNameIsShownInMoveToCategoryAction() { - String catNameWithAtBefore = "@CatName"; - String catNameWithAtExpected = "@CatName@"; - String catNameWithAtActual = ""; - - String catNameNoAtBefore = "CatName"; - String catNameNoAtExpected = "CatName"; - String catNameNoAtActual = ""; - - MoveToCategoryMenuContributor menuContrib = new MoveToCategoryMenuContributor(); - - catNameWithAtActual = menuContrib.handleAcceleratorKeys(catNameWithAtBefore); - catNameNoAtActual = menuContrib.handleAcceleratorKeys(catNameNoAtBefore); - - assertEquals(catNameWithAtExpected, catNameWithAtActual); - assertEquals(catNameNoAtExpected, catNameNoAtActual); - } - - public boolean checkFilter(int type, TreeItem[] items) { - switch (type) { - case CHECK_COMPLETE_FILTER: - return checkCompleteIncompleteFilter(items, false); - case CHECK_INCOMPLETE_FILTER: - return checkCompleteIncompleteFilter(items, true); - case CHECK_PRIORITY_FILTER: - return checkPriorityFilter(items); - default: - return false; - } - } - - public boolean checkCompleteIncompleteFilter(TreeItem[] items, boolean checkComplete) { - assertEquals(3, items.length); - int count = 0; - for (TreeItem item : items) { - if (item.getData() instanceof TaskCategory) { - TreeItem[] sub = item.getItems(); - for (TreeItem element : sub) { - assertTrue(element.getData() instanceof ITask); - ITask task = (ITask) element.getData(); - if (checkComplete) { - assertTrue(task.isCompleted()); - } else { - assertFalse(task.isCompleted()); - } - count++; - } - } - } - assertTrue(count == 5); - return true; - } - - public boolean checkPriorityFilter(TreeItem[] items) { - assertTrue(items.length == 3); - int p2Count = 0; - int p1Count = 0; - for (TreeItem item : items) { - if (item.getData() instanceof TaskCategory) { - TreeItem[] sub = item.getItems(); - for (TreeItem element : sub) { - assertTrue(element.getData() instanceof ITask); - ITask task = (ITask) element.getData(); - assertTrue(task.getPriority().equals("P2") || task.getPriority().equals("P1")); - if (task.getPriority().equals("P2")) { - p2Count++; - } else { - p1Count++; - } - } - } - } - assertEquals(2, p1Count); - assertEquals(2, p2Count); - return true; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskMapperTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskMapperTest.java deleted file mode 100644 index e42b4abe3..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskMapperTest.java +++ /dev/null @@ -1,186 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttribute; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.core.data.TaskMapper; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; - -/** - * @author Steffen Pingel - */ -public class TaskMapperTest extends TestCase { - - private StubTaskAttributeMapper mapper; - - private TaskMapper source; - - private TaskMapper target; - - private TaskRepository taskRepository; - - @Override - protected void setUp() throws Exception { - taskRepository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - mapper = new StubTaskAttributeMapper(taskRepository); - source = new TaskMapper(new TaskData(mapper, "kind", "http://url", "1"), true); - target = new TaskMapper(new TaskData(mapper, "kind", "http://url", "2"), true); - } - - public void testCloneTaskCloneCommonAttributes() { - source.setDescription("sourceDescription"); - target.setDescription(""); - // TODO 3.1 remove (bug 247595) - target.getTaskData().getRoot().getAttribute(TaskAttribute.DESCRIPTION).getMetaData().setReadOnly(false); - target.merge(source); - assertEquals("sourceDescription", target.getDescription()); - assertEquals(null, target.getSummary()); - - source.setSummary("sourceSummary"); - target.setSummary(""); - // TODO 3.1 remove (bug 247595) - target.getTaskData().getRoot().getAttribute(TaskAttribute.SUMMARY).getMetaData().setReadOnly(false); - target.merge(source); - assertEquals("sourceSummary", target.getSummary()); - } - - public void testCloneTaskDataAttributeWithValues() { - source.getTaskData().getRoot().createAttribute("key1").addValue("value1"); - target.merge(source); - assertEquals(null, target.getTaskData().getRoot().getAttribute("key1")); - - target.getTaskData().getRoot().createAttribute("key1").addValue("value2"); - target.merge(source); - assertEquals("value1", target.getTaskData().getRoot().getAttribute("key1").getValue()); - - TaskAttribute attribute = source.getTaskData().getRoot().createAttribute("multi"); - attribute.addValue("v1"); - attribute.addValue("v2"); - target.getTaskData().getRoot().createAttribute("multi"); - target.merge(source); - assertEquals("value1", target.getTaskData().getRoot().getAttribute("key1").getValue()); - List<String> values = target.getTaskData().getRoot().getAttribute("multi").getValues(); - assertEquals(2, values.size()); - assertEquals("v1", values.get(0)); - assertEquals("v2", values.get(1)); - } - - public void testCloneTaskDataAttributeWithOptions() { - TaskAttribute sourceAttribute = source.getTaskData().getRoot().createAttribute("key"); - sourceAttribute.setValue("o2"); - sourceAttribute.putOption("o1", ""); - sourceAttribute.putOption("o2", ""); - target.getTaskData().getRoot().createAttribute("key"); - target.merge(source); - assertEquals("o2", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // test target with options that don't contain value - TaskAttribute targetAttribute = target.getTaskData().getRoot().getAttribute("key"); - targetAttribute.putOption("o3", ""); - target.merge(source); - assertEquals("", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // test target with options that contain value - targetAttribute.putOption("o2", ""); - target.merge(source); - assertEquals("o2", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // test multiple values - sourceAttribute.addValue("o3"); - target.merge(source); - List<String> values = targetAttribute.getValues(); - assertEquals(2, values.size()); - assertEquals("o2", values.get(0)); - assertEquals("o3", values.get(1)); - } - - public void testCloneTaskDifferentRepositoryTypesCloneCommonAttributes() { - target = new TaskMapper(new TaskData(mapper, "otherkind", "http://url", "2"), true); - - source.setDescription("sourceDescription"); - target.setDescription(""); - // TODO 3.1 remove (bug 247595) - target.getTaskData().getRoot().getAttribute(TaskAttribute.DESCRIPTION).getMetaData().setReadOnly(false); - target.merge(source); - assertEquals("sourceDescription", target.getDescription()); - assertEquals(null, target.getSummary()); - - source.setSummary("sourceSummary"); - target.merge(source); - assertEquals("sourceSummary", target.getSummary()); - } - - public void testCloneTaskDifferentRepositoryTypesCloneMappedAttribues() { - StubTaskAttributeMapper targetMapper = new StubTaskAttributeMapper(taskRepository); - target = new TaskMapper(new TaskData(targetMapper, "otherkind", "http://url", "2"), true); - - // key is not part of common schema - source.getTaskData().getRoot().createAttribute("key").setValue("source"); - target.getTaskData().getRoot().createAttribute("key").setValue("target"); - target.merge(source); - assertEquals("target", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // map key in source factory only - mapper.attributeMap.put(TaskAttribute.COMPONENT, "key"); - target.merge(source); - assertEquals("target", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // map key in target factory to different key - targetMapper.attributeMap.put(TaskAttribute.PRODUCT, "key"); - target.merge(source); - assertEquals("target", target.getTaskData().getRoot().getAttribute("key").getValue()); - - // map key in both factories - targetMapper.attributeMap.put(TaskAttribute.COMPONENT, "key"); - target.merge(source); - assertEquals("source", target.getTaskData().getRoot().getAttribute("key").getValue()); - } - - public void testNoCreationOfAttributes() { - target = new TaskMapper(new TaskData(mapper, "otherkind", "http://url", "2")); - target.setDescription("abc"); - assertNull(target.getTaskData().getRoot().getAttribute(TaskAttribute.DESCRIPTION)); - assertEquals(0, target.getTaskData().getRoot().getAttributes().size()); - - target = new TaskMapper(new TaskData(mapper, "otherkind", "http://url", "2"), false); - target.setDescription("abc"); - assertNull(target.getTaskData().getRoot().getAttribute(TaskAttribute.DESCRIPTION)); - assertEquals(0, target.getTaskData().getRoot().getAttributes().size()); - } - - private class StubTaskAttributeMapper extends TaskAttributeMapper { - - public StubTaskAttributeMapper(TaskRepository taskRepository) { - super(taskRepository); - } - - private final Map<String, String> attributeMap = new HashMap<String, String>(); - - @Override - public String mapToRepositoryKey(TaskAttribute parent, String key) { - String mappedKey = attributeMap.get(key); - return (mappedKey != null) ? mappedKey : key; - } - - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskPlanningEditorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskPlanningEditorTest.java deleted file mode 100644 index 6178b9846..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskPlanningEditorTest.java +++ /dev/null @@ -1,112 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.editors.TaskPlanningEditor; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; -import org.eclipse.mylyn.tasks.ui.editors.TaskEditor; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.PlatformUI; - -/** - * @author Rob Elves - */ -public class TaskPlanningEditorTest extends TestCase { - - private static final String MOCK_LABEL = "label"; - - private static final String DESCRIPTION = "summary"; - - private static final String NEW_DESCRIPTION = "new summary"; - - @Override - protected void setUp() throws Exception { - TasksUiPlugin.getDefault().getLocalTaskRepository(); - } - - @Override - protected void tearDown() throws Exception { - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false); - TasksUiPlugin.getRepositoryManager().clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - TaskTestUtil.resetTaskList(); - } - - public void testDirtyOnEdit() { - LocalTask task = new LocalTask("1", MOCK_LABEL); - task.setSummary(DESCRIPTION); - TasksUiPlugin.getTaskList().addTask(task); - TasksUiUtil.openTask(task); - IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); - assertTrue(page.getActiveEditor() instanceof TaskEditor); - TaskEditor taskEditor = (TaskEditor) page.getActiveEditor(); - assertTrue(taskEditor.getActivePageInstance() instanceof TaskPlanningEditor); - TaskPlanningEditor editor = (TaskPlanningEditor) taskEditor.getActivePageInstance(); - assertFalse(editor.isDirty()); - editor.setNotes("notes"); - assertTrue(editor.isDirty()); - editor.doSave(new NullProgressMonitor()); - assertFalse(editor.isDirty()); - editor.setDescription(NEW_DESCRIPTION); - assertTrue(editor.isDirty()); - editor.doSave(new NullProgressMonitor()); - assertEquals(NEW_DESCRIPTION, task.getSummary()); - assertFalse(editor.isDirty()); - } - - public void testNotDirtyOnRename() { - LocalTask task = new LocalTask("1", MOCK_LABEL); - task.setSummary(DESCRIPTION); - TasksUiPlugin.getTaskList().addTask(task); - TasksUiUtil.openTask(task); - IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); - assertTrue(page.getActiveEditor() instanceof TaskEditor); - TaskEditor taskEditor = (TaskEditor) page.getActiveEditor(); - assertTrue(taskEditor.getActivePageInstance() instanceof TaskPlanningEditor); - TaskPlanningEditor editor = (TaskPlanningEditor) taskEditor.getActivePageInstance(); - assertFalse(editor.isDirty()); - assertEquals(DESCRIPTION, editor.getDescription()); - task.setSummary(NEW_DESCRIPTION); - editor.updateTaskData(task); - //assertEquals(NEW_DESCRIPTION, editor.getFormTitle()); - assertEquals(NEW_DESCRIPTION, editor.getDescription()); - assertFalse(editor.isDirty()); - } - - /** - * Test that if editor is dirty and external rename happens editor remains dirty - */ - public void testRenameInDirtyState() { - LocalTask task = new LocalTask("1", MOCK_LABEL); - task.setSummary(DESCRIPTION); - TasksUiPlugin.getTaskList().addTask(task); - TasksUiUtil.openTask(task); - IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); - assertTrue(page.getActiveEditor() instanceof TaskEditor); - TaskEditor taskEditor = (TaskEditor) page.getActiveEditor(); - assertTrue(taskEditor.getActivePageInstance() instanceof TaskPlanningEditor); - - TaskPlanningEditor editor = (TaskPlanningEditor) taskEditor.getActivePageInstance(); - assertFalse(editor.isDirty()); - editor.setDescription(NEW_DESCRIPTION); - assertTrue(editor.isDirty()); - - task.setSummary(NEW_DESCRIPTION + "2"); - editor.updateTaskData(task); - assertEquals(NEW_DESCRIPTION, editor.getDescription()); - assertTrue(editor.isDirty()); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoriesExternalizerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoriesExternalizerTest.java deleted file mode 100644 index bc906a9e1..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoriesExternalizerTest.java +++ /dev/null @@ -1,111 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - * Erik Ramfelt - bug 168782 - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.util.HashSet; -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.TaskRepositoriesExternalizer; -import org.eclipse.mylyn.tasks.core.TaskRepository; - -/** - * @author Rob Elves - */ -public class TaskRepositoriesExternalizerTest extends TestCase { - - private Set<TaskRepository> taskRepositories = new HashSet<TaskRepository>(); - - private static final String REP_TYPE = "bugzilla"; - - private static final String REPURL1 = "http://somewhere1"; - - private static final String REPURL2 = "http://somewhere2"; - - private static final String TIMEZONE = "test time zone"; - - private static final String VERSION = "test version"; - - private static final String ENCODING = "test encoding"; - - private static final String TIMESTAMP = "test time stamp"; - - private static final String SUFFIX = "2"; - - private TaskRepository repository1; - - private TaskRepository repository2; - - @Override - protected void setUp() throws Exception { - repository1 = new TaskRepository(REP_TYPE, REPURL1); - repository2 = new TaskRepository("bugzilla", REPURL2); - - repository1.setTimeZoneId(TIMEZONE); - repository1.setVersion(VERSION); - repository1.setCharacterEncoding(ENCODING); - repository1.setSynchronizationTimeStamp(TIMESTAMP); - taskRepositories.add(repository1); - - repository2.setTimeZoneId(TIMEZONE + SUFFIX); - repository2.setVersion(VERSION + SUFFIX); - repository2.setCharacterEncoding(ENCODING + SUFFIX); - repository2.setSynchronizationTimeStamp(TIMESTAMP + SUFFIX); - taskRepositories.add(repository2); - } - - public void testExternalization() { - TaskRepositoriesExternalizer externalizer = new TaskRepositoriesExternalizer(); - String path = "repositories.xml"; - File file = new File(path); - file.deleteOnExit(); - externalizer.writeRepositoriesToXML(taskRepositories, file); - taskRepositories.clear(); - assertEquals(0, taskRepositories.size()); - taskRepositories = externalizer.readRepositoriesFromXML(file); - assertEquals(2, taskRepositories.size()); - taskRepositories.contains(repository1); - taskRepositories.contains(repository2); - for (TaskRepository repository : taskRepositories) { - if (repository.getRepositoryUrl().equals(REPURL1)) { - assertEquals(TIMEZONE, repository.getTimeZoneId()); - assertEquals(VERSION, repository.getVersion()); - assertEquals(ENCODING, repository.getCharacterEncoding()); - assertEquals(TIMESTAMP, repository.getSynchronizationTimeStamp()); - } else if (repository.getRepositoryUrl().equals(REPURL2)) { - assertEquals(TIMEZONE + SUFFIX, repository.getTimeZoneId()); - assertEquals(VERSION + SUFFIX, repository.getVersion()); - assertEquals(ENCODING + SUFFIX, repository.getCharacterEncoding()); - assertEquals(TIMESTAMP + SUFFIX, repository.getSynchronizationTimeStamp()); - } - } - - } - - public void testExternalizationEmptyRepository() { - TaskRepositoriesExternalizer externalizer = new TaskRepositoriesExternalizer(); - String path = "repositories.xml"; - File file = new File(path); - file.deleteOnExit(); - externalizer.writeRepositoriesToXML(taskRepositories, file); - taskRepositories = externalizer.readRepositoriesFromXML(file); - assertEquals(2, taskRepositories.size()); - taskRepositories.clear(); - externalizer.writeRepositoriesToXML(taskRepositories, file); - taskRepositories = externalizer.readRepositoriesFromXML(file); - assertEquals(0, taskRepositories.size()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryFilterTests.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryFilterTests.java deleted file mode 100644 index 010106543..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryFilterTests.java +++ /dev/null @@ -1,81 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.ITaskRepositoryFilter; -import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; - -/** - * @author Shawn Minto - */ -public class TaskRepositoryFilterTests extends TestCase { - - public void testCanCreateTaskFilter() { - ITaskRepositoryFilter canCreateTaskFilter = ITaskRepositoryFilter.CAN_CREATE_NEW_TASK; - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - MockRepositoryConnector connector = (MockRepositoryConnector) TasksUiPlugin.getConnector(MockRepositoryConnector.REPOSITORY_KIND); - assertFalse(canCreateTaskFilter.accept(repository, connector)); - - connector.setCanCreateNewTask(true); - assertTrue(canCreateTaskFilter.accept(repository, connector)); - - repository.setOffline(true); - assertFalse(canCreateTaskFilter.accept(repository, connector)); - - connector.resetDefaults(); - } - - public void testCanQueryTaskFilter() { - ITaskRepositoryFilter canQueryFilter = ITaskRepositoryFilter.CAN_QUERY; - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - MockRepositoryConnector connector = (MockRepositoryConnector) TasksUiPlugin.getConnector(MockRepositoryConnector.REPOSITORY_KIND); - assertFalse(canQueryFilter.accept(repository, connector)); - - repository = new TaskRepository(LocalRepositoryConnector.CONNECTOR_KIND, - LocalRepositoryConnector.REPOSITORY_URL); - AbstractRepositoryConnector localConnector = TasksUiPlugin.getConnector(LocalRepositoryConnector.CONNECTOR_KIND); - assertFalse(canQueryFilter.accept(repository, localConnector)); - - // need a second mock repo - connector.setCanQuery(true); - assertTrue(canQueryFilter.accept(repository, connector)); - - repository.setOffline(true); - assertFalse(canQueryFilter.accept(repository, connector)); - - connector.resetDefaults(); - } - - public void testCanCreateTaskFromKeyTaskFilter() { - ITaskRepositoryFilter canCreateTaskFromKeyFilter = ITaskRepositoryFilter.CAN_CREATE_TASK_FROM_KEY; - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - MockRepositoryConnector connector = (MockRepositoryConnector) TasksUiPlugin.getConnector(MockRepositoryConnector.REPOSITORY_KIND); - assertFalse(canCreateTaskFromKeyFilter.accept(repository, connector)); - - // need a second mock repo - connector.setCanCreateTaskFromKey(true); - assertTrue(canCreateTaskFromKeyFilter.accept(repository, connector)); - - repository.setOffline(true); - assertFalse(canCreateTaskFromKeyFilter.accept(repository, connector)); - connector.resetDefaults(); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryManagerTest.java deleted file mode 100644 index 29437b571..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryManagerTest.java +++ /dev/null @@ -1,239 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.net.MalformedURLException; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.commons.net.AuthenticationCredentials; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.RepositoryTaskHandleUtil; -import org.eclipse.mylyn.internal.tasks.core.TaskRepositoryManager; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Mik Kersten - * @author Rob Elves - */ -public class TaskRepositoryManagerTest extends TestCase { - - private static final String DEFAULT_KIND = MockRepositoryConnector.REPOSITORY_KIND; - - private static final String DEFAULT_URL = "http://eclipse.org"; - - private static final String ANOTHER_URL = "http://codehaus.org"; - - private TaskRepositoryManager manager; - - @Override - protected void setUp() throws Exception { - super.setUp(); - manager = TasksUiPlugin.getRepositoryManager(); - assertNotNull(manager); - manager.clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - if (manager != null) { - manager.clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - } - } - - public void testRepositoryWithSlash() throws MalformedURLException { - - TaskRepository repository1 = new TaskRepository("bugzilla", "http://repository1/"); - manager.addRepository(repository1); - assertNotNull(manager.getRepository("http://repository1")); - assertNotNull(manager.getRepository("http://repository1/")); - - assertNotNull(manager.getRepository("bugzilla", "http://repository1")); - assertNotNull(manager.getRepository("bugzilla", "http://repository1/")); - - } - - public void testQueryDeletion() { - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - - MockTask task = new MockTask("1"); - MockRepositoryQuery query = new MockRepositoryQuery("Test"); - TasksUiPlugin.getTaskList().addQuery(query); - TasksUiPlugin.getTaskList().addTask(task, query); - - assertNotNull(TasksUiPlugin.getTaskList().getTask(task.getHandleIdentifier())); - TasksUiPlugin.getTaskList().deleteQuery(query); - ITask task2 = TasksUiPlugin.getTaskList().getTask(task.getHandleIdentifier()); - assertNotNull(task2); - assertEquals(1, ((AbstractTask) task2).getParentContainers().size()); - - } - - public void testHandles() { - String url = "http://foo.bar"; - String id = "123"; - String handle = RepositoryTaskHandleUtil.getHandle(url, id); - assertEquals(url, RepositoryTaskHandleUtil.getRepositoryUrl(handle)); - assertEquals(id, RepositoryTaskHandleUtil.getTaskId(handle)); -// assertEquals(123, AbstractTask.getTaskIdAsInt(handle)); - } - - public void testMultipleNotAdded() throws MalformedURLException { - TaskRepository repository = new TaskRepository(DEFAULT_KIND, DEFAULT_URL); - manager.addRepository(repository); - TaskRepository repository2 = new TaskRepository(DEFAULT_KIND, DEFAULT_URL); - manager.addRepository(repository2); - assertEquals(1, manager.getAllRepositories().size()); - } - - public void testGet() throws MalformedURLException { - assertEquals("", TasksUiPlugin.getDefault().getPreferenceStore().getString( - TaskRepositoryManager.PREF_REPOSITORIES)); - - TaskRepository repository = new TaskRepository(DEFAULT_KIND, DEFAULT_URL); - manager.addRepository(repository); - assertEquals(repository, manager.getRepository(DEFAULT_KIND, DEFAULT_URL)); - assertNull(manager.getRepository(DEFAULT_KIND, "foo")); - assertNull(manager.getRepository("foo", DEFAULT_URL)); - } - - public void testConnectorAddition() { - AbstractRepositoryConnector connector = new MockRepositoryConnector(); - manager.addRepositoryConnector(connector); - assertNotNull(manager.getRepositoryConnector(connector.getConnectorKind())); - } - - public void testRepositoryPersistance() throws MalformedURLException { - TaskRepository repository1 = new TaskRepository("bugzilla", "http://bugzilla"); - TaskRepository repository2 = new TaskRepository("jira", "http://jira"); - TaskRepository repository3 = new TaskRepository("local", "http://local"); - manager.addRepository(repository3); - manager.addRepository(repository1); - manager.addRepository(repository2); - TasksUiPlugin.getDefault(); - TasksUiPlugin.getExternalizationManager().load(); - //manager.readRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - - if (manager.getRepositoryConnector("bugzilla") != null) { - assertTrue(manager.getAllRepositories().contains(repository2)); - } - if (manager.getRepositoryConnector("jira") != null) { - assertTrue(manager.getAllRepositories().contains(repository2)); - } - assertTrue(manager.getAllRepositories().contains(repository3)); - } - - public void testRepositoryAttributePersistance() throws MalformedURLException { - assertEquals("", TasksUiPlugin.getDefault().getPreferenceStore().getString( - TaskRepositoryManager.PREF_REPOSITORIES)); - - String version = "123"; - String encoding = "UTF-16"; - String fakeTimeZone = "nowhere"; - Date now = new Date(); - String dateString = now.toString(); - - TaskRepository repository1 = new TaskRepository("local", "http://bugzilla"); - repository1.setVersion(version); - repository1.setCharacterEncoding(encoding); - repository1.setTimeZoneId(fakeTimeZone); - repository1.setSynchronizationTimeStamp(dateString); - manager.addRepository(repository1); - TasksUiPlugin.getDefault(); - TasksUiPlugin.getExternalizationManager().load(); - //manager.readRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - TaskRepository temp = manager.getRepository(repository1.getConnectorKind(), repository1.getRepositoryUrl()); - assertNotNull(temp); - assertEquals(version, temp.getVersion()); - assertEquals(encoding, temp.getCharacterEncoding()); - assertEquals(fakeTimeZone, temp.getTimeZoneId()); - assertEquals(dateString, temp.getSynchronizationTimeStamp()); - - } - - public void testRepositoryPersistanceAfterDelete() throws MalformedURLException { - - TaskRepository repository = new TaskRepository(DEFAULT_KIND, DEFAULT_URL); - manager.addRepository(repository); - assertNotNull(manager.getRepository(repository.getConnectorKind(), repository.getRepositoryUrl())); - - TaskRepository repository2 = new TaskRepository(DEFAULT_KIND, ANOTHER_URL); - manager.addRepository(repository2); - assertNotNull(manager.getRepository(repository2.getConnectorKind(), repository2.getRepositoryUrl())); - - manager.removeRepository(repository2, TasksUiPlugin.getDefault().getRepositoriesFilePath()); - - assertNull(manager.getRepository(repository2.getConnectorKind(), repository2.getRepositoryUrl())); - } - - public void testRepositoryWithUnknownUrlHandler() { - TaskRepository repository = new TaskRepository("eclipse.technology.mylar", - "abc://news.eclipse.org/eclipse.technology.mylar"); - - repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("testUser", - "testPassword"), true); - - AuthenticationCredentials credentials = repository.getCredentials(AuthenticationType.REPOSITORY); - assertNotNull(credentials); - assertEquals("testUser", credentials.getUserName()); - assertEquals("testPassword", credentials.getPassword()); - } - - public void testRepositoryWithCustomAttributes() throws Exception { - // Note: if a connector doesn't exist the associated repositories are not loaded (orphaned) - // causing this test to fail. - AbstractRepositoryConnector connector = new MockRepositoryConnector(); - manager.addRepositoryConnector(connector); - - TaskRepository repository = new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, - "http://mylyn.eclipse.org/"); - repository.setProperty("owner", "euxx"); - manager.addRepository(repository); - TasksUiPlugin.getDefault(); - TasksUiPlugin.getExternalizationManager().load(); - //manager.readRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - - TaskRepository temp = manager.getRepository(repository.getConnectorKind(), repository.getRepositoryUrl()); - assertNotNull(temp); - assertEquals("euxx", temp.getProperty("owner")); - } - - public void testRepositoryPersistanceSameUrl() throws MalformedURLException { - TaskRepository repository1 = new TaskRepository("local", "http://repository"); - TaskRepository repository2 = new TaskRepository("web", "http://repository"); - manager.addRepository(repository1); - manager.addRepository(repository2); - assertEquals(2, manager.getAllRepositories().size()); - - List<TaskRepository> repositoryList = new ArrayList<TaskRepository>(); - repositoryList.add(repository2); - repositoryList.add(repository1); - //manager.readRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - TasksUiPlugin.getDefault(); - TasksUiPlugin.getExternalizationManager().load(); - assertEquals("got: " + manager.getAllRepositories(), 2, manager.getAllRepositories().size()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositorySorterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositorySorterTest.java deleted file mode 100644 index 12d6835ce..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositorySorterTest.java +++ /dev/null @@ -1,75 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskRepositoriesSorter; -import org.eclipse.mylyn.tasks.core.TaskRepository; - -/** - * @author Mik Kersten - */ -public class TaskRepositorySorterTest extends TestCase { - - @Override - protected void setUp() throws Exception { - super.setUp(); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - } - - public void testCategorySorting() { - TaskRepositoriesSorter sorter = new TaskRepositoriesSorter(); - TaskRepository t1 = new TaskRepository("t1", "http://a"); - TaskRepository t2 = new TaskRepository("t2", "http://a"); - TaskRepository t3 = new TaskRepository("t3", "http://a"); - assertTrue(sorter.compare(null, t1, t2) < 0); - assertTrue(sorter.compare(null, t3, t1) > 0); - } - - public void testUrlSorting() { - TaskRepositoriesSorter sorter = new TaskRepositoriesSorter(); - TaskRepository t1 = new TaskRepository("t", "http://a"); - TaskRepository t2 = new TaskRepository("t", "http://b"); - TaskRepository t3 = new TaskRepository("t", "http://c"); - assertTrue(sorter.compare(null, t1, t2) < 0); - assertTrue(sorter.compare(null, t3, t1) > 0); - } - - public void testLabelSorting() { - TaskRepositoriesSorter sorter = new TaskRepositoriesSorter(); - TaskRepository t1 = new TaskRepository("kind", "http://a"); - t1.setProperty(IRepositoryConstants.PROPERTY_LABEL, "a"); - TaskRepository t2 = new TaskRepository("kind", "http://a"); - t2.setProperty(IRepositoryConstants.PROPERTY_LABEL, "b"); - TaskRepository t3 = new TaskRepository("kind", "http://a"); - t3.setProperty(IRepositoryConstants.PROPERTY_LABEL, "c"); - - assertTrue(sorter.compare(null, t1, t2) < 0); - assertTrue(sorter.compare(null, t3, t1) > 0); - } - - public void testLabelVsNoLabel() { - TaskRepositoriesSorter sorter = new TaskRepositoriesSorter(); - TaskRepository t1 = new TaskRepository("kind", "http://a"); - t1.setProperty(IRepositoryConstants.PROPERTY_LABEL, "a"); - TaskRepository t2 = new TaskRepository("kind", "http://a"); - - assertTrue(sorter.compare(null, t1, t2) < 0); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryTest.java deleted file mode 100644 index 586ff518e..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryTest.java +++ /dev/null @@ -1,163 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.net.URL; -import java.util.Collections; -import java.util.Date; -import java.util.Map; - -import junit.framework.TestCase; - -import org.eclipse.core.runtime.Platform; -import org.eclipse.mylyn.commons.net.AuthenticationCredentials; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants; -import org.eclipse.mylyn.tasks.core.TaskRepository; - -/** - * @author Mik Kersten - */ -public class TaskRepositoryTest extends TestCase { - - @SuppressWarnings("deprecation") - public void testPlatformAuthHandlerAvailable() throws Exception { - URL url = new URL("http://mylyn"); - Platform.addAuthorizationInfo(url, "", "", Collections.EMPTY_MAP); - assertNotNull("Tests require org.eclipse.core.runtime.compatibility.auth", Platform.getAuthorizationInfo(url, - "", "")); - } - - public void testLabel() { - TaskRepository repository = new TaskRepository("kind", "http://foo.bar"); - assertTrue(repository.getRepositoryLabel().equals(repository.getRepositoryUrl())); - - repository.setProperty(IRepositoryConstants.PROPERTY_LABEL, "label"); - assertTrue(repository.getRepositoryLabel().equals("label")); - } - - @SuppressWarnings("deprecation") - public void testPassword() throws Exception { - password(AuthenticationType.REPOSITORY); - - // test old API - TaskRepository taskRepository = new TaskRepository("kind", "url"); - taskRepository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd"), true); - assertEquals("user", taskRepository.getUserName()); - assertEquals("pwd", taskRepository.getPassword()); - - assertEquals(null, taskRepository.getHttpUser()); - assertEquals(null, taskRepository.getHttpPassword()); - } - - @SuppressWarnings("deprecation") - public void testHttpPassword() throws Exception { - password(AuthenticationType.HTTP); - - TaskRepository taskRepository = new TaskRepository("kind", "url"); - taskRepository.setCredentials(AuthenticationType.HTTP, new AuthenticationCredentials("user", "pwd"), true); - assertEquals("user", taskRepository.getHttpUser()); - assertEquals("pwd", taskRepository.getHttpPassword()); - } - - @SuppressWarnings("deprecation") - public void testProxyPassword() throws Exception { - password(AuthenticationType.PROXY); - - TaskRepository taskRepository = new TaskRepository("kind", "url"); - taskRepository.setCredentials(AuthenticationType.PROXY, new AuthenticationCredentials("user", "pwd"), false); - assertEquals("user", taskRepository.getProxyUsername()); - assertEquals("pwd", taskRepository.getProxyPassword()); - } - - @SuppressWarnings("deprecation") - public void testFlushCredentials() throws Exception { - TaskRepository taskRepository = new TaskRepository("kind", "url"); - taskRepository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd"), - false); - taskRepository.setCredentials(AuthenticationType.HTTP, new AuthenticationCredentials("user", "pwd"), true); - taskRepository.flushAuthenticationCredentials(); - assertEquals(null, taskRepository.getUserName()); - assertEquals(null, taskRepository.getPassword()); - assertEquals(null, taskRepository.getHttpUser()); - assertEquals(null, taskRepository.getHttpPassword()); - assertNull(taskRepository.getCredentials(AuthenticationType.REPOSITORY)); - assertNull(taskRepository.getCredentials(AuthenticationType.HTTP)); - assertNull(taskRepository.getCredentials(AuthenticationType.PROXY)); - } - - public void testPlatformIsRunning() { - assertTrue(Platform.isRunning()); - } - - // TODO e3.4 move to new api - @SuppressWarnings("deprecation") - public void password(AuthenticationType authType) throws Exception { - URL url = new URL("http://url"); - TaskRepository taskRepository = new TaskRepository("kind", url.toString()); - try { - taskRepository.flushAuthenticationCredentials(); - - assertNull(taskRepository.getCredentials(authType)); - assertTrue(taskRepository.getSavePassword(authType)); - - taskRepository.setCredentials(authType, new AuthenticationCredentials("user", "pwd"), true); - AuthenticationCredentials credentials = taskRepository.getCredentials(authType); - assertNotNull(credentials); - assertEquals("user", credentials.getUserName()); - assertEquals("pwd", credentials.getPassword()); - - Map<?, ?> map = Platform.getAuthorizationInfo(url, "", "Basic"); - assertNotNull(map); - assertTrue(map.containsValue("user")); - assertTrue(map.containsValue("pwd")); - - // test not saving password - taskRepository.setCredentials(authType, new AuthenticationCredentials("user1", "pwd1"), false); - assertFalse(taskRepository.getSavePassword(authType)); - credentials = taskRepository.getCredentials(authType); - assertNotNull(credentials); - assertEquals("user1", credentials.getUserName()); - assertEquals("pwd1", credentials.getPassword()); - - // make sure old passwords are not in the key ring - map = Platform.getAuthorizationInfo(url, "", "Basic"); - assertNotNull(map); - assertTrue(map.containsValue("user1")); - assertFalse(map.containsValue("pwd1")); - assertFalse(map.containsValue("user")); - assertFalse(map.containsValue("pwd")); - - taskRepository.setCredentials(authType, new AuthenticationCredentials("user2", "pwd2"), true); - assertTrue(taskRepository.getSavePassword(authType)); - credentials = taskRepository.getCredentials(authType); - assertNotNull(credentials); - assertEquals("user2", credentials.getUserName()); - assertEquals("pwd2", credentials.getPassword()); - } finally { - taskRepository.flushAuthenticationCredentials(); - } - } - - public void testConfigUpdateStoring() throws Exception { - URL url = new URL("http://url"); - TaskRepository taskRepository = new TaskRepository("kind", url.toString()); - Date stamp = taskRepository.getConfigurationDate(); - assertNull("unset configuration date returns null", stamp); - stamp = new Date(); - stamp.setTime(stamp.getTime() - 35000L); - - taskRepository.setConfigurationDate(stamp); - assertEquals("Time stamp set", stamp.getTime(), taskRepository.getConfigurationDate().getTime()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTest.java deleted file mode 100644 index f893ae4e0..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTest.java +++ /dev/null @@ -1,78 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.ITask.PriorityLevel; - -/** - * @author Mik Kersten - * @author Steffen Pingel - */ -public class TaskTest extends TestCase { - - @Override - protected void setUp() throws Exception { - super.setUp(); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - } - - public void testUrl() { - AbstractTask task = new LocalTask("handle", "label"); - task.setUrl("http://eclipse.org/mylyn/doc"); - assertTrue(TasksUiInternal.isValidUrl(task.getUrl())); - - task.setUrl("http://"); - assertFalse(TasksUiInternal.isValidUrl(task.getUrl())); - - task.setUrl("https://"); - assertFalse(TasksUiInternal.isValidUrl(task.getUrl())); - - task.setUrl(""); - assertFalse(TasksUiInternal.isValidUrl(task.getUrl())); - - task.setUrl(null); - assertFalse(TasksUiInternal.isValidUrl(task.getUrl())); - } - - public void testPriorityNeverNull() { - ITask task = new LocalTask("handle", "label"); - assertNotNull(task.getPriority()); - - PriorityLevel def = PriorityLevel.getDefault(); - assertNotNull(def); - assertEquals(def, PriorityLevel.fromDescription("garbage")); - assertEquals(def, PriorityLevel.fromString("garbage")); - } - - public void testPriorityLevelFromLevel() { - assertEquals(PriorityLevel.P1, PriorityLevel.fromLevel(Integer.MIN_VALUE)); - assertEquals(PriorityLevel.P1, PriorityLevel.fromLevel(-1)); - assertEquals(PriorityLevel.P1, PriorityLevel.fromLevel(0)); - assertEquals(PriorityLevel.P1, PriorityLevel.fromLevel(1)); - assertEquals(PriorityLevel.P2, PriorityLevel.fromLevel(2)); - assertEquals(PriorityLevel.P3, PriorityLevel.fromLevel(3)); - assertEquals(PriorityLevel.P4, PriorityLevel.fromLevel(4)); - assertEquals(PriorityLevel.P5, PriorityLevel.fromLevel(5)); - assertEquals(PriorityLevel.P5, PriorityLevel.fromLevel(6)); - assertEquals(PriorityLevel.P5, PriorityLevel.fromLevel(Integer.MAX_VALUE)); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTestUtil.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTestUtil.java deleted file mode 100644 index e56c3e819..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskTestUtil.java +++ /dev/null @@ -1,148 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.io.File; -import java.io.IOException; -import java.net.URL; - -import junit.framework.Assert; - -import org.eclipse.core.runtime.FileLocator; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.views.TaskListView; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.ui.TasksUi; -import org.eclipse.ui.IViewPart; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.internal.ViewIntroAdapterPart; - -/** - * @author Mik Kersten - */ -public class TaskTestUtil { - - public static File getLocalFile(String path) { - try { - URL installURL = TasksTestsPlugin.getDefault().getBundle().getEntry(path); - URL localURL = FileLocator.toFileURL(installURL); - return new File(localURL.getFile()); - } catch (IOException e) { - return null; - } - } - - public static File getFile(String path) throws IOException { - if (TasksTestsPlugin.getDefault() != null) { - URL installURL = TasksTestsPlugin.getDefault().getBundle().getEntry(path); - URL localURL = FileLocator.toFileURL(installURL); - return new File(localURL.getFile()); - } else { - URL localURL = TaskTestUtil.class.getResource(""); - return new File(localURL.getFile() + "../../../../../../" + path); - } - } - - /** - * Clears tasks and repositories. When this method returns only the local task repository will exist and the task - * list will only have default categories but no tasks. - */ - public static void resetTaskListAndRepositories() throws Exception { - TasksUiPlugin.getRepositoryManager().clearRepositories(TasksUiPlugin.getDefault().getRepositoriesFilePath()); - TasksUiPlugin.getDefault().getLocalTaskRepository(); - resetTaskList(); - } - - /** - * Clears all tasks. - */ - public static void resetTaskList() throws Exception { - TasksUi.getTaskActivityManager().deactivateActiveTask(); - TasksUiPlugin.getTaskListExternalizationParticipant().resetTaskList(); - TaskListView view = TaskListView.getFromActivePerspective(); - if (view != null) { - view.refresh(); - } - } - - /** - * @see #resetTaskList() - */ - public static void saveAndReadTasklist() throws Exception { - TasksUiPlugin.getTaskList().notifyElementsChanged(null); - saveTaskList(); - TaskTestUtil.resetTaskList(); - TasksUiPlugin.getDefault().initializeDataSources(); - } - - public static void saveTaskList() { - TasksUiPlugin.getExternalizationManager().requestSave(); - } - - public static TaskRepository createMockRepository() { - return new TaskRepository(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL); - } - - public static TaskTask createMockTask(String taskId) { - return new TaskTask(MockRepositoryConnector.REPOSITORY_KIND, MockRepositoryConnector.REPOSITORY_URL, taskId); - } - - public static RepositoryQuery createMockQuery(String queryId) { - return new RepositoryQuery(MockRepositoryConnector.REPOSITORY_KIND, queryId); - } - - public static TaskListView openTasksViewInActivePerspective() throws Exception { - IWorkbenchPart activePart = PlatformUI.getWorkbench() - .getActiveWorkbenchWindow() - .getActivePage() - .getActivePart(); - if (activePart instanceof ViewIntroAdapterPart) { - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().hideView((IViewPart) activePart); - } - TaskListView taskListView = (TaskListView) PlatformUI.getWorkbench() - .getActiveWorkbenchWindow() - .getActivePage() - .showView(TaskListView.ID); - Assert.assertSame("Failed to make task list view active", PlatformUI.getWorkbench() - .getActiveWorkbenchWindow() - .getActivePage() - .getActivePart(), taskListView); - return taskListView; - } - - public static void addAndSelectTask(ITask task) throws Exception { - TasksUiPlugin.getTaskList().addTask(task); - TaskListView taskListView = TaskTestUtil.openTasksViewInActivePerspective(); - taskListView.refresh(); - taskListView.getViewer().expandAll(); - taskListView.getViewer().setSelection(new StructuredSelection(task), true); - Assert.assertSame("Failed to select task", task, taskListView.getSelectedTask()); - } - - public static TaskData createTaskData(TaskRepository taskRepository, String taskId) { - return new TaskData(new TaskAttributeMapper(taskRepository), taskRepository.getConnectorKind(), - taskRepository.getRepositoryUrl(), taskId); - } - - public static TaskData createMockTaskData(String taskId) { - return createTaskData(createMockRepository(), taskId); - } - -} 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 deleted file mode 100644 index 176a5a010..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskWorkingSetTest.java +++ /dev/null @@ -1,158 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -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.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.workingsets.TaskWorkingSetUpdater; -import org.eclipse.mylyn.resources.tests.ResourceTestUtil; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.ui.IWorkingSet; -import org.eclipse.ui.IWorkingSetManager; -import org.eclipse.ui.actions.WorkspaceModifyOperation; -import org.eclipse.ui.internal.Workbench; - -/** - * @author Mik Kersten - */ -public class TaskWorkingSetTest extends TestCase { - - private IProject project; - - 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); - } - - if (project != null) { - ResourceTestUtil.deleteProject(project); - } - } - - public void testDeleteQuery() { - MockRepositoryQuery query = new MockRepositoryQuery("description"); - TaskList taskList = TasksUiPlugin.getTaskList(); - taskList.addQuery(query); - workingSet = createWorkingSet(query); - assertTrue(Arrays.asList(workingSet.getElements()).contains(query)); - TasksUiPlugin.getTaskList().deleteQuery(query); - assertFalse(Arrays.asList(workingSet.getElements()).contains(query)); - } - - public void testRenameQuery() { - MockRepositoryQuery query = new MockRepositoryQuery("description"); - TaskList taskList = TasksUiPlugin.getTaskList(); - taskList.addQuery(query); - workingSet = createWorkingSet(query); - assertTrue(workingSet.getElements().length == 1); - IAdaptable[] elements = workingSet.getElements(); - assertTrue(elements.length == 1); - assertTrue(elements[0] instanceof MockRepositoryQuery); - assertTrue(((MockRepositoryQuery) elements[0]).getHandleIdentifier().equals("description")); - assertTrue(Arrays.asList(workingSet.getElements()).contains(query)); - - query.setHandleIdentifier("Test"); - assertTrue(workingSet.getElements().length == 1); - elements = workingSet.getElements(); - assertTrue(elements.length == 1); - assertTrue(elements[0] instanceof MockRepositoryQuery); - assertTrue(((MockRepositoryQuery) elements[0]).getHandleIdentifier().equals("Test")); - assertTrue(Arrays.asList(workingSet.getElements()).contains(query)); - } - - // XXX see bug 212962 -// public void testRenameQuery() { -// MockRepositoryQuery query = new MockRepositoryQuery("description"); -// TaskList taskList = TasksUiPlugin.getTaskList(); -// taskList.addQuery(query); -// workingSet = createWorkingSet(query); -// -// TasksUiPlugin.getTaskList().deleteQuery(query); -// query = new MockRepositoryQuery("newDescription"); -// TasksUiPlugin.getTaskList().addQuery(query); -// assertTrue(Arrays.asList(workingSet.getElements()).contains(query)); -// } -// -// public void testEditQuery() { -// MockRepositoryQuery query = new MockRepositoryQuery("description"); -// TaskList taskList = TasksUiPlugin.getTaskList(); -// taskList.addQuery(query); -// workingSet = createWorkingSet(query); -// -// TasksUiPlugin.getTaskList().deleteQuery(query); -// TasksUiPlugin.getTaskList().addQuery(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()); - - 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; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksTestsPlugin.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksTestsPlugin.java deleted file mode 100644 index da070eda4..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksTestsPlugin.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import org.eclipse.core.runtime.Plugin; -import org.osgi.framework.BundleContext; - -/** - * @author Mik Kersten - */ -public class TasksTestsPlugin extends Plugin { - - private static TasksTestsPlugin plugin; - - public TasksTestsPlugin() { - super(); - plugin = this; - } - - @Override - public void start(BundleContext context) throws Exception { - super.start(context); - } - - @Override - public void stop(BundleContext context) throws Exception { - super.stop(context); - plugin = null; - } - - /** - * Returns the shared instance. - */ - public static TasksTestsPlugin getDefault() { - return plugin; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUiUtilTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUiUtilTest.java deleted file mode 100644 index b16a672a4..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUiUtilTest.java +++ /dev/null @@ -1,164 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import java.lang.reflect.Field; -import java.util.Date; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.util.TasksUiInternal; -import org.eclipse.mylyn.tasks.core.ITask.PriorityLevel; -import org.eclipse.mylyn.tasks.ui.TasksUiUtil; -import org.eclipse.mylyn.tasks.ui.editors.TaskEditor; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.internal.browser.WebBrowserEditor; -import org.eclipse.ui.internal.browser.WebBrowserEditorInput; - -/** - * @author Shawn Minto - */ -public class TasksUiUtilTest extends TestCase { - - private TaskCategory cat1; - - private AbstractTask cat1task1; - - private AbstractTask cat1task2; - - private IWorkbenchPage activePage; - - private TaskList taskList; - - @Override - public void setUp() throws Exception { - taskList = TasksUiPlugin.getTaskList(); - - TaskTestUtil.resetTaskListAndRepositories(); - - cat1 = new TaskCategory("First Category"); - taskList.addCategory(cat1); - - cat1task1 = TasksUiInternal.createNewLocalTask("task 1"); - cat1task1.setPriority(PriorityLevel.P1.toString()); - cat1task1.setCompletionDate(new Date()); - taskList.addTask(cat1task1, cat1); - - cat1task2 = TasksUiInternal.createNewLocalTask("task 2"); - cat1task2.setPriority(PriorityLevel.P2.toString()); - taskList.addTask(cat1task2, cat1); - - assertEquals(cat1.getChildren().size(), 2); - - activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); - activePage.closeAllEditors(false); - assertEquals(0, activePage.getEditorReferences().length); - } - - @Override - public void tearDown() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - activePage.closeAllEditors(false); - } - - public void testOpenTaskFromTask() { - TasksUiUtil.openTask(cat1task1); - assertEquals(1, activePage.getEditorReferences().length); - assertTrue(activePage.getEditorReferences()[0].getEditor(true) instanceof TaskEditor); - - TasksUiUtil.openTask(cat1task2); - assertEquals(2, activePage.getEditorReferences().length); - assertTrue(activePage.getEditorReferences()[0].getEditor(true) instanceof TaskEditor); - assertTrue(activePage.getEditorReferences()[1].getEditor(true) instanceof TaskEditor); - } - - public void testOpenTaskFromString() { - TasksUiUtil.openTask((String) null); - assertEquals(1, activePage.getEditorReferences().length); - assertTrue(activePage.getEditorReferences()[0].getEditor(true) instanceof WebBrowserEditor); - } - - public void testOpenUrl() { - TasksUiUtil.openUrl(null); - assertEquals(1, activePage.getEditorReferences().length); - IEditorPart editor = activePage.getEditorReferences()[0].getEditor(true); - assertTrue(editor instanceof WebBrowserEditor); - assertTrue(editor.getEditorInput() instanceof WebBrowserEditorInput); - assertEquals(null, ((WebBrowserEditorInput) editor.getEditorInput()).getURL()); - - TasksUiUtil.openUrl("http://eclipse.org/mylyn"); - assertEquals(2, activePage.getEditorReferences().length); - editor = activePage.getEditorReferences()[0].getEditor(true); - assertTrue(editor instanceof WebBrowserEditor); - assertEquals(null, ((WebBrowserEditorInput) editor.getEditorInput()).getURL()); - - IEditorPart editor2 = activePage.getEditorReferences()[1].getEditor(true); - assertTrue(editor2 instanceof WebBrowserEditor); - assertNotNull(((WebBrowserEditorInput) editor2.getEditorInput()).getURL()); - assertEquals("http://eclipse.org/mylyn", ((WebBrowserEditorInput) editor2.getEditorInput()).getURL().toString()); - } - - public void testFlagNoRichEditor() throws SecurityException, NoSuchFieldException, IllegalArgumentException, - IllegalAccessException { - TasksUiUtil.openUrl(null); - assertEquals(1, activePage.getEditorReferences().length); - IEditorPart editor = activePage.getEditorReferences()[0].getEditor(true); - assertTrue(editor instanceof WebBrowserEditor); - assertTrue(editor.getEditorInput() instanceof WebBrowserEditorInput); - assertEquals(null, ((WebBrowserEditorInput) editor.getEditorInput()).getURL()); - WebBrowserEditorInput input = ((WebBrowserEditorInput) editor.getEditorInput()); - Field f = input.getClass().getDeclaredField("style"); - f.setAccessible(true); - int style = (Integer) f.get(input); - assertFalse((style & TasksUiUtil.FLAG_NO_RICH_EDITOR) == 0); - - TasksUiUtil.openUrl("http://eclipse.org/mylyn"); - assertEquals(2, activePage.getEditorReferences().length); - editor = activePage.getEditorReferences()[0].getEditor(true); - assertTrue(editor instanceof WebBrowserEditor); - assertEquals(null, ((WebBrowserEditorInput) editor.getEditorInput()).getURL()); - input = ((WebBrowserEditorInput) editor.getEditorInput()); - f = input.getClass().getDeclaredField("style"); - f.setAccessible(true); - style = (Integer) f.get(input); - assertFalse((style & TasksUiUtil.FLAG_NO_RICH_EDITOR) == 0); - - IEditorPart editor2 = activePage.getEditorReferences()[1].getEditor(true); - assertTrue(editor2 instanceof WebBrowserEditor); - assertNotNull(((WebBrowserEditorInput) editor2.getEditorInput()).getURL()); - assertEquals("http://eclipse.org/mylyn", ((WebBrowserEditorInput) editor2.getEditorInput()).getURL().toString()); - input = ((WebBrowserEditorInput) editor.getEditorInput()); - f = input.getClass().getDeclaredField("style"); - f.setAccessible(true); - style = (Integer) f.get(input); - assertFalse((style & TasksUiUtil.FLAG_NO_RICH_EDITOR) == 0); - - // open task should not set FLAG_NO_RICH_EDITOR - TasksUiUtil.openTask("http://eclipse.org/mylyn/test"); - assertEquals(3, activePage.getEditorReferences().length); - editor = activePage.getEditorReferences()[2].getEditor(true); - assertTrue(editor instanceof WebBrowserEditor); - assertEquals("http://eclipse.org/mylyn/test", ((WebBrowserEditorInput) editor.getEditorInput()).getURL() - .toString()); - input = ((WebBrowserEditorInput) editor.getEditorInput()); - f = input.getClass().getDeclaredField("style"); - f.setAccessible(true); - style = (Integer) f.get(input); - assertTrue((style & TasksUiUtil.FLAG_NO_RICH_EDITOR) == 0); - } -}
\ No newline at end of file diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUtilTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUtilTest.java deleted file mode 100644 index e7528f703..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TasksUtilTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.provisional.tasks.core.TasksUtil; - -public class TasksUtilTest extends TestCase { - - public void testDecode() { - assertEquals("abc", TasksUtil.encode("abc")); - assertEquals("%2D_", TasksUtil.encode("-")); - assertEquals("abc%2D_123", TasksUtil.encode("abc-123")); - assertEquals("", TasksUtil.encode("")); - } - - public void testDecodeInvalid() { - try { - String s = TasksUtil.decode("abc-123"); - fail("Expected IllegalArgumentException, got '" + s + "'"); - } catch (IllegalArgumentException e) { - } - try { - String s = TasksUtil.decode("%Z_"); - fail("Expected IllegalArgumentException, got '" + s + "'"); - } catch (IllegalArgumentException e) { - } - } - - public void testEncode() { - assertEquals("abc", TasksUtil.decode("abc")); - assertEquals("-", TasksUtil.decode("%2D_")); - assertEquals("abc-123", TasksUtil.decode("abc%2D_123")); - assertEquals("abc-123", TasksUtil.decode(TasksUtil.decode(TasksUtil.encode(TasksUtil.encode("abc-123"))))); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockAttachmentHandler.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockAttachmentHandler.java deleted file mode 100644 index ec2fe6364..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockAttachmentHandler.java +++ /dev/null @@ -1,57 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.connector; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; - -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.AbstractTaskAttachmentHandler; -import org.eclipse.mylyn.tasks.core.data.AbstractTaskAttachmentSource; -import org.eclipse.mylyn.tasks.core.data.TaskAttribute; - -/** - * @author Steffen Pingel - */ -public class MockAttachmentHandler extends AbstractTaskAttachmentHandler { - - private byte[] data; - - public void setAttachmentData(byte[] data) { - this.data = data; - } - - @Override - public boolean canGetContent(TaskRepository repository, ITask task) { - return true; - } - - @Override - public boolean canPostContent(TaskRepository repository, ITask task) { - return true; - } - - @Override - public InputStream getContent(TaskRepository repository, ITask task, TaskAttribute attachmentAttribute, - IProgressMonitor monitor) throws CoreException { - return new ByteArrayInputStream(data); - } - - @Override - public void postContent(TaskRepository repository, ITask task, AbstractTaskAttachmentSource source, String comment, - TaskAttribute attachmentAttribute, IProgressMonitor monitor) throws CoreException { - } - -} 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 deleted file mode 100644 index 71f9054a3..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnector.java +++ /dev/null @@ -1,173 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.connector; - -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector; -import org.eclipse.mylyn.tasks.core.IRepositoryQuery; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.AbstractTaskAttachmentHandler; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.core.data.TaskDataCollector; -import org.eclipse.mylyn.tasks.core.sync.ISynchronizationSession; -import org.eclipse.mylyn.tasks.ui.TasksUi; - -/** - * @author Mik Kersten - * @author Rob Elves - * @author Shawn Minto - * @author Steffen Pingel - */ -public class MockRepositoryConnector extends AbstractRepositoryConnector { - - // TODO 3.1 rename to CONNECTOR_KIND - public static final String REPOSITORY_KIND = "mock"; - - public static final String REPOSITORY_URL = "http://mockrepository.test"; - - public static MockRepositoryConnector getDefault() { - return (MockRepositoryConnector) TasksUi.getRepositoryConnector(REPOSITORY_KIND); - } - - private AbstractTaskAttachmentHandler attachmentHandler; - - private boolean canQuery; - - private boolean canCreateNewTask; - - private boolean canCreateTaskFromKey; - - private boolean hasLocalCompletionState; - - public MockRepositoryConnector() { - resetDefaults(); - } - - public void resetDefaults() { - canQuery = false; - canCreateNewTask = false; - canCreateTaskFromKey = false; - hasLocalCompletionState = false; - } - - public void setCanCreateNewTask(boolean canCreateNewTask) { - this.canCreateNewTask = canCreateNewTask; - } - - public void setCanCreateTaskFromKey(boolean canCreateTaskFromKey) { - this.canCreateTaskFromKey = canCreateTaskFromKey; - } - - public void setCanQuery(boolean canQuery) { - this.canQuery = canQuery; - } - - public void setHasLocalCompletionState(boolean hasLocalCompletionState) { - this.hasLocalCompletionState = hasLocalCompletionState; - } - - @Override - public boolean canQuery(TaskRepository repository) { - return canQuery; - } - - @Override - public boolean canCreateNewTask(TaskRepository repository) { - return canCreateNewTask; - } - - @Override - public boolean canCreateTaskFromKey(TaskRepository repository) { - return canCreateTaskFromKey; - } - - @Override - public String getLabel() { - return "Mock Repository (for unit tests)"; - } - - @Override - public String getConnectorKind() { - return REPOSITORY_KIND; - } - - @Override - public String getRepositoryUrlFromTaskUrl(String url) { - // ignore - return null; - } - - @Override - public String getTaskIdFromTaskUrl(String url) { - // ignore - return null; - } - - @Override - public String getTaskUrl(String repositoryUrl, String taskId) { - return null; - } - - @Override - public void updateRepositoryConfiguration(TaskRepository repository, IProgressMonitor monitor) throws CoreException { - // ignore - } - - @Override - public IStatus performQuery(TaskRepository repository, IRepositoryQuery query, TaskDataCollector resultCollector, - ISynchronizationSession event, IProgressMonitor monitor) { - return Status.OK_STATUS; - } - - @Override - public AbstractTaskAttachmentHandler getTaskAttachmentHandler() { - return attachmentHandler; - } - - public void setTaskAttachmentHandler(MockAttachmentHandler attachmentHandler) { - this.attachmentHandler = attachmentHandler; - } - - @Override - public TaskData getTaskData(TaskRepository taskRepository, String taskId, IProgressMonitor monitor) - throws CoreException { - return null; - } - - @Override - public boolean hasTaskChanged(TaskRepository taskRepository, ITask task, TaskData taskData) { - return false; - } - - @Override - public boolean hasLocalCompletionState(TaskRepository taskRepository, ITask task) { - return hasLocalCompletionState; - } - - @Override - public void updateTaskFromTaskData(TaskRepository taskRepository, ITask task, TaskData taskData) { - } - -// @Override -// public Set<RepositoryTemplate> getTemplates() { -// Set<RepositoryTemplate> templates = new HashSet<RepositoryTemplate>(); -// RepositoryTemplate template = new RepositoryTemplate("Mock Template", REPOSITORY_URL, "utf-8", "1", "new", -// "prefix", "query", "newAccountUrl", false, true); -// templates.add(template); -// return templates; -// } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java deleted file mode 100644 index 221d201a0..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryConnectorUi.java +++ /dev/null @@ -1,74 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.connector; - -import java.util.ArrayList; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import org.eclipse.jface.text.Region; -import org.eclipse.jface.text.hyperlink.IHyperlink; -import org.eclipse.jface.wizard.IWizard; -import org.eclipse.mylyn.tasks.core.IRepositoryQuery; -import org.eclipse.mylyn.tasks.core.ITaskMapping; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.ui.AbstractRepositoryConnectorUi; -import org.eclipse.mylyn.tasks.ui.TaskHyperlink; -import org.eclipse.mylyn.tasks.ui.wizards.ITaskRepositoryPage; - -/** - * @author Mik Kersten - * @author Steffen Pingel - */ -public class MockRepositoryConnectorUi extends AbstractRepositoryConnectorUi { - - private static Pattern HYPERLINK_PATTERN = Pattern.compile("(\\d+)"); - - @Override - public String getConnectorKind() { - return "mock"; - } - - @Override - public ITaskRepositoryPage getSettingsPage(TaskRepository taskRepository) { - // ignore - return null; - } - - @Override - public boolean hasSearchPage() { - return false; - } - - @Override - public IWizard getQueryWizard(TaskRepository repository, IRepositoryQuery query) { - // ignore - return null; - } - - @Override - public IWizard getNewTaskWizard(TaskRepository taskRepository, ITaskMapping selection) { - // ignore - return null; - } - - @Override - public IHyperlink[] findHyperlinks(TaskRepository repository, String text, int index, int textOffset) { - List<IHyperlink> links = new ArrayList<IHyperlink>(); - Matcher m = HYPERLINK_PATTERN.matcher(text); - while (m.find()) { - links.add(new TaskHyperlink(new Region(textOffset + m.start(), m.end() - m.start()), repository, m.group())); - } - return links.toArray(new IHyperlink[0]); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryQuery.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryQuery.java deleted file mode 100644 index d23cf0ebb..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockRepositoryQuery.java +++ /dev/null @@ -1,39 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.connector; - -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; - -/** - * @author Mik Kersten - */ -public class MockRepositoryQuery extends RepositoryQuery { - - public String MOCK_QUERY_URL = MockRepositoryConnector.REPOSITORY_URL + ".query"; - - public MockRepositoryQuery(String description) { - super(MockRepositoryConnector.REPOSITORY_KIND, description); - super.setUrl(MOCK_QUERY_URL); - super.setRepositoryUrl(MockRepositoryConnector.REPOSITORY_URL); - } - - public MockRepositoryQuery(String description, String url) { - super(MockRepositoryConnector.REPOSITORY_KIND, description); - super.setUrl(url); - } - - @Override - public String getConnectorKind() { - return "mock"; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTask.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTask.java deleted file mode 100644 index 5a7ad3b4c..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/connector/MockTask.java +++ /dev/null @@ -1,65 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.connector; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; - -/** - * @author Mik Kersten - */ -public class MockTask extends AbstractTask { - - private String ownerId; - - public MockTask(String taskId) { - super(MockRepositoryConnector.REPOSITORY_URL, taskId, taskId); - } - - public MockTask(String repositoryUrl, String taskId) { - super(repositoryUrl, taskId, taskId); - } - - public MockTask(String repositoryUrl, String taskId, String summary) { - super(repositoryUrl, taskId, summary); - } - - @Override - public String getConnectorKind() { - return "mock"; - } - - @Override - public void setOwner(String ownerId) { - this.ownerId = ownerId; - } - - @Override - public String getOwner() { - if (ownerId == null) { - return super.getOwner(); - } else { - return ownerId; - } - } - - @Override - public String toString() { - return "Mock Task: " + super.getHandleIdentifier(); - } - - @Override - public boolean isLocal() { - // ignore - return false; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/ITasksCoreConstantsTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/ITasksCoreConstantsTest.java deleted file mode 100644 index 7eb513763..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/ITasksCoreConstantsTest.java +++ /dev/null @@ -1,41 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.core; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants; -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants.MutexSchedulingRule; -import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants.ObjectSchedulingRule; - -/** - * @author Steffen Pingel - */ -public class ITasksCoreConstantsTest extends TestCase { - - public void testRootRuleConflicts() { - assertTrue(ITasksCoreConstants.ROOT_SCHEDULING_RULE.isConflicting(ITasksCoreConstants.ROOT_SCHEDULING_RULE)); - assertTrue(ITasksCoreConstants.ROOT_SCHEDULING_RULE.isConflicting(ITasksCoreConstants.TASKLIST_SCHEDULING_RULE)); - assertTrue(ITasksCoreConstants.ROOT_SCHEDULING_RULE.isConflicting(new MutexSchedulingRule())); - assertTrue(ITasksCoreConstants.ROOT_SCHEDULING_RULE.isConflicting(new ObjectSchedulingRule(this))); - assertTrue(ITasksCoreConstants.TASKLIST_SCHEDULING_RULE.isConflicting(ITasksCoreConstants.ROOT_SCHEDULING_RULE)); - assertTrue(new MutexSchedulingRule().isConflicting(ITasksCoreConstants.ROOT_SCHEDULING_RULE)); - assertTrue(new ObjectSchedulingRule(this).isConflicting(ITasksCoreConstants.ROOT_SCHEDULING_RULE)); - } - - public void testObjectSchdedulingRuleConflicts() { - assertTrue(new ObjectSchedulingRule(this).isConflicting(new ObjectSchedulingRule(this))); - assertFalse(new ObjectSchedulingRule(new Object()).isConflicting(new ObjectSchedulingRule(this))); - ObjectSchedulingRule rule = new ObjectSchedulingRule(this); - assertTrue(rule.isConflicting(rule)); - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskListUnmatchedContainerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskListUnmatchedContainerTest.java deleted file mode 100644 index 3ecc288a2..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskListUnmatchedContainerTest.java +++ /dev/null @@ -1,296 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.core; - -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.RepositoryQuery; -import org.eclipse.mylyn.internal.tasks.core.TaskCategory; -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.core.UnmatchedTaskContainer; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryQuery; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; - -/** - * @author Rob Elves - * @author Steffen Pingel - */ -public class TaskListUnmatchedContainerTest extends TestCase { - - private TaskList taskList; - - private UnmatchedTaskContainer unmatchedContainer; - - @Override - protected void setUp() throws Exception { - taskList = new TaskList(); - unmatchedContainer = new UnmatchedTaskContainer(MockRepositoryConnector.REPOSITORY_KIND, - MockRepositoryConnector.REPOSITORY_URL); - taskList.addUnmatchedContainer(unmatchedContainer); - } - - @Override - protected void tearDown() throws Exception { - } - - /** - * When a local tasks is removed from a category it should be placed in the Uncategorized folder. - */ - public void testRemoveLocalTask() { - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - LocalTask newTask = new LocalTask("" + taskList.getNextLocalTaskId(), "new local task"); - taskList.addTask(newTask, category); - //assertEquals(1, taskList.getOrphanContainers().size()); - assertEquals(2, taskList.getCategories().size()); - taskList.removeFromContainer(category, newTask); - //assertEquals(taskList.getOrphanContainers().size(), 1); - assertFalse(category.contains(newTask.getHandleIdentifier())); - assertTrue(taskList.getDefaultCategory().contains(newTask.getHandleIdentifier())); - assertEquals(1, newTask.getParentContainers().size()); - assertEquals(taskList.getDefaultCategory(), TaskCategory.getParentTaskCategory(newTask)); - } - - /** - * Local tasks in a removed category should be orphaned. - */ - public void testLocalTaskOrphanedInDeletedTaskCategory() { - assertTrue(taskList.getDefaultCategory().isEmpty()); - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - LocalTask newTask = new LocalTask("" + taskList.getNextLocalTaskId(), "new local task"); - taskList.addTask(newTask, category); - assertTrue(taskList.getDefaultCategory().isEmpty()); - taskList.deleteCategory(category); - assertTrue(taskList.getDefaultCategory().contains(newTask.getHandleIdentifier())); - - } - - /** - * Query removed with task in category, just query removed task remains. - */ - public void testTaskRemovedFromQuery() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - - taskList.removeFromContainer(mockQuery, mockTask); - - assertFalse(mockQuery.contains(mockTask.getHandleIdentifier())); - assertTrue(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - } - - /** - * Query removed with task in category, just query removed task remains. - */ - public void testTaskRemovedFromQueryButInCategory() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - taskList.addTask(mockTask, category); - assertTrue(category.contains(mockTask.getHandleIdentifier())); - taskList.removeFromContainer(mockQuery, mockTask); - - assertFalse(mockQuery.contains(mockTask.getHandleIdentifier())); - assertEquals(2, taskList.getCategories().size()); - assertTrue(category.contains(mockTask.getHandleIdentifier())); - - //* Repository tasks within a removed category that are not in a query should be orphaned. - - taskList.removeFromContainer(category, mockTask); - assertTrue(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - } - - /** - * Repository tasks that exists in a query are not orphaned. - */ - public void testRepositoryTaskInDeletedCategory() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - assertEquals(1, taskList.getCategories().size()); - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - taskList.addTask(mockTask, category); - assertEquals(2, taskList.getCategories().size()); - assertTrue(taskList.getDefaultCategory().isEmpty()); - taskList.deleteCategory(category); - assertTrue(unmatchedContainer.isEmpty()); - assertEquals(1, taskList.getCategories().size()); - } - - /** - * Repository tasks in deleted queries are orphaned. - */ - public void testRepositoryTaskInDeletedQuery() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - assertTrue(taskList.getQueries().size() > 0); - taskList.addTask(mockTask, mockQuery); - assertTrue(mockQuery.contains(mockTask.getHandleIdentifier())); - assertTrue(unmatchedContainer.isEmpty()); - taskList.deleteQuery(mockQuery); - assertTrue(taskList.getQueries().size() == 0); - assertFalse(unmatchedContainer.isEmpty()); - } - - /** - * Repository tasks that exist in another query are not orphaned - */ - public void testRemovalOfTaskInTwoQueries() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query 1"); - MockRepositoryQuery mockQuery2 = new MockRepositoryQuery("mock query 2"); - taskList.addQuery(mockQuery); - taskList.addQuery(mockQuery2); - taskList.addTask(mockTask, mockQuery); - taskList.addTask(mockTask, mockQuery2); - - taskList.removeFromContainer(mockQuery2, mockTask); - assertTrue(mockQuery2.isEmpty()); - assertFalse(mockQuery.isEmpty()); - assertTrue(unmatchedContainer.isEmpty()); - } - - /** - * Moving an orphan to a Category should result in the task only being present in the target Category - */ - public void testMoveLocalTask() { - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - LocalTask newTask = new LocalTask("" + taskList.getNextLocalTaskId(), "new local task"); - taskList.addTask(newTask, null); - assertTrue(taskList.getDefaultCategory().contains(newTask.getHandleIdentifier())); - taskList.addTask(newTask, category); - assertFalse(taskList.getDefaultCategory().contains(newTask.getHandleIdentifier())); - } - - public void testAddRepositoryTask() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - Set<ITask> tasks = taskList.getTasks(MockRepositoryConnector.REPOSITORY_URL); - assertFalse(tasks.isEmpty()); - - RepositoryQuery query = (RepositoryQuery) mockTask.getParentContainers().iterator().next(); - assertEquals(mockQuery, query); - assertFalse(query.isEmpty()); - assertTrue(unmatchedContainer.isEmpty()); - } - - public void testMoveRepositoryTask() { - TaskList tasklist = taskList; - assertTrue(tasklist.getAllTasks().isEmpty()); - - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - - TaskCategory category = new TaskCategory("taskCategoryHandle"); - taskList.addCategory(category); - - taskList.addTask(mockTask, category); - assertTrue(taskList.getDefaultCategory().isEmpty()); - assertTrue(category.contains(mockTask.getHandleIdentifier())); - assertTrue(mockQuery.contains(mockTask.getHandleIdentifier())); - - } - - public void testRefactorOrphanedHandle() { - MockTask mockTask = new MockTask("1"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - - taskList.removeFromContainer(mockQuery, mockTask); - - assertFalse(mockQuery.contains(mockTask.getHandleIdentifier())); - assertTrue(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - - taskList.refactorRepositoryUrl(MockRepositoryConnector.REPOSITORY_URL, MockRepositoryConnector.REPOSITORY_URL - + "new"); - assertTrue(taskList.getUnmatchedContainer(MockRepositoryConnector.REPOSITORY_URL + "new").contains( - mockTask.getHandleIdentifier())); - } - - public void testOrphanedSubtasks() { - MockTask mockTask = new MockTask("1"); - MockTask mockTask2 = new MockTask("2"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - taskList.addTask(mockTask2, mockTask); - - assertFalse(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - assertFalse(unmatchedContainer.contains(mockTask2.getHandleIdentifier())); - - assertNotNull(taskList.getTask(mockTask.getHandleIdentifier())); - assertNotNull(taskList.getTask(mockTask2.getHandleIdentifier())); - assertNotNull(unmatchedContainer); - taskList.removeFromContainer(mockQuery, mockTask); - assertTrue(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - assertTrue(mockTask.contains(mockTask2.getHandleIdentifier())); - taskList.deleteTask(mockTask); - assertFalse(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - // mockTask2 should be orphaned when the parent task is deleted - assertTrue(unmatchedContainer.contains(mockTask2.getHandleIdentifier())); - } - - /** - * If a task with subtasks falls out of a query, if its subtasks are subtasks of another task that is still around, - * they shouldn't be in the archive. - */ - public void testOrphanedSubtaskWithOtherParent() { - MockTask mockTask = new MockTask("1"); - MockTask mockTask2 = new MockTask("2"); - MockTask mockTask3 = new MockTask("3"); - MockRepositoryQuery mockQuery = new MockRepositoryQuery("mock query"); - taskList.addQuery(mockQuery); - taskList.addTask(mockTask, mockQuery); - taskList.addTask(mockTask2, mockTask); - taskList.addTask(mockTask3, mockQuery); - taskList.addTask(mockTask2, mockTask3); - assertFalse(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - assertFalse(unmatchedContainer.contains(mockTask2.getHandleIdentifier())); - assertFalse(unmatchedContainer.contains(mockTask3.getHandleIdentifier())); - - taskList.removeFromContainer(mockQuery, mockTask); - assertTrue(unmatchedContainer.contains(mockTask.getHandleIdentifier())); - assertTrue(mockTask.contains(mockTask2.getHandleIdentifier())); - - // True since mockTask is contained and has mockTask2 as a subtask -// assertFalse(unmatchedContainer.contains( -// mockTask2.getHandleIdentifier())); - - taskList.removeFromContainer(mockQuery, mockTask3); - assertTrue(unmatchedContainer.contains(mockTask3.getHandleIdentifier())); - assertTrue(mockTask3.contains(mockTask2.getHandleIdentifier())); - // True since mockTask is contained and has mockTask2 as a subtask -// assertFalse(unmatchedContainer.contains( -// mockTask2.getHandleIdentifier())); - - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskRepositoryLocationTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskRepositoryLocationTest.java deleted file mode 100644 index 018e977fa..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/core/TaskRepositoryLocationTest.java +++ /dev/null @@ -1,106 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.core; - -import java.net.InetSocketAddress; -import java.net.Proxy; - -import junit.framework.TestCase; - -import org.eclipse.core.net.proxy.IProxyData; -import org.eclipse.mylyn.commons.net.AuthenticationCredentials; -import org.eclipse.mylyn.commons.net.AuthenticationType; -import org.eclipse.mylyn.commons.net.UnsupportedRequestException; -import org.eclipse.mylyn.internal.commons.net.AuthenticatedProxy; -import org.eclipse.mylyn.internal.tasks.core.TaskRepositoryLocation; -import org.eclipse.mylyn.tasks.core.TaskRepository; - -/** - * @author Steffen Pingel - */ -public class TaskRepositoryLocationTest extends TestCase { - - public void testGetCredentials() { - TaskRepository taskRepository = new TaskRepository("kind", "http://url"); - taskRepository.flushAuthenticationCredentials(); - TaskRepositoryLocation location = new TaskRepositoryLocation(taskRepository); - assertNull(location.getCredentials(AuthenticationType.HTTP)); - - taskRepository.setCredentials(AuthenticationType.HTTP, new AuthenticationCredentials("user", "pwd"), true); - AuthenticationCredentials credentials = location.getCredentials(AuthenticationType.HTTP); - assertNotNull(credentials); - assertEquals("user", credentials.getUserName()); - assertEquals("pwd", credentials.getPassword()); - - assertNull(location.getCredentials(AuthenticationType.PROXY)); - - taskRepository.setCredentials(AuthenticationType.PROXY, new AuthenticationCredentials("user2", "pwd2"), true); - credentials = location.getCredentials(AuthenticationType.PROXY); - assertNotNull(credentials); - assertEquals("user2", credentials.getUserName()); - assertEquals("pwd2", credentials.getPassword()); - } - - public void testGetProxyForHost() { - TaskRepository taskRepository = new TaskRepository("kind", "http://url"); - TaskRepositoryLocation location = new TaskRepositoryLocation(taskRepository); - - assertTrue(taskRepository.isDefaultProxyEnabled()); - assertEquals(null, location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE)); - - taskRepository.setProperty(TaskRepository.PROXY_USEDEFAULT, "false"); - assertFalse(taskRepository.isDefaultProxyEnabled()); - assertEquals(null, location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE)); - - taskRepository.setProperty(TaskRepository.PROXY_HOSTNAME, "host"); - taskRepository.setProperty(TaskRepository.PROXY_PORT, "1234"); - Proxy proxy = location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE); - assertNotNull(proxy); - assertEquals(new InetSocketAddress("host", 1234), proxy.address()); - - taskRepository.setCredentials(AuthenticationType.PROXY, new AuthenticationCredentials("user", "pwd"), false); - proxy = location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE); - assertNotNull(proxy); - assertEquals(new InetSocketAddress("host", 1234), proxy.address()); - - assertTrue(proxy instanceof AuthenticatedProxy); - assertEquals("user", ((AuthenticatedProxy) proxy).getUserName()); - assertEquals("pwd", ((AuthenticatedProxy) proxy).getPassword()); - } - - public void testGetProxyForHostEmptyProxy() { - TaskRepository taskRepository = new TaskRepository("kind", "http://url"); - TaskRepositoryLocation location = new TaskRepositoryLocation(taskRepository); - - taskRepository.setDefaultProxyEnabled(false); - assertEquals(null, location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE)); - - taskRepository.setProperty(TaskRepository.PROXY_HOSTNAME, ""); - taskRepository.setProperty(TaskRepository.PROXY_PORT, ""); - assertEquals(null, location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE)); - - taskRepository.setProperty(TaskRepository.PROXY_HOSTNAME, ""); - taskRepository.setProperty(TaskRepository.PROXY_PORT, "abc"); - assertEquals(null, location.getProxyForHost("localhost", IProxyData.HTTP_PROXY_TYPE)); - } - - public void testRequestCredentials() { - TaskRepository taskRepository = new TaskRepository("kind", "http://url"); - TaskRepositoryLocation location = new TaskRepositoryLocation(taskRepository); - try { - location.requestCredentials(AuthenticationType.REPOSITORY, null, null); - fail("Expected UnsupportedRequestException"); - } catch (UnsupportedRequestException expected) { - } - } - -}
\ No newline at end of file diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/data/TaskDataExternalizerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/data/TaskDataExternalizerTest.java deleted file mode 100644 index 3ebf0a5b5..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/data/TaskDataExternalizerTest.java +++ /dev/null @@ -1,193 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.data; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.StringReader; -import java.io.StringWriter; -import java.util.zip.ZipInputStream; - -import javax.xml.transform.OutputKeys; -import javax.xml.transform.Transformer; -import javax.xml.transform.TransformerFactory; -import javax.xml.transform.sax.SAXTransformerFactory; -import javax.xml.transform.sax.TransformerHandler; -import javax.xml.transform.stream.StreamResult; - -import junit.framework.Assert; -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.data.ITaskDataConstants; -import org.eclipse.mylyn.internal.tasks.core.data.TaskDataExternalizer; -import org.eclipse.mylyn.internal.tasks.core.data.TaskDataState; -import org.eclipse.mylyn.tasks.core.data.ITaskDataWorkingCopy; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.core.data.TaskMapper; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; -import org.xml.sax.EntityResolver; -import org.xml.sax.InputSource; -import org.xml.sax.SAXException; -import org.xml.sax.XMLReader; -import org.xml.sax.helpers.AttributesImpl; -import org.xml.sax.helpers.DefaultHandler; -import org.xml.sax.helpers.XMLReaderFactory; - -/** - * @author Steffen Pingel - */ -public class TaskDataExternalizerTest extends TestCase { - - private class SimpleCharacterReader extends DefaultHandler { - - private char ch; - - public SimpleCharacterReader() { - } - - @Override - public void characters(char[] ch, int start, int length) throws SAXException { - Assert.assertEquals(1, length); - this.ch = ch[start]; - } - - public char getCharacter() { - return ch; - } - - } - - private final class SimpleCharacterWriter { - private final TransformerHandler handler; - - public SimpleCharacterWriter(TransformerHandler handler) { - this.handler = handler; - } - - public void write(char character) throws SAXException { - handler.startDocument(); - AttributesImpl atts = new AttributesImpl(); - handler.startElement("", "", ITaskDataConstants.ELEMENT_VALUE, atts); //$NON-NLS-1$ //$NON-NLS-2$ - ///handler.startCDATA(); - handler.characters(new char[] { character }, 0, 1); - //handler.endCDATA(); - handler.endElement("", "", ITaskDataConstants.ELEMENT_VALUE); - handler.endDocument(); - } - } - - TaskDataExternalizer externalizer; - - @Override - protected void setUp() throws Exception { - externalizer = new TaskDataExternalizer(null); - } - - public void testMapFromLegacy() throws Exception { - File file = TaskTestUtil.getFile("testdata/taskdata-1.0-bug-219897.zip"); - ZipInputStream in = new ZipInputStream(new FileInputStream(file)); - ITaskDataWorkingCopy state; - try { - in.getNextEntry(); - state = externalizer.readState(in); - } finally { - in.close(); - } - - TaskData taskData = state.getRepositoryData(); - @SuppressWarnings("unused") - TaskMapper taskScheme = new TaskMapper(taskData); - - fail("fixme"); -// RepositoryTaskData legacyData = TaskDataUtil.toLegacyData(taskData, IdentityAttributeFactory.getInstance()); -// assertEquals(taskData.getConnectorKind(), legacyData.getConnectorKind()); -// assertEquals(taskData.getRepositoryUrl(), legacyData.getRepositoryUrl()); -// assertEquals(taskData.getTaskId(), legacyData.getTaskId()); -// assertEquals(taskScheme.getTaskKind(), legacyData.getTaskKind()); -// assertEquals(taskScheme.getComments().length, legacyData.getComments().size()); -// assertEquals(taskScheme.getAttachments().length, legacyData.getAttachments().size()); -// -// TaskData taskData2 = TaskDataUtil.toTaskData(legacyData, IdentityAttributeMapper.getInstance()); -// assertEquals(taskData.getConnectorKind(), taskData2.getConnectorKind()); -// assertEquals(taskData.getRepositoryUrl(), taskData2.getRepositoryUrl()); -// assertEquals(taskData.getTaskId(), taskData2.getTaskId()); -// -// assertEquals(taskData.getRoot().toString(), taskData2.getRoot().toString()); - } - - public void testRead() throws Exception { - File file = TaskTestUtil.getFile("testdata/taskdata-1.0-bug-219897.zip"); - ZipInputStream in = new ZipInputStream(new FileInputStream(file)); - try { - in.getNextEntry(); - @SuppressWarnings("unused") - ITaskDataWorkingCopy state = externalizer.readState(in); - } finally { - in.close(); - } - } - - public void testReadWrite() throws Exception { - File file = TaskTestUtil.getFile("testdata/taskdata-1.0-bug-219897.zip"); - ZipInputStream in = new ZipInputStream(new FileInputStream(file)); - ITaskDataWorkingCopy state; - try { - in.getNextEntry(); - state = externalizer.readState(in); - } finally { - in.close(); - } - ByteArrayOutputStream out = new ByteArrayOutputStream(); - externalizer.writeState(out, state); - TaskDataState state2 = externalizer.readState(new ByteArrayInputStream(out.toByteArray())); - assertEquals(state.getConnectorKind(), state2.getConnectorKind()); - assertEquals(state.getRepositoryUrl(), state2.getRepositoryUrl()); - assertEquals(state.getTaskId(), state2.getTaskId()); - - assertEquals(state.getRepositoryData().getRoot().toString(), state2.getRepositoryData().getRoot().toString()); - - } - - public void testWriteandReadBadCharacter() throws Exception { - for (int i = 0; i < 0xFFFF; i++) { - char badChar = (char) i; - - StringWriter stringWriter = new StringWriter(); - SAXTransformerFactory transformerFactory = (SAXTransformerFactory) TransformerFactory.newInstance(); - TransformerHandler handler = transformerFactory.newTransformerHandler(); - Transformer serializer = handler.getTransformer(); - serializer.setOutputProperty(OutputKeys.VERSION, "1.0"); - serializer.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); //$NON-NLS-1$ - serializer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$ - handler.setResult(new StreamResult(stringWriter)); - SimpleCharacterWriter writer = new SimpleCharacterWriter(handler); - writer.write(badChar); - - XMLReader parser = XMLReaderFactory.createXMLReader(); - SimpleCharacterReader readHandler = new SimpleCharacterReader(); - parser.setEntityResolver(new EntityResolver() { - public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException { - System.out.println(publicId); - System.out.println(systemId); - return null; - } - }); - parser.setContentHandler(readHandler); - parser.parse(new InputSource(new StringReader(stringWriter.getBuffer().toString()))); - char character = readHandler.getCharacter(); - assertEquals(badChar, character); - } - } -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskContainerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskContainerTest.java deleted file mode 100644 index 9f9826113..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskContainerTest.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.performance; - -import org.eclipse.mylyn.internal.tasks.core.AbstractTask; -import org.eclipse.mylyn.tasks.tests.connector.MockTask; -import org.eclipse.test.performance.PerformanceTestCase; - -/** - * @author Steffen Pingel - */ -public class TaskContainerTest extends PerformanceTestCase { - - int counter; - - private void addChildren(AbstractTask parent, int[] childCount, int depth) { - for (int i = 0; i < childCount[depth]; i++) { - MockTask task = new MockTask("task", ++counter + ""); - parent.internalAddChild(task); - if (depth < childCount.length - 1) { - addChildren(task, childCount, depth + 1); - } - } - } - - public void testContains() { - MockTask task = new MockTask(++counter + ""); - addChildren(task, new int[] { 1000, 10, 2 }, 0); - - for (int i = 0; i < 10; i++) { - startMeasuring(); - task.contains("handle"); - stopMeasuring(); - } - - commitMeasurements(); - assertPerformance(); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskListPerformanceTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskListPerformanceTest.java deleted file mode 100644 index dfef9ecac..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/performance/TaskListPerformanceTest.java +++ /dev/null @@ -1,74 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.performance; - -import java.io.File; - -import org.eclipse.mylyn.internal.tasks.core.TaskList; -import org.eclipse.mylyn.internal.tasks.core.TransferList; -import org.eclipse.mylyn.internal.tasks.core.externalization.TaskListExternalizer; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; -import org.eclipse.test.performance.PerformanceTestCase; - -public class TaskListPerformanceTest extends PerformanceTestCase { - - private static final String TASK_LIST_4000 = "testdata/performance/tasklist-4000.xml.zip"; - - private TaskList taskList; - - @Override - protected void setUp() throws Exception { - super.setUp(); - - taskList = TasksUiPlugin.getTaskList(); - taskList.reset(); - } - - @Override - protected void tearDown() throws Exception { - super.tearDown(); - - taskList.reset(); - } - - public void testReadTasksWith4000Tasks() throws Exception { - final File file = TaskTestUtil.getLocalFile(TASK_LIST_4000); - final TaskListExternalizer taskListWriter = TasksUiPlugin.getDefault().createTaskListExternalizer(); - - for (int i = 0; i < 10; i++) { - startMeasuring(); - taskListWriter.readTaskList(new TransferList(), file); - stopMeasuring(); - taskList.reset(); - } - - commitMeasurements(); - assertPerformance(); - } - - public void testReadTaskListWith4000Tasks() throws Exception { - final File file = TaskTestUtil.getLocalFile(TASK_LIST_4000); - final TaskListExternalizer taskListWriter = TasksUiPlugin.getDefault().createTaskListExternalizer(); - - for (int i = 0; i < 10; i++) { - startMeasuring(); - taskListWriter.readTaskList(new TransferList(), file); - stopMeasuring(); - taskList.reset(); - } - - commitMeasurements(); - assertPerformance(); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/ContextPerspectiveManagerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/ContextPerspectiveManagerTest.java deleted file mode 100644 index a588c1543..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/ContextPerspectiveManagerTest.java +++ /dev/null @@ -1,97 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.context.tests.support.TestUtil; -import org.eclipse.mylyn.internal.context.ui.ContextUiPlugin; -import org.eclipse.mylyn.internal.context.ui.IContextUiPreferenceContstants; -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.monitor.ui.MonitorUi; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; -import org.eclipse.mylyn.tasks.ui.TasksUi; -import org.eclipse.ui.PlatformUI; - -/** - * @author Steffen Pingel - */ -public class ContextPerspectiveManagerTest extends TestCase { - - private static final String ID_RESOURCE_PERSPECTIVE = "org.eclipse.ui.resourcePerspective"; - - private static final String ID_PLANNING_PERSPECTIVE = "org.eclipse.mylyn.tasks.ui.perspectives.planning"; - - private boolean previousSetting; - - @Override - protected void setUp() throws Exception { - TestUtil.triggerContextUiLazyStart(); - - TaskTestUtil.resetTaskListAndRepositories(); - previousSetting = ContextUiPlugin.getDefault().getPreferenceStore().getBoolean( - IContextUiPreferenceContstants.AUTO_MANAGE_PERSPECTIVES); - ContextUiPlugin.getDefault().getPreferenceStore().setValue( - IContextUiPreferenceContstants.AUTO_MANAGE_PERSPECTIVES, true); - } - - @Override - protected void tearDown() throws Exception { - ContextUiPlugin.getDefault().getPreferenceStore().setValue( - IContextUiPreferenceContstants.AUTO_MANAGE_PERSPECTIVES, previousSetting); - TaskTestUtil.resetTaskListAndRepositories(); - } - - public void testRestorePerspective() throws Exception { - PlatformUI.getWorkbench().showPerspective(ID_RESOURCE_PERSPECTIVE, MonitorUi.getLaunchingWorkbenchWindow()); - assertEquals(ID_RESOURCE_PERSPECTIVE, getActivePerspective()); - TaskTask task = TaskTestUtil.createMockTask("1"); - - // check that perspective is not switched for new task - TasksUi.getTaskActivityManager().activateTask(task); - assertEquals(ID_RESOURCE_PERSPECTIVE, getActivePerspective()); - - // check if previous perspective is restored on deactivation - PlatformUI.getWorkbench().showPerspective(ID_PLANNING_PERSPECTIVE, MonitorUi.getLaunchingWorkbenchWindow()); - assertEquals(ID_PLANNING_PERSPECTIVE, getActivePerspective()); - TasksUi.getTaskActivityManager().deactivateActiveTask(); - assertEquals(ID_RESOURCE_PERSPECTIVE, getActivePerspective()); - - // check if perspective is restored on activation - TasksUi.getTaskActivityManager().activateTask(task); - assertEquals(ID_PLANNING_PERSPECTIVE, getActivePerspective()); - } - - // FIXME 3.1 re-enable test -// public void testRecreateTask() throws Exception { -// PlatformUI.getWorkbench().showPerspective(ID_RESOURCE_PERSPECTIVE, MonitorUi.getLaunchingWorkbenchWindow()); -// TaskTask task = TaskTestUtil.createMockTask("1"); -// -// // check that deleting task switches back to original perspective -// TasksUi.getTaskActivityManager().activateTask(task); -// PlatformUI.getWorkbench().showPerspective(ID_PLANNING_PERSPECTIVE, MonitorUi.getLaunchingWorkbenchWindow()); -// TasksUiPlugin.getTaskActivityManager().deactivateActiveTask(); -// TasksUiPlugin.getTaskList().deleteTask(task); -// assertEquals(ID_RESOURCE_PERSPECTIVE, getActivePerspective()); -// -// task = TaskTestUtil.createMockTask("1"); -// -// // check that activating new task with the same id does not switch the perspective -// TasksUi.getTaskActivityManager().activateTask(task); -// assertEquals(ID_RESOURCE_PERSPECTIVE, getActivePerspective()); -// } - - private String getActivePerspective() { - return MonitorUi.getLaunchingWorkbenchWindow().getActivePage().getPerspective().getId(); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/MarkTaskHandlerTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/MarkTaskHandlerTest.java deleted file mode 100644 index 6bdc439db..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/MarkTaskHandlerTest.java +++ /dev/null @@ -1,87 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import junit.framework.TestCase; - -import org.eclipse.core.commands.NotEnabledException; -import org.eclipse.mylyn.internal.tasks.core.LocalTask; -import org.eclipse.mylyn.internal.tasks.core.TaskTask; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.internal.tasks.ui.commands.MarkTaskHandler.MarkTaskCompleteHandler; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnector; -import org.eclipse.ui.IWorkingSet; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.handlers.IHandlerService; - -/** - * @author Steffen Pingel - */ -public class MarkTaskHandlerTest extends TestCase { - - private IHandlerService handlerService; - - @Override - protected void setUp() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - - handlerService = (IHandlerService) PlatformUI.getWorkbench().getService(IHandlerService.class); - - TaskRepository repository = TaskTestUtil.createMockRepository(); - TasksUiPlugin.getRepositoryManager().addRepository(repository); - - // TODO figure out which test leaves a filter enabled - PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().setWorkingSets(new IWorkingSet[0]); - TaskTestUtil.openTasksViewInActivePerspective().clearFilters(); - } - - @Override - protected void tearDown() throws Exception { - TaskTestUtil.resetTaskListAndRepositories(); - } - - public void testMarkTaskCompleted() throws Exception { - MockRepositoryConnector.getDefault().setHasLocalCompletionState(true); - TaskTask task = TaskTestUtil.createMockTask("1"); - TaskTestUtil.addAndSelectTask(task); - assertFalse(task.isCompleted()); - - handlerService.executeCommand(MarkTaskCompleteHandler.ID_COMMAND, null); - assertTrue(task.isCompleted()); - - try { - handlerService.executeCommand(MarkTaskCompleteHandler.ID_COMMAND, null); - fail("Expected NotEnabledException"); - } catch (NotEnabledException e) { - // expected - } - } - - public void testMarkLocalTaskCompleted() throws Exception { - LocalTask localTask = new LocalTask("1", ""); - TaskTestUtil.addAndSelectTask(localTask); - assertFalse(localTask.isCompleted()); - - handlerService.executeCommand(MarkTaskCompleteHandler.ID_COMMAND, null); - assertTrue(localTask.isCompleted()); - - try { - handlerService.executeCommand(MarkTaskCompleteHandler.ID_COMMAND, null); - fail("Expected NotEnabledException"); - } catch (NotEnabledException e) { - // expected - } - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/RetrieveTitleFromUrlTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/RetrieveTitleFromUrlTest.java deleted file mode 100644 index 438e9f5eb..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/RetrieveTitleFromUrlTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import java.lang.reflect.InvocationTargetException; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.util.AbstractRetrieveTitleFromUrlJob; -import org.eclipse.ui.PlatformUI; - -/** - * @author Mik Kersten - * @author Steffen Pingel - */ -public class RetrieveTitleFromUrlTest extends TestCase { - - private String retrievedTitle; - - public void testRetrieve() throws InterruptedException, InvocationTargetException { - final String url = "http://eclipse.org/mylyn"; - final String knownTitle = "Eclipse Mylyn Open Source Project"; - AbstractRetrieveTitleFromUrlJob job = new AbstractRetrieveTitleFromUrlJob(url) { - @Override - public void titleRetrieved(String title) { - retrievedTitle = title; - } - }; - job.schedule(); - job.join(); - assertEquals(knownTitle, job.getPageTitle()); - // process pending events - while (PlatformUI.getWorkbench().getDisplay().readAndDispatch()) { - } - assertEquals(knownTitle, retrievedTitle); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskAttachmentPropertyTesterTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskAttachmentPropertyTesterTest.java deleted file mode 100644 index 66b8d6c0b..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskAttachmentPropertyTesterTest.java +++ /dev/null @@ -1,46 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.core.TaskAttachment; -import org.eclipse.mylyn.internal.tasks.ui.util.TaskAttachmentPropertyTester; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; - -/** - * @author Steffen Pingel - */ -public class TaskAttachmentPropertyTesterTest extends TestCase { - - public void testHasUrl() { - TaskAttachment attachment = new StubAttachment(); - TaskAttachmentPropertyTester tester = new TaskAttachmentPropertyTester(); - attachment.setUrl("url"); - assertTrue(tester.test(attachment, "hasUrl", null, Boolean.TRUE)); - attachment.setUrl(""); - assertTrue(tester.test(attachment, "hasUrl", null, Boolean.FALSE)); - attachment.setUrl(null); - assertFalse(tester.test(attachment, "hasUrl", null, Boolean.TRUE)); - assertFalse(tester.test(new Object(), "hasUrl", null, Boolean.TRUE)); - } - - private class StubAttachment extends TaskAttachment { - - public StubAttachment() { - super(TaskTestUtil.createMockRepository(), TaskTestUtil.createMockTask("1"), - TaskTestUtil.createMockTaskData("1").getRoot()); - } - - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskHyperlinkDetectorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskHyperlinkDetectorTest.java deleted file mode 100644 index 0666da543..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskHyperlinkDetectorTest.java +++ /dev/null @@ -1,95 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import junit.framework.TestCase; - -import org.eclipse.jface.text.Document; -import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.text.ITextViewer; -import org.eclipse.jface.text.Region; -import org.eclipse.jface.text.TextViewer; -import org.eclipse.jface.text.hyperlink.IHyperlink; -import org.eclipse.mylyn.internal.tasks.ui.editors.TaskHyperlinkDetector; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.tests.TaskTestUtil; -import org.eclipse.mylyn.tasks.tests.connector.MockRepositoryConnectorUi; -import org.eclipse.mylyn.tasks.ui.AbstractRepositoryConnectorUi; -import org.eclipse.mylyn.tasks.ui.AbstractTaskHyperlinkDetector; - -/** - * @author Steffen Pingel - */ -public class TaskHyperlinkDetectorTest extends TestCase { - - protected MockRepositoryConnectorUi connectorUi; - - protected TaskRepository repository; - - @Override - protected void setUp() throws Exception { - repository = TaskTestUtil.createMockRepository(); - connectorUi = new MockRepositoryConnectorUi(); - } - - protected IHyperlink[] detect(final String text, int start, int length) { - AbstractTaskHyperlinkDetector detector = createHyperlinkDetector(); - return detector.detectHyperlinks(new TextViewer() { - @Override - public IDocument getDocument() { - return new Document(text); - } - }, new Region(start, length), true); - } - - protected AbstractTaskHyperlinkDetector createHyperlinkDetector() { - TaskHyperlinkDetector detector = new TaskHyperlinkDetector() { - @Override - protected TaskRepository getTaskRepository(ITextViewer textViewer) { - return repository; - } - - @Override - protected AbstractRepositoryConnectorUi getConnectorUi(TaskRepository repository) { - return connectorUi; - } - }; - return detector; - } - - public void testMultiple() { - IHyperlink[] links = detect("123 456 789", 4, 5); - assertNotNull(links); - assertEquals(2, links.length); - assertEquals(new Region(4, 3), links[0].getHyperlinkRegion()); - assertEquals(new Region(8, 1), links[1].getHyperlinkRegion()); - } - - public void testMultipleFullRegion() { - IHyperlink[] links = detect("123 456 789", 0, 11); - assertEquals(3, links.length); - assertEquals(new Region(0, 3), links[0].getHyperlinkRegion()); - assertEquals(new Region(4, 3), links[1].getHyperlinkRegion()); - assertEquals(new Region(8, 3), links[2].getHyperlinkRegion()); - } - - public void testSingleZeroLenghtRegion() { - IHyperlink[] links = detect("123 456 789", 5, 0); - assertEquals(1, links.length); - } - - public void testSpaceZeroLengthRegion() { - IHyperlink[] links = detect("1234 789", 5, 0); - assertNull(links); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskRelationHyperlinkDetectorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskRelationHyperlinkDetectorTest.java deleted file mode 100644 index fb18b6340..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/TaskRelationHyperlinkDetectorTest.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui; - -import org.eclipse.jface.text.ITextViewer; -import org.eclipse.mylyn.internal.tasks.ui.editors.TaskRelationHyperlinkDetector; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.ui.AbstractTaskHyperlinkDetector; - -/** - * @author Steffen Pingel - */ -public class TaskRelationHyperlinkDetectorTest extends TaskHyperlinkDetectorTest { - - @Override - protected AbstractTaskHyperlinkDetector createHyperlinkDetector() { - TaskRelationHyperlinkDetector detector = new TaskRelationHyperlinkDetector() { - @Override - protected TaskRepository getTaskRepository(ITextViewer textViewer) { - return repository; - } - }; - return detector; - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/EditorUtilTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/EditorUtilTest.java deleted file mode 100644 index 36f5ac0de..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/EditorUtilTest.java +++ /dev/null @@ -1,105 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui.editor; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.internal.tasks.ui.editors.EditorUtil; -import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Shell; - -/** - * @author Steffen Pingel - */ -public class EditorUtilTest extends TestCase { - - public void testSetEnabledState() { - Shell shell = new Shell(); - Composite composite = new Composite(shell, SWT.NONE); - Label label = new Label(composite, SWT.NONE); - - EditorUtil.setEnabledState(composite, false); - assertFalse(composite.getEnabled()); - assertFalse(label.getEnabled()); - - EditorUtil.setEnabledState(composite, true); - assertTrue(composite.getEnabled()); - assertTrue(label.getEnabled()); - - EditorUtil.setEnabledState(composite, true); - assertTrue(composite.getEnabled()); - assertTrue(label.getEnabled()); - } - - public void testSetEnabledStateDisabledChild() { - Shell shell = new Shell(); - Composite composite = new Composite(shell, SWT.NONE); - Label label = new Label(composite, SWT.NONE); - label.setEnabled(false); - - EditorUtil.setEnabledState(composite, false); - assertFalse(composite.getEnabled()); - assertFalse(label.getEnabled()); - - EditorUtil.setEnabledState(composite, true); - assertTrue(composite.getEnabled()); - assertFalse(label.getEnabled()); - } - - public void testSetEnabledStateDisabledParent() { - Shell shell = new Shell(); - Composite composite = new Composite(shell, SWT.NONE); - composite.setEnabled(false); - Label label = new Label(composite, SWT.NONE); - - EditorUtil.setEnabledState(composite, false); - assertFalse(composite.getEnabled()); - assertFalse(label.getEnabled()); - - EditorUtil.setEnabledState(composite, true); - assertFalse(composite.getEnabled()); - assertTrue(label.getEnabled()); - } - - public void testSetEnabledStateDisabledChildAndComposite() { - Shell shell = new Shell(); - Composite composite = new Composite(shell, SWT.NONE); - composite.setEnabled(false); - Label label = new Label(composite, SWT.NONE); - label.setEnabled(false); - - EditorUtil.setEnabledState(composite, false); - assertFalse(composite.getEnabled()); - assertFalse(label.getEnabled()); - - EditorUtil.setEnabledState(composite, true); - assertFalse(composite.getEnabled()); - assertFalse(label.getEnabled()); - } - - public void testSetEnabledStateDisableStateRemoved() { - Shell shell = new Shell(); - Composite composite = new Composite(shell, SWT.NONE); - Label label = new Label(composite, SWT.NONE); - label.setEnabled(false); - - EditorUtil.setEnabledState(composite, false); - EditorUtil.setEnabledState(composite, true); - // the second time all state information should have been removed and all controls enabled - EditorUtil.setEnabledState(composite, true); - assertTrue(composite.getEnabled()); - assertTrue(label.getEnabled()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskEditorPartDescriptorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskEditorPartDescriptorTest.java deleted file mode 100644 index 958fbcb30..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskEditorPartDescriptorTest.java +++ /dev/null @@ -1,62 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui.editor; - -import java.util.LinkedHashSet; -import java.util.Set; - -import junit.framework.TestCase; - -import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPage; -import org.eclipse.mylyn.tasks.ui.editors.AbstractTaskEditorPart; -import org.eclipse.mylyn.tasks.ui.editors.TaskEditorPartDescriptor; - -/** - * @author Steffen Pingel - */ -public class TaskEditorPartDescriptorTest extends TestCase { - - private TaskEditorPartDescriptor descriptor1; - - private TaskEditorPartDescriptor descriptor2; - - @Override - protected void setUp() throws Exception { - descriptor1 = new TaskEditorPartDescriptor("id") { - @Override - public AbstractTaskEditorPart createPart() { - return null; - } - }; - descriptor2 = new TaskEditorPartDescriptor("id") { - @Override - public AbstractTaskEditorPart createPart() { - // ignore - return null; - } - }.setPath(AbstractTaskEditorPage.PATH_ACTIONS); - } - - public void testEquals() { - assertEquals(descriptor1, descriptor2); - assertEquals(descriptor1.hashCode(), descriptor2.hashCode()); - } - - public void testInsertIntoSet() { - Set<TaskEditorPartDescriptor> set = new LinkedHashSet<TaskEditorPartDescriptor>(); - set.add(descriptor1); - set.add(descriptor2); - assertEquals(1, set.size()); - assertSame(descriptor1, set.iterator().next()); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskUrlHyperlinkDetectorTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskUrlHyperlinkDetectorTest.java deleted file mode 100644 index d90f17b30..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/ui/editor/TaskUrlHyperlinkDetectorTest.java +++ /dev/null @@ -1,89 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - * David Green - fix for bug 266693 - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.ui.editor; - -import junit.framework.TestCase; - -import org.eclipse.jface.text.Document; -import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.text.Region; -import org.eclipse.jface.text.TextViewer; -import org.eclipse.jface.text.hyperlink.AbstractHyperlinkDetector; -import org.eclipse.jface.text.hyperlink.IHyperlink; -import org.eclipse.mylyn.internal.tasks.ui.editors.TaskUrlHyperlink; -import org.eclipse.mylyn.internal.tasks.ui.editors.TaskUrlHyperlinkDetector; - -/** - * @author Steffen Pingel - * @author David Green - */ -public class TaskUrlHyperlinkDetectorTest extends TestCase { - - protected IHyperlink[] detect(final String text, int start, int length) { - AbstractHyperlinkDetector detector = new TaskUrlHyperlinkDetector(); - return detector.detectHyperlinks(new TextViewer() { - @Override - public IDocument getDocument() { - return new Document(text); - } - }, new Region(start, length), true); - } - - public void testUrl() { - IHyperlink[] links = detect("http://foo", 0, 0); - assertNotNull(links); - assertEquals(1, links.length); - assertEquals("http://foo", ((TaskUrlHyperlink) links[0]).getURLString()); - } - - public void testInvalidUrl() { - IHyperlink[] links = detect("abc", 0, 0); - assertNull(links); - - links = detect("", 0, 0); - assertNull(links); - - links = detect(").", 0, 0); - assertNull(links); - } - - public void testParenthesis() { - IHyperlink[] links = detect("(http://foo)", 2, 0); - assertNotNull(links); - assertEquals(1, links.length); - assertEquals("http://foo", ((TaskUrlHyperlink) links[0]).getURLString()); - - links = detect("( http://foo)", 2, 0); - assertNotNull(links); - assertEquals(1, links.length); - assertEquals("http://foo", ((TaskUrlHyperlink) links[0]).getURLString()); - - links = detect("( http://foo).", 2, 0); - assertNotNull(links); - assertEquals(1, links.length); - assertEquals("http://foo", ((TaskUrlHyperlink) links[0]).getURLString()); - } - - public void testDetectionUsingExtent() { - IHyperlink[] hyperlinks = detect("aa http://www.eclipse.org test", 0, 30); - assertNotNull(hyperlinks); - assertEquals(1, hyperlinks.length); - } - - public void testDetection() { - IHyperlink[] hyperlinks = detect("aa http://www.eclipse.org test", 20, 0); - assertNotNull(hyperlinks); - assertEquals(1, hyperlinks.length); - } - -} diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/util/TestTaskDataCollector.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/util/TestTaskDataCollector.java deleted file mode 100644 index 91d9383d9..000000000 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/util/TestTaskDataCollector.java +++ /dev/null @@ -1,53 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Tasktop Technologies 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 - * - * Contributors: - * Tasktop Technologies - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.tasks.tests.util; - -import java.util.ArrayList; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Set; - -import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector; -import org.eclipse.mylyn.tasks.core.ITask; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.core.data.TaskData; -import org.eclipse.mylyn.tasks.core.data.TaskDataCollector; -import org.eclipse.mylyn.tasks.ui.TasksUi; - -/** - * @author Steffen Pingel - */ -public class TestTaskDataCollector extends TaskDataCollector { - - public List<TaskData> results = new ArrayList<TaskData>(); - - @Override - public void accept(TaskData taskData) { - results.add(taskData); - } - - public Set<ITask> getTasks(AbstractRepositoryConnector connector, TaskRepository repository) { - Set<ITask> tasks = new LinkedHashSet<ITask>(results.size()); - for (TaskData taskData : results) { - ITask task = TasksUi.getRepositoryModel().getTask(repository, taskData.getTaskId()); - if (task == null) { - task = TasksUi.getRepositoryModel().createTask(repository, taskData.getTaskId()); - if (connector != null) { - connector.updateTaskFromTaskData(repository, task, taskData); - } - } - tasks.add(task); - } - return tasks; - } - -} |