Android Test Night #2
mockito-kotlinKeisuke KobayashiAndroid Test Night #2
View Slide
About Me• Keisuke Kobayashi• GitHub, QIita: kobakei• Twitter: kobakei122• Kyash, Inc• ݸਓࣄۀओ
mockito-kotlin͍͍ͧ
mockito-kotlin• KotlinͰMockitoΛ͏ͨΊͷϥΠϒϥϦ• https://github.com/nhaarman/mockito-kotlin• ˒800 over
Ͳ͕͍͍͔͜• ϞοΫ͕ݟ͘͢ͳΔ• Null҆શରԠ• άϩʔόϧؔͷՃ• whenରԠ
Mockito in Java// Javaimport static org.mockito.Mockito.*;Hoge mock = mock(Hoge.class);when(mock.sayHello()).thenReturn("Hello");when(mock.sayBye()).thenReturn("Bye");
Convert to Kotlin// Kotlinimport org.mockito.Mockito.*val mock = mock(Hoge::class.java)`when`(mock.sayHello()).thenReturn("Hello")`when`(mock.sayBye()).thenReturn("Bye")
mockito-kotlin// Kotlinimport com.nhaarman.mockito_kotlin.*val mock = mock {on { sayHello() } doReturn "Hello"on { sayBye() } doReturn "Bye"}
ݟ͍͢
Null҆શରԠ• Null҆શͷ͍ͤͰɺMockitoͷanyͰNPE• NonNullͳҾʹanyΛ͢ͱൃੜ• anyͱanyOrNull
άϩʔόϧؔ• any, anyOrNull• atLeast, only, never• verify• whenever
when• Mockitoͷwhenϝιου• Kotlinͷwhen༧ޠ• `when`ͱॻ͔͘͠ແ͍• mockito-kotlinͰΘΓʹwheneveron͕͑Δ
Thanks!