あるFooクラスのstaticなメソッドをmockしたい場合、Mockk1.8.1以降ではmockkStatic
を使用する。
// Fooクラス
class Foo {
@JvmStatic
fun bar(): Boolean {
return false
}
}
Fooクラスのbarメソッドをmockしたい場合次のようにする。
// テストコード
@RunWith(AndroidJUnit4::class)
class FooBarTest {
@Before
fun init() {
mockkStatic(Foo::class)
}
@Test
fun test() {
every { Foo.bar() } returns true
.
.
.
}
}