2013-06-10 16 views
17

Mam metodę save(), która zwraca void, coś jak:Mockito inne zachowanie przy kolejnych wywołaniach metody void?

public void save(MyThing) throws SaveFailureException { ... } 

wywołanie save() ma ponowić logikę obsłużyć wyjątek i chcę przetestować, szydząc z pierwszą wywołanie save() zgłaszające wyjątek i drugie wywołanie zakończone.

Mockito ma przyjemny sposób obsługi kolejnych zachowań dla niezarejestrowanych metod Void:

when(mock.save()).thenThrow(...).thenReturn(...) 

Jak mogę zrobić to samo z metod, które mają powrócić pustkę?

Odpowiedz

17

Można to zrobić:

doThrow(...).doNothing().when(mock).voidMethod(); 

(edycja: korzystania doNothing, jak wspomniano przez @ Rogério)

+1

pan nie myśli. 'DoThrow (...) doReturn (...) '? –

+0

Ups ... Tak, przepraszam ... – fge

+2

Powinno być 'doThrow (...). * DoNothing() *. When (mock) .voidMethod()' zamiast. –

Powiązane problemy