我使用密封类向客户端代码报告成功或错误:
sealed class Result<out T : Any> {
data class Success<out T : Any>(val data: T) : Result<T>()
data class Error(val exception: Exception) : Result<Nothing>()
}
但是我坚持使用它来编译最简单的单元测试:
val error = Result.Error(IOException("message"))
assertThat(error, instanceOf(Result.Error::class.java))
我收到消息:类型推断失败。没有足够的信息来推断 fun instanceOf(type : Class<*>) 中的参数 T:Matcher!
看起来我错过了 Kotlin 中的一些重要内容。
谢谢你的协助!