使用mockk来模拟构造函数,我们可以做类似的事情(取自文档):
class MockCls {
fun add(a: Int, b: Int) = a + b
}
mockkConstructor(MockCls::class)
every { anyConstructed<MockCls>().add(1, 2) } returns 4
assertEquals(4, MockCls().add(1, 2)) // note new object is created
verify { anyConstructed<MockCls>().add(1, 2) }
Run Code Online (Sandbox Code Playgroud)
我想检查我的构造函数的参数。就像是:
class MockCls(val minValue: Int) {
fun add(a: Int, b: Int) = minValue + a + b
}
mockkConstructor(MockCls::class)
every { anyConstructed<MockCls>(10).add(1, 2) } returns 14
assertEquals(14, MockCls(10).add(1, 2)) // note new object is created
verify { anyConstructed<MockCls>(10).add(1, 2) } // success
verify { anyConstructed<MockCls>(5).add(1, 2) } // fail
Run Code Online (Sandbox Code Playgroud)
我现在没有找到任何方法来检查构造函数参数。
| 归档时间: |
|
| 查看次数: |
4615 次 |
| 最近记录: |