Mockito: можно ли комбинировать mock с именем метода для создания methodCall внутри вызова when()?

мой первый вопрос о StackOverflow. Я хотел бы иметь возможность сделать что-то вроде:

SomeClass mock = mock(SomeClass.class);

String methodName = "someMethod"; ИЛИ Метод method = ...someMethod...

Обе эти вещи (имитатор и метод) будут объединены для выполнения следующего:

when(mock.someMethod()).thenReturn(null);

Конечно, значение 'null' будет соответствующим образом изменено для моих нужд, но я пытаюсь определить две вещи:

1) Возможно ли вообще сделать что-то вроде thisв Java ? This= объединение объекта класса и метода в вызов метода.

2) Как мне это сделать?

Я бесконечно исследовал этот вопрос и ничего не нашел. Проблема в том, что даже если это работает с обычным классом и обычным методом (someClass и someMethod объединятся, чтобы сделать someClass.someMethod()), имейте в виду, что это должно работать с фиктивным объектом. для использования внутри вызова when().

ОТВЕТ: when(method.invoke(mock)).thenReturn("Hello world."); является правильным синтаксисом, и отражение действительно работает внутри вызова when(). Спасибо, Кевин Велкер!

7
задан Kevin Welker 12 April 2012 в 21:11
поделиться