在 Kotlin 中,我使用 Mockito 在when我試圖測驗我的存盤庫的方法中執行單元測驗,該存盤庫擴展了 JpaRepository,它還擴展了 QueryByExempleExecutor 并且從這個介面我想要findAll(Example<S> example, Pageable pageable)接收作為其第一個引數的方法,該介面具有泛型
在 Kotlin 中,該方法應該像這樣作業
`when`(repository.findAll(Mockito.any(Example<Book>::class.java), Mockito.any(PageRequest::class.java))).thenReturn(page)
但是它不起作用,我唯一的訊息是“在類文字的左側只允許使用類”
如何使用 when 方法將介面傳遞給 Mockito.any() ???
uj5u.com熱心網友回復:
您可以像這樣在 mockito 上創建擴展:
inline fun <reified T: Any> any() = Mockito.any(T::class.java)
然后你可以像這樣使用它:
`when`(
repository.findAll(
example = Mockito.any<Example<Book>>(),
pageable = Mockito.any<PageRequest>(),
)
).thenReturn(page)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/519882.html
