You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tasks/app/src/androidTest/java/org/tasks/ui/editviewmodel/TitleTests.kt

45 lines
1.1 KiB
Kotlin

package org.tasks.ui.editviewmodel
import com.natpryce.makeiteasy.MakeItEasy.with
import org.tasks.data.entity.Task.Priority.Companion.HIGH
import dagger.hilt.android.testing.HiltAndroidTest
import dagger.hilt.android.testing.UninstallModules
import kotlinx.coroutines.runBlocking
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Test
import org.tasks.injection.ProductionModule
import org.tasks.makers.TaskMaker
import org.tasks.makers.TaskMaker.newTask
@UninstallModules(ProductionModule::class)
@HiltAndroidTest
class TitleTests : BaseTaskEditViewModelTest() {
@Test
fun changeTitleCausesChange() {
setup(newTask())
viewModel.title = "Test"
assertTrue(viewModel.hasChanges())
}
@Test
fun saveWithEmptyTitle() = runBlocking {
val task = newTask()
setup(task)
viewModel.priority.value = HIGH
save()
assertEquals("(No title)", taskDao.fetch(task.id)!!.title)
}
@Test
fun newTaskPrepopulatedWithTitleHasChanges() {
setup(newTask(with(TaskMaker.TITLE, "some title")))
assertTrue(viewModel.hasChanges())
}
}