Ответ 1
Вы можете сделать это:
doThrow(...).doNothing().when(mock).voidMethod();
(отредактируйте: используйте doNothing
, как упоминалось @Rogério)
У меня есть метод save(), который возвращает пустоту, что-то вроде:
public void save( MyThing ) throws SaveFailureException { ... }
В вызове save() есть логика повтора для обработки исключения, и я хочу протестировать его, издеваясь над первым вызовом save(), бросая исключение, и второй вызов преуспевает.
Mockito имеет хороший способ обработки последовательного поведения для непустых методов:
when( mock.save() ).thenThrow( ... ).thenReturn( ... )
Как мне сделать то же самое с методами, которые возвращают пустоту?
Вы можете сделать это:
doThrow(...).doNothing().when(mock).voidMethod();
(отредактируйте: используйте doNothing
, как упоминалось @Rogério)