Slide 157
Slide 157 text
Testing
Instead, I like to use this helper method:
fun testSuspending(test: suspend () -> Unit): Unit = runBlocking { test.invoke() }
@Test
fun `Retrieve Emails`() = testSuspending {
// Mock out OAuth too
// ...
val emailList = listOf(mock(), mock())
whenever(network.callEmailApi(any())).thenReturn(emailList)
assertEquals(repository.retrieveEmails(), emailList)
verify(network).callEmailApi(any())
}