Как проверить метод getInfo (id)?
fun getInfo(id: String): Observable<List<Item>> =
interactor.getSomeData { token, userId ->
repository.getTransaction(token, id, userId)
}
fun <T> getSomeData(func: (token: String, userId: Long) -> Observable<T>): Observable<T> =
getAnotherData()
.flatMap { userId ->
secureRequest { token -> func(token, userId) }
}
Когда я пытаюсь проверить этот метод:
@Test
fun getInfoTest() {
val data = Observable.empty<List<Item>>()
val function2: (String, Long) -> Observable<List<Item>> = mock {
on { invoke(token, userId) } doReturn data
}
interactor.getInfo(id)
.test()
argumentCaptor<Observable<List<Item>>>().apply {
verify(function2, times(1)).invoke(token, userId)
}
}
Я получаю сообщение об ошибке:
Требуется, но не вызывается: function2.invoke (" токен ", 123л); -> на InteractorTest.when getInfoTest (InteractorTest.kt: 81) На самом деле, с этим макетом было нулевое взаимодействие.
Требуется, но не вызывается: function2.invoke ("token", 123L); -> at InteractorTest.getInfoTest (InteractorTest.kt: 81) На самом деле, с этим макетом было нулевое взаимодействие.