kotlin - 如何使用 mockito_kotlin 存根具有通用 KClass 参数的 Kotlin 方法?
问题描述
在这个例子中,我找不到存根 barFunction 的方法。
interface Foo {
fun run()
}
class MockedService {
fun <T : Foo> barFunction(myClass: KClass<T>): String {
// doSomething with myClass
return myClass.java.name
}
}
private val mockedService: MockedService = mock()
@BeforeEach
fun setup() {
whenever(mockedService.barFunction(any())).thenReturn("Hello")
}
Kotlin 编译器说:
Cannot infer type parameter T in inline fun <reified T : Any> any(): T
None of the following substitutions
()
()
can be applied to
()
我怎样才能找到一种以通用方式存根此方法的方法?
解决方案
推荐阅读
- autotools - Autotools 处理本地与已安装数据文件的方法
- c# - 使用实体框架将数据保存到 SQL Server 时的外键问题
- wordpress - WooCommerce 预购未触发 Google Analytics 转换
- swift - 快速从 If 语句中返回一个字符串
- android - 如何在内部 SeekBar 上禁用 ScrollView 的工作?
- c++ - 如何获得触发它的变量下面的所有值?
- firebase - 在 Firestore Snapshot Query 的本地快照副本上进行离线查询
- javascript - 选择活动标签时,如何使手风琴侧边栏过滤器部分保持打开状态?
- python - 使用 Beuatiful Soup 匹配标题中的特定文本
- javascript - 低于 100 像素的响应式 UI