From 990df8eb47163f996b2e39acc93403ab3f476cc0 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Thu, 1 Feb 2018 13:18:52 -0600 Subject: [PATCH] Fixing things --- app/build.gradle | 3 +- .../astrid/gtasks/GtasksListService.java | 10 ++-- .../gtasks/GtasksSubtaskListFragment.java | 3 +- .../org/tasks/receivers/PushReceiver.java | 22 +++----- .../tasks/tasklist/GtasksListFragment.java | 4 +- .../org/tasks/ui/GoogleTaskListFragment.java | 8 +-- .../astrid/alarms/AlarmJobServiceTest.java | 4 +- .../com/todoroo/astrid/dao/TaskDaoTests.java | 18 +++---- .../com/todoroo/astrid/model/TaskTest.java | 4 +- .../astrid/service/TitleParserTest.java | 21 ++------ .../astrid/subtasks/SubtasksHelperTest.java | 2 +- .../astrid/subtasks/SubtasksMovingTest.java | 2 +- .../astrid/gtasks/GtasksIndentActionTest.java | 4 +- .../gtasks/GtasksMetadataServiceTest.java | 4 +- .../gtasks/GtasksTaskListUpdaterTest.java | 2 +- .../astrid/gtasks/GtasksTaskMovingTest.java | 2 +- .../gtasks/GoogleTaskSyncAdapterTest.java | 50 ++++++++++--------- .../astrid/gtasks/GtasksListService.java | 10 ++-- .../gtasks/GtasksSubtaskListFragment.java | 3 +- .../org/tasks/receivers/PushReceiver.java | 22 +++----- .../tasks/tasklist/GtasksListFragment.java | 4 +- .../org/tasks/ui/GoogleTaskListFragment.java | 8 +-- .../gtasks/sync/GtasksTaskContainer.java | 5 +- .../tasks/gtasks/GoogleTaskSyncAdapter.java | 39 ++++----------- .../org/tasks/receivers/PushReceiver.java | 33 +++--------- app/src/main/AndroidManifest.xml | 2 - .../astrid/activity/TaskListActivity.java | 1 + .../astrid/activity/TaskListFragment.java | 3 +- .../astrid/backup/TasksXmlImporter.java | 2 +- .../java/com/todoroo/astrid/dao/TaskDao.java | 8 ++- .../java/com/todoroo/astrid/data/Task.java | 4 +- .../tasks/injection/BroadcastComponent.java | 3 -- .../tasks/jobs/AfterSaveIntentService.java | 3 +- 33 files changed, 124 insertions(+), 189 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6dffa9d05..3b6d75471 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,9 +28,10 @@ android { } compileSdkVersion 27 - buildToolsVersion '27.0.0' + buildToolsVersion '27.0.3' defaultConfig { + testApplicationId "org.tasks.test" applicationId "org.tasks" versionCode 490 versionName "5.2.1" diff --git a/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksListService.java b/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksListService.java index f87544bca..2d4e0b254 100644 --- a/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksListService.java +++ b/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksListService.java @@ -1,5 +1,7 @@ package com.todoroo.astrid.gtasks; +import org.tasks.data.GoogleTaskList; + import java.util.Collections; import java.util.List; @@ -12,15 +14,11 @@ public class GtasksListService { } - public List getLists() { + public List getLists() { return Collections.emptyList(); } - public GtasksList getList(long storeId) { + public GoogleTaskList getList(long storeId) { return null; } - - public List getSortedGtasksList() { - return Collections.emptyList(); - } } diff --git a/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java b/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java index e431b9b64..bdad49ec4 100644 --- a/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java +++ b/app/src/amazon/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java @@ -3,10 +3,11 @@ package com.todoroo.astrid.gtasks; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.api.GtasksFilter; +import org.tasks.data.GoogleTaskList; import org.tasks.tasklist.GtasksListFragment; public class GtasksSubtaskListFragment extends GtasksListFragment { - public static TaskListFragment newGtasksSubtaskListFragment(GtasksFilter gtasksFilter, GtasksList list) { + public static TaskListFragment newGtasksSubtaskListFragment(GtasksFilter gtasksFilter, GoogleTaskList list) { return null; } } diff --git a/app/src/amazon/java/org/tasks/receivers/PushReceiver.java b/app/src/amazon/java/org/tasks/receivers/PushReceiver.java index d9f1b80d5..6bb3f851d 100644 --- a/app/src/amazon/java/org/tasks/receivers/PushReceiver.java +++ b/app/src/amazon/java/org/tasks/receivers/PushReceiver.java @@ -1,27 +1,17 @@ package org.tasks.receivers; -import android.content.ContentValues; -import android.content.Context; -import android.content.Intent; - -import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.data.Task; -import org.tasks.injection.BroadcastComponent; -import org.tasks.injection.InjectingBroadcastReceiver; +import javax.inject.Inject; -public class PushReceiver extends InjectingBroadcastReceiver { +public class PushReceiver { - public static void broadcast(Context context, Task task, ContentValues values) { - } + @Inject + public PushReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - super.onReceive(context, intent); } - @Override - protected void inject(BroadcastComponent component) { - component.inject(this); + public void push(Task task, Task original) { + } } diff --git a/app/src/amazon/java/org/tasks/tasklist/GtasksListFragment.java b/app/src/amazon/java/org/tasks/tasklist/GtasksListFragment.java index 4e34babf2..f0b1bf196 100644 --- a/app/src/amazon/java/org/tasks/tasklist/GtasksListFragment.java +++ b/app/src/amazon/java/org/tasks/tasklist/GtasksListFragment.java @@ -3,8 +3,10 @@ package org.tasks.tasklist; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.api.GtasksFilter; +import org.tasks.data.GoogleTaskList; + public class GtasksListFragment extends TaskListFragment { - public static TaskListFragment newGtasksListFragment(GtasksFilter gtasksFilter, GtasksList list) { + public static TaskListFragment newGtasksListFragment(GtasksFilter gtasksFilter, GoogleTaskList list) { return null; } } diff --git a/app/src/amazon/java/org/tasks/ui/GoogleTaskListFragment.java b/app/src/amazon/java/org/tasks/ui/GoogleTaskListFragment.java index 1fef660cd..3e523465a 100644 --- a/app/src/amazon/java/org/tasks/ui/GoogleTaskListFragment.java +++ b/app/src/amazon/java/org/tasks/ui/GoogleTaskListFragment.java @@ -3,6 +3,7 @@ package org.tasks.ui; import com.todoroo.astrid.data.Task; import org.tasks.R; +import org.tasks.data.GoogleTaskList; import org.tasks.injection.FragmentComponent; public class GoogleTaskListFragment extends TaskEditControlFragment { @@ -23,11 +24,6 @@ public class GoogleTaskListFragment extends TaskEditControlFragment { return 0; } - @Override - public void initialize(boolean isNewTask, Task task) { - - } - @Override public void apply(Task task) { @@ -38,7 +34,7 @@ public class GoogleTaskListFragment extends TaskEditControlFragment { } - public void setList(GtasksList list) { + public void setList(GoogleTaskList list) { } } diff --git a/app/src/androidTest/java/com/todoroo/astrid/alarms/AlarmJobServiceTest.java b/app/src/androidTest/java/com/todoroo/astrid/alarms/AlarmJobServiceTest.java index c347712da..7ab4c4487 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/alarms/AlarmJobServiceTest.java +++ b/app/src/androidTest/java/com/todoroo/astrid/alarms/AlarmJobServiceTest.java @@ -51,7 +51,7 @@ public class AlarmJobServiceTest extends InjectingTestCase { public void scheduleAlarm() { Task task = newTask(); - taskDao.save(task); + taskDao.createNew(task); DateTime alarmTime = new DateTime(2017, 9, 24, 19, 57); Alarm alarm = new Alarm(task.getId(), alarmTime.getMillis()); @@ -69,7 +69,7 @@ public class AlarmJobServiceTest extends InjectingTestCase { Task task = newTask(with(REMINDER_LAST, alarmTime.endOfMinute())); - taskDao.save(task); + taskDao.createNew(task); alarmDao.insert(new Alarm(task.getId(), alarmTime.getMillis())); diff --git a/app/src/androidTest/java/com/todoroo/astrid/dao/TaskDaoTests.java b/app/src/androidTest/java/com/todoroo/astrid/dao/TaskDaoTests.java index dcf972bcb..93e890240 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/dao/TaskDaoTests.java +++ b/app/src/androidTest/java/com/todoroo/astrid/dao/TaskDaoTests.java @@ -38,7 +38,7 @@ public class TaskDaoTests extends InjectingTestCase { // create task "happy" Task task = new Task(); task.setTitle("happy"); - taskDao.save(task); + taskDao.createNew(task); assertEquals(1, taskDao.getAll().size()); long happyId = task.getId(); assertNotSame(Task.NO_ID, happyId); @@ -48,7 +48,7 @@ public class TaskDaoTests extends InjectingTestCase { // create task "sad" task = new Task(); task.setTitle("sad"); - taskDao.save(task); + taskDao.createNew(task); assertEquals(2, taskDao.getAll().size()); // rename sad to melancholy @@ -73,35 +73,35 @@ public class TaskDaoTests extends InjectingTestCase { // create normal task Task task = new Task(); task.setTitle("normal"); - taskDao.save(task); + taskDao.createNew(task); // create blank task task = new Task(); task.setTitle(""); - taskDao.save(task); + taskDao.createNew(task); // create hidden task task = new Task(); task.setTitle("hidden"); task.setHideUntil(DateUtilities.now() + 10000); - taskDao.save(task); + taskDao.createNew(task); // create task with deadlines task = new Task(); task.setTitle("deadlineInFuture"); task.setDueDate(DateUtilities.now() + 10000); - taskDao.save(task); + taskDao.createNew(task); task = new Task(); task.setTitle("deadlineInPast"); task.setDueDate(DateUtilities.now() - 10000); - taskDao.save(task); + taskDao.createNew(task); // create completed task task = new Task(); task.setTitle("completed"); task.setCompletionDate(DateUtilities.now() - 10000); - taskDao.save(task); + taskDao.createNew(task); // check is active assertEquals(5, taskDao.getActiveTasks().size()); @@ -120,7 +120,7 @@ public class TaskDaoTests extends InjectingTestCase { // create task "happy" Task task = new Task(); task.setTitle("happy"); - taskDao.save(task); + taskDao.createNew(task); assertEquals(1, taskDao.getAll().size()); // delete diff --git a/app/src/androidTest/java/com/todoroo/astrid/model/TaskTest.java b/app/src/androidTest/java/com/todoroo/astrid/model/TaskTest.java index 90c2ae322..20e66779b 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/model/TaskTest.java +++ b/app/src/androidTest/java/com/todoroo/astrid/model/TaskTest.java @@ -26,7 +26,7 @@ public class TaskTest extends InjectingTestCase { public void testSavedTaskHasCreationDate() { freezeClock().thawAfter(new Snippet() {{ Task task = new Task(); - taskDao.save(task); + taskDao.createNew(task); assertEquals(currentTimeMillis(), (long) task.getCreationDate()); }}); } @@ -34,7 +34,7 @@ public class TaskTest extends InjectingTestCase { @Test public void testReadTaskFromDb() { Task task = new Task(); - taskDao.save(task); + taskDao.createNew(task); final Task fromDb = taskDao.fetch(task.getId()); assertEquals(task, fromDb); } diff --git a/app/src/androidTest/java/com/todoroo/astrid/service/TitleParserTest.java b/app/src/androidTest/java/com/todoroo/astrid/service/TitleParserTest.java index 1863e05c1..604fbb832 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/service/TitleParserTest.java +++ b/app/src/androidTest/java/com/todoroo/astrid/service/TitleParserTest.java @@ -9,7 +9,6 @@ import android.support.test.runner.AndroidJUnit4; import com.google.ical.values.Frequency; import com.google.ical.values.RRule; -import com.todoroo.astrid.dao.TaskDao; import com.todoroo.astrid.data.Task; import com.todoroo.astrid.tags.TagService; import com.todoroo.astrid.utility.TitleParser; @@ -36,7 +35,6 @@ import static org.tasks.date.DateTimeUtils.newDateTime; @RunWith(AndroidJUnit4.class) public class TitleParserTest extends InjectingTestCase { - @Inject TaskDao taskDao; @Inject TagService tagService; @Inject Preferences preferences; @Inject TaskCreator taskCreator; @@ -55,10 +53,8 @@ public class TitleParserTest extends InjectingTestCase { /** test that completing a task w/ no regular expressions creates a simple task with no date, no repeat, no lists*/ @Test public void testNoRegexes() throws Exception { - Task task = new Task(); + Task task = taskCreator.basicQuickAddTask("Jog"); Task nothing = new Task(); - task.setTitle("Jog"); - taskDao.save(task); assertFalse(task.hasDueTime()); assertFalse(task.hasDueDate()); assertEquals(task.getRecurrence(), nothing.getRecurrence()); @@ -264,25 +260,18 @@ public class TitleParserTest extends InjectingTestCase { }; Task task; for (String acceptedStringAtEnd : acceptedStringsAtEnd) { - task = new Task(); - task.setTitle("Jog " + acceptedStringAtEnd); //test at end of task. should set importance. - taskDao.save(task); + task = taskCreator.basicQuickAddTask("Jog " + acceptedStringAtEnd); //test at end of task. should set importance. assertEquals((int) task.getImportance(), Task.IMPORTANCE_SHOULD_DO); } for (String acceptedStringAtEnd : acceptedStringsAtEnd) { - task = new Task(); - task.setTitle(acceptedStringAtEnd + " jog"); //test at beginning of task. should not set importance. - taskDao.save(task); + task = taskCreator.basicQuickAddTask(acceptedStringAtEnd + " jog"); //test at beginning of task. should not set importance. assertEquals((int) task.getImportance(), Task.IMPORTANCE_SHOULD_DO); } for (String acceptedStringAnywhere : acceptedStringsAnywhere) { - task = new Task(); - task.setTitle("Jog " + acceptedStringAnywhere); //test at end of task. should set importance. - taskDao.save(task); + task = taskCreator.basicQuickAddTask("Jog " + acceptedStringAnywhere); //test at end of task. should set importance. assertEquals((int) task.getImportance(), Task.IMPORTANCE_SHOULD_DO); - task.setTitle(acceptedStringAnywhere + " jog"); //test at beginning of task. should set importance. - taskDao.save(task); + task = taskCreator.basicQuickAddTask(acceptedStringAnywhere + " jog"); //test at beginning of task. should set importance. assertEquals((int) task.getImportance(), Task.IMPORTANCE_SHOULD_DO); } } diff --git a/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksHelperTest.java b/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksHelperTest.java index 7ef4fca52..0785a3a01 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksHelperTest.java +++ b/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksHelperTest.java @@ -32,7 +32,7 @@ public class SubtasksHelperTest extends SubtasksTestCase { Task t = new Task(); t.setTitle(title); t.setUuid(uuid); - taskDao.save(t); + taskDao.createNew(t); } private void createTasks() { diff --git a/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksMovingTest.java b/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksMovingTest.java index 64df32693..b58dd8733 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksMovingTest.java +++ b/app/src/androidTest/java/com/todoroo/astrid/subtasks/SubtasksMovingTest.java @@ -48,7 +48,7 @@ public class SubtasksMovingTest extends SubtasksTestCase { private Task createTask(String title) { Task task = new Task(); task.setTitle(title); - taskDao.save(task); + taskDao.createNew(task); return task; } diff --git a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksIndentActionTest.java b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksIndentActionTest.java index 7a01a708a..4ca5db82d 100644 --- a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksIndentActionTest.java +++ b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksIndentActionTest.java @@ -175,7 +175,7 @@ public class GtasksIndentActionTest extends InjectingTestCase { private Task taskWithMetadata(long order, int indentation) { Task newTask = new Task(); - taskDao.save(newTask); + taskDao.createNew(newTask); GoogleTask metadata = new GoogleTask(newTask.getId(), "list"); metadata.setIndent(indentation); metadata.setOrder(order); @@ -201,7 +201,7 @@ public class GtasksIndentActionTest extends InjectingTestCase { private Task taskWithoutMetadata() { Task task = new Task(); - taskDao.save(task); + taskDao.createNew(task); return task; } } diff --git a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksMetadataServiceTest.java b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksMetadataServiceTest.java index 28d73d9e4..63b7b3eeb 100644 --- a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksMetadataServiceTest.java +++ b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksMetadataServiceTest.java @@ -115,7 +115,7 @@ public class GtasksMetadataServiceTest extends InjectingTestCase { private Task taskWithMetadata(String id) { Task task = new Task(); task.setTitle("cats"); - taskDao.save(task); + taskDao.createNew(task); GoogleTask metadata = new GoogleTask(task.getId(), ""); if (id != null) { metadata.setRemoteId(id); @@ -132,7 +132,7 @@ public class GtasksMetadataServiceTest extends InjectingTestCase { private Task taskWithoutMetadata() { Task task = new Task(); task.setTitle("dogs"); - taskDao.save(task); + taskDao.createNew(task); return task; } } diff --git a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskListUpdaterTest.java b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskListUpdaterTest.java index c9def46b3..6f93ee4ba 100644 --- a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskListUpdaterTest.java +++ b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskListUpdaterTest.java @@ -184,7 +184,7 @@ public class GtasksTaskListUpdaterTest extends InjectingTestCase { private Task createTask(String title, long order, int indent) { Task task = new Task(); task.setTitle(title); - taskDao.save(task); + taskDao.createNew(task); GoogleTask metadata = new GoogleTask(task.getId(), "1"); if(order != VALUE_UNSET) { metadata.setOrder(order); diff --git a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskMovingTest.java b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskMovingTest.java index 69b0154d0..104b15ac6 100644 --- a/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskMovingTest.java +++ b/app/src/androidTestGoogleplay/java/com/todoroo/astrid/gtasks/GtasksTaskMovingTest.java @@ -300,7 +300,7 @@ public class GtasksTaskMovingTest extends InjectingTestCase { private Task createTask(String title, long order, int indent) { Task task = new Task(); task.setTitle(title); - taskDao.save(task); + taskDao.createNew(task); GoogleTask metadata = new GoogleTask(task.getId(), "1"); if(order != VALUE_UNSET) { metadata.setOrder(order); diff --git a/app/src/androidTestGoogleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapterTest.java b/app/src/androidTestGoogleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapterTest.java index fc800e307..edaf4f97b 100644 --- a/app/src/androidTestGoogleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapterTest.java +++ b/app/src/androidTestGoogleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapterTest.java @@ -23,86 +23,88 @@ public class GoogleTaskSyncAdapterTest { @Test public void testMergeDate() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 11))); Task local = newTask(with(DUE_DATE, new DateTime(2016, 3, 12))); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 11))).getDueDate(), local); - assertEquals(new DateTime(2016, 3, 11, 12, 0).getMillis(), remote.getDueDate().longValue()); + assertEquals( + new DateTime(2016, 3, 11, 12, 0).getMillis(), + local.getDueDate().longValue()); } @Test public void testMergeTime() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 11))); Task local = newTask(with(DUE_TIME, new DateTime(2016, 3, 11, 13, 30))); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 11))).getDueDate(), local); assertEquals( new DateTime(2016, 3, 11, 13, 30, 1).getMillis(), - remote.getDueDate().longValue()); + local.getDueDate().longValue()); } @Test public void testDueDateAdjustHideBackwards() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 11))); Task local = newTask(with(DUE_DATE, new DateTime(2016, 3, 12)), with(HIDE_TYPE, HIDE_UNTIL_DUE)); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 11))).getDueDate(), local); - assertEquals(new DateTime(2016, 3, 11).getMillis(), remote.getHideUntil().longValue()); + assertEquals( + new DateTime(2016, 3, 11).getMillis(), + local.getHideUntil().longValue()); } @Test public void testDueDateAdjustHideForwards() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 14))); Task local = newTask(with(DUE_DATE, new DateTime(2016, 3, 12)), with(HIDE_TYPE, HIDE_UNTIL_DUE)); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 14))).getDueDate(), local); - assertEquals(new DateTime(2016, 3, 14).getMillis(), remote.getHideUntil().longValue()); + assertEquals( + new DateTime(2016, 3, 14).getMillis(), + local.getHideUntil().longValue()); } @Test public void testDueTimeAdjustHideBackwards() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 11))); Task local = newTask(with(DUE_TIME, new DateTime(2016, 3, 12, 13, 30)), with(HIDE_TYPE, HIDE_UNTIL_DUE_TIME)); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 11))).getDueDate(), local); - assertEquals(new DateTime(2016, 3, 11, 13, 30, 1).getMillis(), remote.getHideUntil().longValue()); + assertEquals( + new DateTime(2016, 3, 11, 13, 30, 1).getMillis(), + local.getHideUntil().longValue()); } @Test public void testDueTimeAdjustTimeForwards() { - Task remote = newTask(with(DUE_DATE, new DateTime(2016, 3, 14))); Task local = newTask(with(DUE_TIME, new DateTime(2016, 3, 12, 13, 30)), with(HIDE_TYPE, HIDE_UNTIL_DUE_TIME)); - mergeDates(remote, local); + mergeDates(newTask(with(DUE_DATE, new DateTime(2016, 3, 14))).getDueDate(), local); - assertEquals(new DateTime(2016, 3, 14, 13, 30, 1).getMillis(), remote.getHideUntil().longValue()); + assertEquals( + new DateTime(2016, 3, 14, 13, 30, 1).getMillis(), + local.getHideUntil().longValue()); } @Test public void testDueDateClearHide() { - Task remote = newTask(); Task local = newTask(with(DUE_DATE, new DateTime(2016, 3, 12)), with(HIDE_TYPE, HIDE_UNTIL_DUE)); - mergeDates(remote, local); + mergeDates(newTask().getDueDate(), local); - assertEquals(0, remote.getHideUntil().longValue()); + assertEquals(0, local.getHideUntil().longValue()); } @Test public void testDueTimeClearHide() { - Task remote = newTask(); Task local = newTask(with(DUE_TIME, new DateTime(2016, 3, 12, 13, 30)), with(HIDE_TYPE, HIDE_UNTIL_DUE_TIME)); - mergeDates(remote, local); + mergeDates(newTask().getDueDate(), local); - assertEquals(0, remote.getHideUntil().longValue()); + assertEquals(0, local.getHideUntil().longValue()); } } diff --git a/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksListService.java b/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksListService.java index f87544bca..2d4e0b254 100644 --- a/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksListService.java +++ b/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksListService.java @@ -1,5 +1,7 @@ package com.todoroo.astrid.gtasks; +import org.tasks.data.GoogleTaskList; + import java.util.Collections; import java.util.List; @@ -12,15 +14,11 @@ public class GtasksListService { } - public List getLists() { + public List getLists() { return Collections.emptyList(); } - public GtasksList getList(long storeId) { + public GoogleTaskList getList(long storeId) { return null; } - - public List getSortedGtasksList() { - return Collections.emptyList(); - } } diff --git a/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java b/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java index e431b9b64..bdad49ec4 100644 --- a/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java +++ b/app/src/generic/java/com/todoroo/astrid/gtasks/GtasksSubtaskListFragment.java @@ -3,10 +3,11 @@ package com.todoroo.astrid.gtasks; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.api.GtasksFilter; +import org.tasks.data.GoogleTaskList; import org.tasks.tasklist.GtasksListFragment; public class GtasksSubtaskListFragment extends GtasksListFragment { - public static TaskListFragment newGtasksSubtaskListFragment(GtasksFilter gtasksFilter, GtasksList list) { + public static TaskListFragment newGtasksSubtaskListFragment(GtasksFilter gtasksFilter, GoogleTaskList list) { return null; } } diff --git a/app/src/generic/java/org/tasks/receivers/PushReceiver.java b/app/src/generic/java/org/tasks/receivers/PushReceiver.java index d9f1b80d5..6bb3f851d 100644 --- a/app/src/generic/java/org/tasks/receivers/PushReceiver.java +++ b/app/src/generic/java/org/tasks/receivers/PushReceiver.java @@ -1,27 +1,17 @@ package org.tasks.receivers; -import android.content.ContentValues; -import android.content.Context; -import android.content.Intent; - -import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.data.Task; -import org.tasks.injection.BroadcastComponent; -import org.tasks.injection.InjectingBroadcastReceiver; +import javax.inject.Inject; -public class PushReceiver extends InjectingBroadcastReceiver { +public class PushReceiver { - public static void broadcast(Context context, Task task, ContentValues values) { - } + @Inject + public PushReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - super.onReceive(context, intent); } - @Override - protected void inject(BroadcastComponent component) { - component.inject(this); + public void push(Task task, Task original) { + } } diff --git a/app/src/generic/java/org/tasks/tasklist/GtasksListFragment.java b/app/src/generic/java/org/tasks/tasklist/GtasksListFragment.java index 4e34babf2..f0b1bf196 100644 --- a/app/src/generic/java/org/tasks/tasklist/GtasksListFragment.java +++ b/app/src/generic/java/org/tasks/tasklist/GtasksListFragment.java @@ -3,8 +3,10 @@ package org.tasks.tasklist; import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.api.GtasksFilter; +import org.tasks.data.GoogleTaskList; + public class GtasksListFragment extends TaskListFragment { - public static TaskListFragment newGtasksListFragment(GtasksFilter gtasksFilter, GtasksList list) { + public static TaskListFragment newGtasksListFragment(GtasksFilter gtasksFilter, GoogleTaskList list) { return null; } } diff --git a/app/src/generic/java/org/tasks/ui/GoogleTaskListFragment.java b/app/src/generic/java/org/tasks/ui/GoogleTaskListFragment.java index 1fef660cd..3e523465a 100644 --- a/app/src/generic/java/org/tasks/ui/GoogleTaskListFragment.java +++ b/app/src/generic/java/org/tasks/ui/GoogleTaskListFragment.java @@ -3,6 +3,7 @@ package org.tasks.ui; import com.todoroo.astrid.data.Task; import org.tasks.R; +import org.tasks.data.GoogleTaskList; import org.tasks.injection.FragmentComponent; public class GoogleTaskListFragment extends TaskEditControlFragment { @@ -23,11 +24,6 @@ public class GoogleTaskListFragment extends TaskEditControlFragment { return 0; } - @Override - public void initialize(boolean isNewTask, Task task) { - - } - @Override public void apply(Task task) { @@ -38,7 +34,7 @@ public class GoogleTaskListFragment extends TaskEditControlFragment { } - public void setList(GtasksList list) { + public void setList(GoogleTaskList list) { } } diff --git a/app/src/googleplay/java/com/todoroo/astrid/gtasks/sync/GtasksTaskContainer.java b/app/src/googleplay/java/com/todoroo/astrid/gtasks/sync/GtasksTaskContainer.java index 2229c5efe..07ad4ffb8 100644 --- a/app/src/googleplay/java/com/todoroo/astrid/gtasks/sync/GtasksTaskContainer.java +++ b/app/src/googleplay/java/com/todoroo/astrid/gtasks/sync/GtasksTaskContainer.java @@ -14,6 +14,8 @@ import org.tasks.data.GoogleTask; import java.util.ArrayList; +import static org.tasks.gtasks.GoogleTaskSyncAdapter.mergeDates; + public class GtasksTaskContainer { public final Task task; @@ -43,8 +45,7 @@ public class GtasksTaskContainer { } long dueDate = GtasksApiUtilities.gtasksDueTimeToUnixTime(remoteTask.getDue()); - long createdDate = Task.createDueDate(Task.URGENCY_SPECIFIC_DAY, dueDate); - task.setDueDate(createdDate); + mergeDates(Task.createDueDate(Task.URGENCY_SPECIFIC_DAY, dueDate), task); task.setNotes(remoteTask.getNotes()); gtaskMetadata.setRemoteId(remoteTask.getId()); diff --git a/app/src/googleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapter.java b/app/src/googleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapter.java index b7360d71b..1fbf7a5bb 100644 --- a/app/src/googleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapter.java +++ b/app/src/googleplay/java/org/tasks/gtasks/GoogleTaskSyncAdapter.java @@ -43,7 +43,6 @@ import com.todoroo.astrid.gtasks.api.GtasksInvoker; import com.todoroo.astrid.gtasks.api.HttpNotFoundException; import com.todoroo.astrid.gtasks.sync.GtasksSyncService; import com.todoroo.astrid.gtasks.sync.GtasksTaskContainer; -import com.todoroo.astrid.helper.UUIDHelper; import com.todoroo.astrid.service.TaskCreator; import com.todoroo.astrid.utility.Constants; @@ -69,7 +68,6 @@ import javax.inject.Inject; import timber.log.Timber; -import static com.todoroo.astrid.data.Task.NO_UUID; import static org.tasks.date.DateTimeUtils.newDateTime; /** @@ -320,12 +318,15 @@ public class GoogleTaskSyncAdapter extends InjectingAbstractThreadedSyncAdapter for (com.google.api.services.tasks.model.Task gtask : tasks) { String remoteId = gtask.getId(); GoogleTask googleTask = getMetadataByGtaskId(remoteId); + Task task = null; if (googleTask == null) { googleTask = new GoogleTask(0, ""); + } else if (googleTask.getTask() > 0){ + task = taskDao.fetch(googleTask.getTask()); + } + if (task == null) { + task = taskCreator.createWithValues(null, ""); } - Task task = googleTask.getTask() > 0 - ? taskDao.fetch(googleTask.getTask()) - : taskCreator.createWithValues(null, null); GtasksTaskContainer container = new GtasksTaskContainer(gtask, task, listId, googleTask); container.gtaskMetadata.setRemoteOrder(Long.parseLong(gtask.getPosition())); container.gtaskMetadata.setParent(localIdForGtasksId(gtask.getParent())); @@ -354,23 +355,6 @@ public class GoogleTaskSyncAdapter extends InjectingAbstractThreadedSyncAdapter } private void write(GtasksTaskContainer task) { - // merge astrid dates with google dates - - if(task.task.isSaved()) { - Task local = taskDao.fetch(task.task.getId()); - if (local == null) { - task.task.setId(Task.NO_ID); - task.task.setUuid(NO_UUID); - } else { - mergeDates(task.task, local); - } - } else { // Set default importance and reminders for remotely created tasks - task.task.setImportance(preferences.getIntegerFromString( - R.string.p_default_importance_key, Task.IMPORTANCE_SHOULD_DO)); // TODO: can probably remove this - TaskCreator.setDefaultReminders(preferences, task.task); // TODO: can probably remove this too - task.task.setUuid(UUIDHelper.newUUID()); - taskDao.createNew(task.task); - } if (!TextUtils.isEmpty(task.task.getTitle())) { task.task.putTransitory(SyncFlags.GTASKS_SUPPRESS_SYNC, true); task.task.putTransitory(TaskDao.TRANS_SUPPRESS_REFRESH, true); @@ -418,21 +402,18 @@ public class GoogleTaskSyncAdapter extends InjectingAbstractThreadedSyncAdapter } - static void mergeDates(Task remote, Task local) { - if (remote.hasDueDate() && local.hasDueTime()) { + public static void mergeDates(long remoteDueDate, Task local) { + if (remoteDueDate > 0 && local.hasDueTime()) { DateTime oldDate = newDateTime(local.getDueDate()); - DateTime newDate = newDateTime(remote.getDueDate()) + DateTime newDate = newDateTime(remoteDueDate) .withHourOfDay(oldDate.getHourOfDay()) .withMinuteOfHour(oldDate.getMinuteOfHour()) .withSecondOfMinute(oldDate.getSecondOfMinute()); local.setDueDateAdjustingHideUntil( Task.createDueDate(Task.URGENCY_SPECIFIC_DAY_TIME, newDate.getMillis())); } else { - local.setDueDateAdjustingHideUntil(remote.getDueDate()); + local.setDueDateAdjustingHideUntil(remoteDueDate); } - - remote.setHideUntil(local.getHideUntil()); - remote.setDueDate(local.getDueDate()); } @Override diff --git a/app/src/googleplay/java/org/tasks/receivers/PushReceiver.java b/app/src/googleplay/java/org/tasks/receivers/PushReceiver.java index 915303f25..952ff117b 100644 --- a/app/src/googleplay/java/org/tasks/receivers/PushReceiver.java +++ b/app/src/googleplay/java/org/tasks/receivers/PushReceiver.java @@ -1,38 +1,19 @@ package org.tasks.receivers; -import android.content.Context; -import android.content.Intent; - -import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.data.Task; -import org.tasks.injection.BroadcastComponent; -import org.tasks.injection.InjectingBroadcastReceiver; - import javax.inject.Inject; -public class PushReceiver extends InjectingBroadcastReceiver { - - public static void broadcast(Context context, Task task, Task original) { - Intent intent = new Intent(context, PushReceiver.class); - intent.putExtra(AstridApiConstants.EXTRAS_TASK, task); - intent.putExtra(AstridApiConstants.EXTRAS_ORIGINAL, original); - context.sendBroadcast(intent); - } - - @Inject GoogleTaskPusher googleTaskPusher; +public class PushReceiver { - @Override - public void onReceive(Context context, Intent intent) { - super.onReceive(context, intent); + private final GoogleTaskPusher googleTaskPusher; - googleTaskPusher.push( - intent.getParcelableExtra(AstridApiConstants.EXTRAS_TASK), - intent.getParcelableExtra(AstridApiConstants.EXTRAS_ORIGINAL)); + @Inject + public PushReceiver(GoogleTaskPusher googleTaskPusher) { + this.googleTaskPusher = googleTaskPusher; } - @Override - protected void inject(BroadcastComponent component) { - component.inject(this); + public void push(Task task, Task original) { + googleTaskPusher.push(task, original); } } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f760f47c1..8367ac57c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -195,8 +195,6 @@ - -