I have a method with a void
return type. It can also throw a number of exceptions so I'd like to test those exceptions being thrown. All attempts have failed with the same reason:
The method when(T) in the type Stubber is not applicable for the arguments (void)
Any ideas how I can get the method to throw a specified exception?
doThrow(new Exception()).when(mockedObject.methodReturningVoid(...));
If you ever wondered how to do it using the new BDD style of Mockito:
willThrow(new Exception()).given(mockedObject).methodReturningVoid(...));
And for future reference one may need to throw exception and then do nothing:
willThrow(new Exception()).willDoNothing().given(mockedObject).methodReturningVoid(...));
Source: Stackoverflow.com