💻
Mockkでcompanion objectに定義されたメソッドをmockする
次のようなKotlinのcompanion objectに定義されたメソッドをmockしたいとする。
class Foo {
companion object {
fun bar(): String = ""
}
}
この場合、mockkではmockkObject
を使用してmockする(mockkのバージョンは1.10.0で確認)。
@Before
fun setup() {
mockkObject(Foo)
}
@Test
fun fooTest {
every { Foo.bar() } returns "Hello"
Truth.assertThat(Foo.bar()).isEqualTo("Hello")
}
今回mockkStatic
でmockできなかったので調べたが、issueが上がっているので対応されるかもしれない。
Discussion