Что является лучшим способом написания модульного теста для такого случая
public abstract class Parent {
public void initialize() {
//some logic
}
}
public class Child extends Parent {
public void initialize(){
super.initialize()
//some logic
}
}
@Test
public void testInitialize() {
Child child = new Child();
// Prevent/stub logic in super.method()
Mockito.doNothing().when(child)./*super method called*/
verify(...)
}
Проблема в насмешке над супер-методом из родительского абстрактного класса, мне нужно предотвратить его выполнение.
Я нашел подход для неабстрактного родительского класса, но он не работает в моем случае:
Child spy = Mockito.spy(new Child());
// Prevent/stub logic in super.method()
Mockito.doNothing().when((Parent)spy).initialize();