W ramach metody mam wyjątek, który zostanie złapany, co chcę udawać.Jak wyśmiać wyjątek podczas tworzenia instancji nowej klasy przy użyciu Mockito
Wiem, jak wyśmiać obiekt, aby wyrzucić wyjątek za pomocą metody mock.doSomething(), ale muszę zdać wyjątek zdalny, gdy klasa tworzy nową instancję.
transient Bicycle bike = null;
public Bicycle getBicycle() {
if (bike == null) {
try {
bike = new Bicycle(this);
} catch (RemoteException ex) {
System.out.println("No bikes found");
}
}
return bike;
}
Chcę móc szydzić wszystko w bloku try, ale nie rozumiem, jak wyśmiewać utworzenie nowej klasy, następujący wiersz szczególne:
bike = new Bicycle(this);
Próbowałem wielu różnych testów Mockito, takich jak:
Bicycle b = mock(Bicycle.class);
Mockito.doThrow(new RemoteException()).when(b = new Bicycle());
Chociaż rozumiem tę wolę i nie działa, chcę zrobić coś podobnego.
Czytałem dokumenty Mockito i nie znalazłem niczego przydatne:
http://site.mockito.org/mockito/docs/current/org/mockito/Mockito.html
możliwe duplikat [Jak zmusić Mockito rzucać RemoteException w teście JUnit] (http://stackoverflow.com/questions/15582395/how-to-force-mockito-to-throw-remoteexception-in-junit-test) –
@ ChristofferHammarström To zdecydowanie nie jest duplikat. Napisałem poprzednie pytanie i szukam dwóch różnych odpowiedzi od obu. –