Я пытаюсь смоделировать метод, созданный в объекте-компаньоне, но не могу сделать это с помощью Mockito и PowerMock.
Вот мой тест:
@RunWith(PowerMockRunner::class)
@PrepareForTest(MyService.Companion::class, BuildConfig::class)
class MyPresenter{
@Test
fun mytest_shouldSucceed() {
PowerMockito.mockStatic(MyService.Companion::class.java)
`when`(MyObject.getValue()).doReturn("test")
PowerMockito.mockStatic(BuildConfig::class.java)
whenever(BuildConfig.TEST).thenReturn("test")
}
}
Вот объект класс:
interface MyService{
companion object {
private var value: String? = null
fun getValue(): String? {
return value
}
}
}
При этом я получаю следующую ошибку:
org.mockito.exceptions.misusing.MissingMethodInvocationException:
when() requires an argument which has to be 'a method call on a mock'.
For example:
when(mock.getArticles()).thenReturn(articles);