Я использую библиотеку MockK для модульного тестирования
Я хочу смоделировать ответ ниже метод
private fun removeDuplicatesResponse(bloodGlucoseDuplicateIds: List<String>, eventDuplicateIds: List<String>): Promise<Void, Throwable, Void> {
val task = object : DeferredAsyncTask<Void, Void, Void>() {
@Throws(Exception::class)
override fun doInBackgroundSafe(vararg params: Void): Void? {
return null
}
}
task.executeOnExecutor(mExecutorService)
return task.promise()
}
Я использую ниже каждого блока {}
every { mEventService.removeDuplicates(any(), any()).waitSafely() } answers { response() }
и метод ответа ниже для поддельного ответа
private fun response(): Promise<Void, Throwable, Void> {
val task = object : DeferredAsyncTask<Void, Void, Void>() {
@Throws(Exception::class)
override fun doInBackgroundSafe(vararg params: Void): Void? {
return null
}
}
task.executeOnExecutor(mExecutorService)
return task.promise()
}
но когда я попытался выполнить removeDuplicatesResponse (), он ничего не сделает и постоянно выполняет
Кто-нибудь есть идеи, пожалуйста, дайте мне знать, спасибо