我试图捕获一个挂起的lambda /协程并调用它,但是模拟调用挂起了。
@Test
fun test() = coroutinesTestRule.testDispatcher.runBlockingTest {
coEvery { db.withTransaction(captureCoroutine<suspend () -> Unit>()) } answers {
coroutine<suspend () -> Unit>().coInvoke()
}
}如果我做错了什么,或者这是不可能的,有什么提示或提示吗?
发布于 2020-12-16 02:04:25
我相信你需要使用coAnswers
@Test
fun test() = coroutinesTestRule.testDispatcher.runBlockingTest {
coEvery {
db.withTransaction(captureCoroutine<suspend () -> Unit>())
} coAnswers {
coroutine<suspend () -> Unit>().coInvoke()
}
}https://stackoverflow.com/questions/62130953
复制相似问题