Здесь у меня есть класс A, который реализует method1
.
class A{
public void method1(String name){
classB b = new classB();
// Some operations
b.method2(argument1);
}
}
Я хочу захватить аргумент, переданный method2
, для которого я написал следующий код.
Я получил ошибку, поскольку макет не вызывался, когда я проверял захват аргумента в приведенном ниже коде. Пожалуйста, дайте мне знать, как выполнить это успешно, вызвав макет для захвата аргумента, переданного method2
class ATest{
String name = "name";
@Before
public void setup{
class A = new class A();
class B = Mockito.mock(classB.class);
}
public void testmethod1()
{
A.method1(name);
ArgumentCaptor<String> captor = ArgumentCaptor.forClass(String.class);
Mockito.verify(B, Mockito.times(1)).method2(captor.capture());
String actual = captor.getValue();
assertEquals("some data", actual);
}
}