From 54f5ff5eb8c4aa1f1c3872955f510fcc830b3e74 Mon Sep 17 00:00:00 2001 From: Tim Su Date: Mon, 10 May 2010 22:06:09 -0700 Subject: [PATCH] added to upgrade tests. but now going in different direction... --- AndroidManifest.xml | 2 +- .../upgrade/Astrid2To3UpgradeTests.java | 68 +++++++++++++++++++ 2 files changed, 69 insertions(+), 1 deletion(-) diff --git a/AndroidManifest.xml b/AndroidManifest.xml index d4103d4ce..134c0ed1c 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,7 +1,7 @@ + android:versionCode="150" android:versionName="3.0.0"> diff --git a/tests/src/com/todoroo/astrid/upgrade/Astrid2To3UpgradeTests.java b/tests/src/com/todoroo/astrid/upgrade/Astrid2To3UpgradeTests.java index 96b186486..b4de9b2ef 100644 --- a/tests/src/com/todoroo/astrid/upgrade/Astrid2To3UpgradeTests.java +++ b/tests/src/com/todoroo/astrid/upgrade/Astrid2To3UpgradeTests.java @@ -1,7 +1,75 @@ package com.todoroo.astrid.upgrade; +import java.util.Date; + +import com.thoughtworks.sql.Query; +import com.todoroo.andlib.data.TodorooCursor; +import com.todoroo.andlib.service.Autowired; +import com.todoroo.astrid.dao.TaskDao; +import com.todoroo.astrid.legacy.data.enums.Importance; +import com.todoroo.astrid.legacy.data.enums.RepeatInterval; +import com.todoroo.astrid.legacy.data.task.TaskController; +import com.todoroo.astrid.legacy.data.task.TaskModelForEdit; +import com.todoroo.astrid.legacy.data.task.AbstractTaskModel.RepeatInfo; +import com.todoroo.astrid.model.Task; +import com.todoroo.astrid.service.UpgradeService; import com.todoroo.astrid.test.DatabaseTestCase; public class Astrid2To3UpgradeTests extends DatabaseTestCase { + @Autowired + TaskDao taskDao; + + public void upgrade2To3() { + new UpgradeService().performUpgrade(130, 150); + } + + public static void assertDatesEqual(Date old, int newDate) { + assertEquals(old.getTime() / 1000L, newDate); + } + + public void testBasicUpgrades() { + TaskController taskController = new TaskController(getContext()); + taskController.open(); + + // create some ish + TaskModelForEdit griffey = new TaskModelForEdit(); + griffey.setName("ken griffey jr"); + griffey.setDefiniteDueDate(new Date()); + griffey.setImportance(Importance.LEVEL_1); + griffey.setEstimatedSeconds(3212); + griffey.setNotes("debut game: 1989"); + taskController.saveTask(griffey, false); + + TaskModelForEdit guti = new com.todoroo.astrid.legacy.data.task.TaskModelForEdit(); + guti.setName("franklin gutierrez"); + guti.setPreferredDueDate(new Date(System.currentTimeMillis() + 5000000L)); + guti.setHiddenUntil(new Date()); + guti.setRepeat(new RepeatInfo(RepeatInterval.DAYS, 10)); + guti.setElapsedSeconds(500); + taskController.saveTask(guti, false); + + // assert created + assertEquals(2, taskController.getAllTaskIdentifiers()); + + // upgrade + taskController.close(); + upgrade2To3(); + + // verify that it ain't no more in the legacy table + taskController.open(); + assertEquals(0, taskController.getAllTaskIdentifiers()); + + // verify that data exists in our new table + TodorooCursor tasks = taskDao.query(database, Query.select(Task.PROPERTIES)); + tasks.moveToFirst(); + Task task = new Task(tasks, Task.PROPERTIES); + assertEquals(griffey.getName(), task.getValue(Task.TITLE)); + assertDatesEqual(griffey.getDefiniteDueDate(), task.getValue(Task.DUE_DATE)); + assertEquals((Integer)Task.IMPORTANCE_SHOULD_DO, task.getValue(Task.IMPORTANCE)); + + } + + + }