Захваты предназначены для проверки значений, передаваемых макету впоследствии. Если вам нужен только макет для возврата параметра (или некоторого значения, рассчитанного по параметру), вам просто нужно реализовать IAnswer.
См. Реализацию "Remi Fouilloux", если вы хотите многократно использовать способ передачи параметра X назад, но игнорируйте его использование Capture в примере.
Если вы просто хотите вставить это, как в примере с "do_the_trick", опять же, Capture - это красная сельдь. Вот упрощенная версия:
MyService mock = createMock(MyService.class);
expect(mock.someMethod(anyObject(), anyObject()).andAnswer(
new IAnswer<ReturnType>() {
@Override
public ReturnType answer() throws Throwable {
// you could do work here to return something different if you needed.
return (ReturnType) EasyMock.getCurrentArguments()[0];
}
}
);
replay(mock)