Wiem, że możesz ustawić kilka różnych obiektów, które mają zostać zwrócone na próbę. Dawny.Powtórz sekwencję zwrotów obiektów na metodzie szpiegowskiej
when(someObject.getObject()).thenReturn(object1,object2,object3);
Czy możesz zrobić to samo z jakimś szpiegującym obiektem? Spróbowałem tego na szpiegu bez powodzenia. Czytałem w docs użyć doReturn()
na szpiega jak poniżej
doReturn("foo").when(spy).get(0);
Ale deReturn()
akceptuje tylko jeden parametr. Chciałbym zwrócić różne przedmioty w określonej kolejności na szpiega. czy to możliwe?
Mam klasę podobną do poniższej i próbuję ją przetestować. Chcę przetestować myClass
, nie anotherClass
public class myClass{
//class code that needs several instances of `anotherClass`
public anotherClass getObject(){
return new anotherClass();
}
}
dodam tylko, że wolałbym 'BDDMockito' aliasy, ale jest to kwestia preferencji w kodzie. Dałoby to następujące: 'willReturn (" foo "). WillReturn (" bar "). WillCallRealMethod(). Given (meh) .meh();' – Brice