Android-CleanArchitecture-Kotlin
Android-CleanArchitecture-Kotlin copied to clipboard
MovieDetailsViewModelTest always passed
when running MovieDetailsViewModelTest, I found the test always pass though I changed assertion of a test Also I set a debug inside LiveData, the test never reach the breakpoint
@Test fun test() {
val movieDetails = MovieDetails(0, "IronMan", "poster", "summary",
"cast", "director", 2018, "trailer")
coEvery { getMovieDetails.run(any()) } returns Right(movieDetails)
movieDetailsViewModel.movieDetails.observeForever {
with(it!!) {
id shouldEqualTo 1
title shouldEqualTo "IronMan"
poster shouldEqualTo "poster"
summary shouldEqualTo "summary"
cast shouldEqualTo "cast"
director shouldEqualTo "director"
year shouldEqualTo 2018
trailer shouldEqualTo "trailer"
}
}
runBlocking { movieDetailsViewModel.loadMovieDetails(0) }
}
This test should be fail, cause id should be 0 not 1, but not sure why the test will pass
The function update value for LiveData inside ViewModel never call on UnitTest, that's why observer on ViewModelTest never get a callback. Does anyone have experience with this, please help me to check. Thank you