我有静态方法,我想捕获varargs
Executor ex = new Executor();
ex.execute(String nodeName, boolean status, Property ... properties);
ArgumentCaptor<Property> propertyCaptor = ArgumentCaptor.forClass(Property.class);
verify(ex).execute(anyString(), anyBoolean(), propertyCaptor.capture);
propertyCaptor.getValue() - 不起作用????
最佳答案
我不确定你到底想测试什么,但以下是有效的:
class SpecialExecutor implements Executor {
@Override
public void execute(Runnable command) {
}
public void execute(String nodeName, boolean status, Property... properties) {
}
};
@Test
public void test() {
SpecialExecutor ex = new SpecialExecutor();
ArgumentCaptor<Property> propertyCaptor = ArgumentCaptor.forClass(Property.class);
verify(ex).execute(anyString(), anyBoolean(), any(Property[].class));
}
关于java - 如何捕获可变参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39790990/