是否有可能通过Mockito模拟房产的吸气剂和设定者?像这样的东西:
@Test
fun three() {
val m = mock<Ddd>() {
// on { getQq() }.doReturn("mocked!")
}
assertEquals("mocked!", m.qq)
}
open class Ddd {
var qq : String = "start"
set(value) {
field = value + " by setter"
}
get() {
return field + " by getter"
}
}
Run Code Online (Sandbox Code Playgroud)
Rus*_*lan 14
要模拟getter,只需写:
val m = mock<Ddd>()
`when`(m.qq).thenReturn("42")
Run Code Online (Sandbox Code Playgroud)
我还建议使用mockito-kotlin,使用有用的扩展和功能,如whenever:
val m = mock<Ddd>()
whenever(m.qq).thenReturn("42")
Run Code Online (Sandbox Code Playgroud)
为了补充IRus的答案,您还可以使用以下语法:
val mockedObj = mock<SomeClass> {
on { funA() } doReturn "valA"
on { funB() } doReturn "valB"
}
Run Code Online (Sandbox Code Playgroud)
要么
val mockedObj = mock<SomeClass> {
on(it.funA()).thenReturn("valA")
on(it.funB()).thenReturn("valB")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5656 次 |
| 最近记录: |