|
|
|
|
@ -1,6 +1,7 @@
|
|
|
|
|
package org.tasks.opentasks
|
|
|
|
|
|
|
|
|
|
import com.natpryce.makeiteasy.MakeItEasy.with
|
|
|
|
|
import com.todoroo.astrid.data.Task
|
|
|
|
|
import dagger.hilt.android.testing.HiltAndroidTest
|
|
|
|
|
import dagger.hilt.android.testing.UninstallModules
|
|
|
|
|
import kotlinx.coroutines.runBlocking
|
|
|
|
|
@ -51,7 +52,7 @@ class OpenTasksDueDateTests : OpenTasksTest() {
|
|
|
|
|
|
|
|
|
|
assertEquals(
|
|
|
|
|
1612137600000,
|
|
|
|
|
openTaskDao.getTask(listId.toLong(), "1234")?.task?.due?.date?.time
|
|
|
|
|
openTaskDao.getTask(listId, "1234")?.task?.due?.date?.time
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -87,7 +88,7 @@ class OpenTasksDueDateTests : OpenTasksTest() {
|
|
|
|
|
|
|
|
|
|
assertEquals(
|
|
|
|
|
1612137600000,
|
|
|
|
|
openTaskDao.getTask(listId.toLong(), "1234")?.task?.due?.date?.time
|
|
|
|
|
openTaskDao.getTask(listId, "1234")?.task?.due?.date?.time
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -123,10 +124,60 @@ class OpenTasksDueDateTests : OpenTasksTest() {
|
|
|
|
|
|
|
|
|
|
assertEquals(
|
|
|
|
|
1612137600000,
|
|
|
|
|
openTaskDao.getTask(listId.toLong(), "1234")?.task?.due?.date?.time
|
|
|
|
|
openTaskDao.getTask(listId, "1234")?.task?.due?.date?.time
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun startTimeEqualsDueTime() = runBlocking {
|
|
|
|
|
val (listId, list) = openTaskDao.insertList()
|
|
|
|
|
val task = newTask(
|
|
|
|
|
with(TaskMaker.HIDE_TYPE, Task.HIDE_UNTIL_DUE_TIME),
|
|
|
|
|
with(TaskMaker.DUE_TIME, DateTime(2021, 2, 1, 16, 0))
|
|
|
|
|
)
|
|
|
|
|
taskDao.createNew(task)
|
|
|
|
|
caldavDao.insert(newCaldavTask(
|
|
|
|
|
with(CaldavTaskMaker.CALENDAR, list.uuid),
|
|
|
|
|
with(CaldavTaskMaker.REMOTE_ID, "1234"),
|
|
|
|
|
with(CaldavTaskMaker.TASK, task.id)
|
|
|
|
|
))
|
|
|
|
|
|
|
|
|
|
synchronizer.sync()
|
|
|
|
|
|
|
|
|
|
assertEquals(
|
|
|
|
|
1612216800000,
|
|
|
|
|
openTaskDao.getTask(listId, "1234")?.task?.dtStart?.date?.time
|
|
|
|
|
)
|
|
|
|
|
assertEquals(
|
|
|
|
|
1612216801000,
|
|
|
|
|
openTaskDao.getTask(listId, "1234")?.task?.due?.date?.time
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun startTimeEqualDueTime() = runBlocking {
|
|
|
|
|
val (_, list) = withVtodo(START_TIME_DUE_TIME)
|
|
|
|
|
|
|
|
|
|
synchronizer.sync()
|
|
|
|
|
|
|
|
|
|
val caldavTask = caldavDao.getTaskByRemoteId(list.uuid!!, "2009955511573185442")
|
|
|
|
|
val task = taskDao.fetch(caldavTask!!.task)!!
|
|
|
|
|
assertEquals(DateTime(2021, 2, 4, 8, 0, 1, 0).millis, task.dueDate)
|
|
|
|
|
assertEquals(task.dueDate, task.hideUntil)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun startTimeEqualDueTimeNoOffset() = runBlocking {
|
|
|
|
|
val (_, list) = withVtodo(START_TIME_DUE_TIME_NO_OFFSET)
|
|
|
|
|
|
|
|
|
|
synchronizer.sync()
|
|
|
|
|
|
|
|
|
|
val caldavTask = caldavDao.getTaskByRemoteId(list.uuid!!, "2009955511573185442")
|
|
|
|
|
val task = taskDao.fetch(caldavTask!!.task)!!
|
|
|
|
|
assertEquals(DateTime(2021, 2, 4, 8, 0, 1, 0).millis, task.dueDate)
|
|
|
|
|
assertEquals(task.dueDate, task.hideUntil)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
companion object {
|
|
|
|
|
private val BERLIN = TimeZone.getTimeZone("Europe/Berlin")
|
|
|
|
|
private val LONDON = TimeZone.getTimeZone("Europe/London")
|
|
|
|
|
@ -146,5 +197,39 @@ class OpenTasksDueDateTests : OpenTasksTest() {
|
|
|
|
|
END:VTODO
|
|
|
|
|
END:VCALENDAR
|
|
|
|
|
""".trimIndent()
|
|
|
|
|
|
|
|
|
|
private val START_TIME_DUE_TIME = """
|
|
|
|
|
BEGIN:VCALENDAR
|
|
|
|
|
VERSION:2.0
|
|
|
|
|
PRODID:+//IDN tasks.org//android-110305//EN
|
|
|
|
|
BEGIN:VTODO
|
|
|
|
|
DTSTAMP:20210203T164753Z
|
|
|
|
|
UID:2009955511573185442
|
|
|
|
|
CREATED:20210203T164728Z
|
|
|
|
|
LAST-MODIFIED:20210203T164750Z
|
|
|
|
|
SUMMARY:Start time
|
|
|
|
|
X-APPLE-SORT-ORDER:-5
|
|
|
|
|
DUE;TZID=America/Chicago:20210204T080001
|
|
|
|
|
DTSTART;TZID=America/Chicago:20210204T080000
|
|
|
|
|
END:VTODO
|
|
|
|
|
END:VCALENDAR
|
|
|
|
|
""".trimIndent()
|
|
|
|
|
|
|
|
|
|
private val START_TIME_DUE_TIME_NO_OFFSET = """
|
|
|
|
|
BEGIN:VCALENDAR
|
|
|
|
|
VERSION:2.0
|
|
|
|
|
PRODID:+//IDN tasks.org//android-110305//EN
|
|
|
|
|
BEGIN:VTODO
|
|
|
|
|
DTSTAMP:20210203T164753Z
|
|
|
|
|
UID:2009955511573185442
|
|
|
|
|
CREATED:20210203T164728Z
|
|
|
|
|
LAST-MODIFIED:20210203T164750Z
|
|
|
|
|
SUMMARY:Start time
|
|
|
|
|
X-APPLE-SORT-ORDER:-5
|
|
|
|
|
DUE;TZID=America/Chicago:20210204T080000
|
|
|
|
|
DTSTART;TZID=America/Chicago:20210204T080000
|
|
|
|
|
END:VTODO
|
|
|
|
|
END:VCALENDAR
|
|
|
|
|
""".trimIndent()
|
|
|
|
|
}
|
|
|
|
|
}
|