diff options
author | spingel | 2008-04-08 22:24:01 +0000 |
---|---|---|
committer | spingel | 2008-04-08 22:24:01 +0000 |
commit | 18ef7a55c633928563ce172ac3f3418e611430bc (patch) | |
tree | 05ffcab89d0778f76191703fe71eda80ea0920b7 /org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java | |
parent | efb491ca19b759c6471337cb43dd74c3025342d6 (diff) | |
download | org.eclipse.mylyn.tasks-18ef7a55c633928563ce172ac3f3418e611430bc.tar.gz org.eclipse.mylyn.tasks-18ef7a55c633928563ce172ac3f3418e611430bc.tar.xz org.eclipse.mylyn.tasks-18ef7a55c633928563ce172ac3f3418e611430bc.zip |
ASSIGNED - bug 204279: [patch] support subtask nesting of local tasks
https://bugs.eclipse.org/bugs/show_bug.cgi?id=204279
Diffstat (limited to 'org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java')
-rw-r--r-- | org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskListTest.java | 257 |
1 files changed, 257 insertions, 0 deletions
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 index 48e6a03e2..e984e7a4f 100644 --- 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 @@ -17,6 +17,7 @@ import org.eclipse.mylyn.tasks.core.TaskList; /** * @author Mik Kersten * @author Rob Elves + * @author Shawn Minto */ public class TaskListTest extends TestCase { @@ -38,4 +39,260 @@ public class TaskListTest extends TestCase { assertEquals(subTask, task.getChildren().iterator().next()); } + public void testLocalSubTaskAddCycle() { + TaskList taskList = new TaskList(); + 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() { + TaskList taskList = new TaskList(); + 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() { + TaskList taskList = new TaskList(); + 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() { + TaskList taskList = new TaskList(); + 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()); + } } |