【发布时间】:2017-12-23 22:14:09
【问题描述】:
我创建了一个多平台 Kotlin 项目(JVM 和 JS),声明了一个预期的类并实现了它:
// Common module:
expect class Request(/* ... */) {
suspend fun loadText(): String
}
// JS implementation:
actual class Request actual constructor(/* ... */) {
actual suspend fun loadText(): String = suspendCoroutine { continuation ->
// ...
}
}
现在我正在尝试使用kotlin.test 进行单元测试,而对于 JVM 平台,我只需像这样使用runBlocking:
@Test
fun sampleTest() {
val req = Request(/* ... */)
runBlocking { assertEquals( /* ... */ , req.loadText()) }
}
如果没有runBlocking,如何在JS平台上重现类似的功能?
【问题讨论】:
标签: kotlin kotlin-coroutines kotlin-js