|
|
|
|
@ -1,5 +1,7 @@
|
|
|
|
|
package org.tasks.opentasks
|
|
|
|
|
|
|
|
|
|
import com.natpryce.makeiteasy.MakeItEasy
|
|
|
|
|
import com.todoroo.astrid.helper.UUIDHelper
|
|
|
|
|
import dagger.hilt.android.testing.HiltAndroidTest
|
|
|
|
|
import dagger.hilt.android.testing.UninstallModules
|
|
|
|
|
import kotlinx.coroutines.runBlocking
|
|
|
|
|
@ -10,9 +12,13 @@ import org.junit.Test
|
|
|
|
|
import org.tasks.R
|
|
|
|
|
import org.tasks.data.CaldavAccount
|
|
|
|
|
import org.tasks.data.CaldavAccount.Companion.TYPE_OPENTASKS
|
|
|
|
|
import org.tasks.data.CaldavCalendar
|
|
|
|
|
import org.tasks.data.CaldavDao
|
|
|
|
|
import org.tasks.data.TaskDao
|
|
|
|
|
import org.tasks.injection.InjectingTestCase
|
|
|
|
|
import org.tasks.injection.ProductionModule
|
|
|
|
|
import org.tasks.makers.CaldavTaskMaker
|
|
|
|
|
import org.tasks.makers.TaskMaker.newTask
|
|
|
|
|
import org.tasks.preferences.Preferences
|
|
|
|
|
import javax.inject.Inject
|
|
|
|
|
|
|
|
|
|
@ -23,6 +29,7 @@ class OpenTasksSynchronizerTest : InjectingTestCase() {
|
|
|
|
|
@Inject lateinit var caldavDao: CaldavDao
|
|
|
|
|
@Inject lateinit var synchronizer: OpenTasksSynchronizer
|
|
|
|
|
@Inject lateinit var preferences: Preferences
|
|
|
|
|
@Inject lateinit var taskDao: TaskDao
|
|
|
|
|
|
|
|
|
|
@Before
|
|
|
|
|
override fun setUp() {
|
|
|
|
|
@ -84,4 +91,34 @@ class OpenTasksSynchronizerTest : InjectingTestCase() {
|
|
|
|
|
assertEquals(name, "default_list")
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun removeMissingLists() = runBlocking {
|
|
|
|
|
val (_, list) = openTaskDao.insertList(url = "url1")
|
|
|
|
|
caldavDao.insert(CaldavCalendar().apply {
|
|
|
|
|
account = list.account
|
|
|
|
|
uuid = UUIDHelper.newUUID()
|
|
|
|
|
url = "url2"
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
synchronizer.sync()
|
|
|
|
|
|
|
|
|
|
assertEquals(listOf(list), caldavDao.getCalendars())
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun simplePushNewTask() = runBlocking {
|
|
|
|
|
val (_, list) = openTaskDao.insertList()
|
|
|
|
|
val taskId = taskDao.insert(newTask())
|
|
|
|
|
caldavDao.insert(CaldavTaskMaker.newCaldavTask(
|
|
|
|
|
MakeItEasy.with(CaldavTaskMaker.CALENDAR, list.uuid),
|
|
|
|
|
MakeItEasy.with(CaldavTaskMaker.TASK, taskId)
|
|
|
|
|
))
|
|
|
|
|
|
|
|
|
|
synchronizer.sync()
|
|
|
|
|
|
|
|
|
|
val tasks = openTaskDao.getTasks()
|
|
|
|
|
assertEquals(1, tasks.size)
|
|
|
|
|
assertEquals(taskId, caldavDao.getTaskByRemoteId(list.uuid!!, tasks[0].uid!!)?.task)
|
|
|
|
|
}
|
|
|
|
|
}
|