Я использую Kotlin Coroutines и, в частности, использую Retrofit's CoroutineCallAdapterFactory
.Затем я пытаюсь провести модульное тестирование класса, который, в свою очередь, использует интерфейс Retrofit (GalwayBusService
ниже).
interface GalwayBusService {
@GET("/routes/{route_id}.json")
fun getStops(@Path("route_id") routeId: String) : Deferred<GetStopsResponse>
}
В моем модульном тесте у меня есть
val galwayBusService = mock()
и затем пытается что-то вроде следующего, чтобы высказать то, что возвращается при вызове этого метода.Проблема в том, что getStops
возвращает значение Deferred
.Есть ли какой-то особый подход, рекомендуемый для насмешливых API, подобных этому?
`when`(galwayBusService.getBusStops()).thenReturn(busStopsResponse)