Test-Driven Development in Android

Jan 24 2023 Kotlin 1.6, Android 12, AS Bumblebee 2021.1.1

Part 2: Integration Tests

13. Master Integration Tests

Episode complete

Play next episode

Next
Save for later
About this episode
See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 12. Create First Test Method Next episode: 14. Last Integration Test

This video Master Integration Tests was last updated on Jan 24 2023

Heads up... You've reached locked video content where the transcript will be shown as obfuscated text.

You can unlock the rest of this video course, and our entire catalogue of books and videos, with a kodeco.com Professional subscription.

We are going to repeat the same test driven development for 3 more tests. This’ll all be very good practice for you. The first tests is going to make sure that saveNewItem saves the correct data, remember that this test only verified that we saved something.

@Test
fun saveNewItemSavesData() {
    val wishlist = Wishlist("Victoria",
        listOf("RW Android Apprentice Book", "Android phone"), 1)
    val name = "Smart watch"
    viewModel.saveNewItem(wishlist, name)

    val mockObserver = mock<Observer<Wishlist>>()
    wishlistDao.findById(wishlist.id)
        .observeForever(mockObserver)
    verify(mockObserver).onChanged(
        wishlist.copy(wishes = wishlist.wishes + name))
}
wishlist.copy(wishes = wishlist.wishes + name)
@Test
fun getWishListCallsDatabase() {
  viewModel.getWishlist(1)

  verify(wishlistDao).findById(any())
}