Mocking Companion объект с помощью PowerMockito - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь смоделировать метод, созданный в объекте-компаньоне, но не могу сделать это с помощью 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);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...