#java #junit #mockito
#Ява #джунит #мокито
Вопрос:
У меня есть класс, который расширяется от абстрактного класса с защищенным методом из частного компонента spring.
AbstractState { @Autowired private AsyncExecutor executor; .... protected lt;T, Rgt; void execute(T request, Functionlt;T, Rgt; doWork, Consumerlt;Rgt; handleResult, Consumerlt;Throwablegt; handleError) { asyncExecutor.execute(request, doWork, handleResult, handleError); } }
Я хочу игнорировать метод execute, вызываемый из этого компонента spring, но я не могу использовать Spy, потому что у меня есть много других зависимостей, которые вызывают методы с возвращаемыми значениями. Есть ли способ сделать это? Мои ограничения заключаются в том, что я не могу реорганизовать абстрактный класс или его расширение. Спасибо.
@RunWith(MockitoJUnitRunner.class) public class StateTest { @InjectMocks State stateUnderTest; @Mock IPaymentService paymentService; @Before public void setUp() { Mockito.doNothing().when(stateUnderTest).execute(); stateUnderTest.paymentService = this.paymentService; } }