Я пытаюсь смоделировать контекст Android, чтобы вернуть строку из идентификатора ресурса.Однако у меня проблемы с сопоставлением заглушки с вызовом, я полагаю, что это из-за varargs.Тем не менее, я новичок в mockk, поэтому я могу просто пропустить что-то очень простое.
Я высмеиваю контекст следующим образом:
val context = mockk<Context>()
every { context.getString(any(), any()) } returns stringToReturn
Но при вызове getString для объекта он выдает следующее исключение:
io.mockk.MockKException: no answer found for: Context(#1).getString(2131689544, [])
Если это важно, я вызываю функцию в тестируемом классе следующим образом.formatArgs может быть пустым, но не должен:
protected fun foo(stringResource: Int, vararg formatArgs: Any) {
val s = context.getString(errorMessageStringResource, *formatArgs)
Есть идеи, как я могу это исправить?
Вы можете проверить проект и воспроизвести исключение здесь: Github Project