Ситуация
У меня есть интерфейс Tracker
, который имеет этот метод:
fun trackEvent(event: String, args: Bundle? = null)
Я хочу проверить, что этот метод вызываетсяс конкретным event
.Внутренне тестируемый объект вызывает этот метод с Bundle
объектом.Все события указаны как
companion object {
const val EVENT = "EVENT"
}
Проблема
Проверка не пройдена с этой проверкой:
Mockito.verify(tracker).trackEvent(Tracker.EVENT)
с сообщением:
Аргумент (ы) разные!Требуются: tracker.trackEvent («СОБЫТИЕ», ноль);...
Фактический вызов имеет разные аргументы: tracker.trackEvent ("EVENT", null);...
Есть много решений, которые используют Mockito.eq()
, Mockito.refEq()
, ArgumentMatchers
, Captures
и т. Д. Ни одно из них не сработало для меня, давая то же самое или NullPointerException