Ответ 1
У вас могут быть проблемы с any
или argThat
для примитивных аргументов типа when
и verify
. Эти объектно-ориентированные методы корректно работают с побочными эффектами, но они возвращают null
для возвращаемого значения фиктивного типа, которое не работает для примитивов Java, развернутых с помощью автоматического бокса.
К счастью, класс org.mockito.ArgumentMatchers
имеет полный набор примитивно-ориентированных методов (из которых я перечислил здесь методы int
):
static int anyInt()
static int eq(int value)
static int intThat(org.hamcrest.ArgumentMatcher<java.lang.Integer> matcher)
Посмотрите их в документации для класса ArgumentMatchers.