1
Как вы можете захватить вызов метода интерфейса и заменить логику метода захваченного интерфейса на издеваемую, используя JMockit?JMockit Захват и замена интерфейса метода логики
Как вы можете захватить вызов метода интерфейса и заменить логику метода захваченного интерфейса на издеваемую, используя JMockit?JMockit Захват и замена интерфейса метода логики
Да, это ясно описано в «JMockit Учебное пособие», здесь: http://jmockit.googlecode.com/svn/trunk/www/tutorial/StateBasedTesting.html#interfaces
Здесь приходит копия вставили пример кода, который издевается интерфейс CallBackHandler
и обеспечивает собственную реализацию handle
метода:
@Test
public void mockingAnInterface() throws Exception
{
CallbackHandler callbackHandler = new MockUp<CallbackHandler>() {
@Mock
void handle(Callback[] callbacks)
{
assertEquals(1, callbacks.length);
assertTrue(callbacks[0] instanceof NameCallback);
}
}.getMockInstance();
callbackHandler.handle(new Callback[] {new NameCallback("Enter name:")});
}