2014-10-01 4 views
0

Я пытаюсь запустить эту строку:как я могу проверить, шпион называется с «нулевыми» парами

verify(imagesSorterSpy, atLeast(2)).sortImages(anyList(), null); 

проверить этот метод был вызван с нулем в качестве второго аргумента.

, но я получаю эту ошибку:

rg.mockito.exceptions.misusing.InvalidUseOfMatchersException: 
Invalid use of argument matchers! 
2 matchers expected, 1 recorded: 

This exception may occur if matchers are combined with raw values: 
    //incorrect: 
    someMethod(anyObject(), "raw String"); 
When using matchers, all arguments have to be provided by matchers. 
For example: 
    //correct: 
    someMethod(anyObject(), eq("String by matcher")); 

, как я могу проверить вызов с нулевым, как 2-ой арг?

ответ

1

Ошибка указывает, что вы не можете смешивать raw или real значениями с matchers.

Поскольку я не знаю метод sortImages подпись, я буду гадать

sortImage(List, String).

Если это так, нижеследующее должно работать.

verify(imagesSorterSpy, atLeast(2)).sortImages(anyList(), isNull(String.class));

isNull от org.mockito.Matchers.isNull

+0

В любом случае. Стоит отметить, что при использовании явных совпадений они должны использоваться для всех аргументов заглушки. – Brice

+0

Как я могу ограничить anyList() непустыми списками или списком, который больше 2? –

Смежные вопросы