У меня ниже классный сценарий. При тестировании MyTestableClass я хочу обработать класс Autowired. Я хотел бы издеваться только над переменной в классе AutoWired.
образец класса, как показано ниже -
public class MyTestableClass {
@Autowired
private MyServiceClass service;
public void handleError(){
...
service.doSomething();
}
}
public class MyServiceClass {
@Autowired
private JMSChannel channel;
public void doSomething(){
System.out.println("Inside Service class");
.....
channel.isAvailable();
.....
}
}
@RunWith(MockitoJUnitRunner.class)
public class MyTestableClassTest {
private MyTestableClass testClass= new MyTestableClass();
private JMSChannel channel;
@Before
public void init(){
channel= mock(JMSChannel.class);
when(channel.isAvailable()).thenReturn(Boolean.TRUE);
}
@Test
public void test(){
testClass.handleError();
}
}
Например, консоль должна предоставить мне «Внутренний класс обслуживания» перед тем, как вернуть истину.
Заранее спасибо !