Методы EasyMock с параметрами, возвращающими void

Моя среда модульного тестирования заменяет компоненты бизнес-службы объектами Mock с помощью EasyMock.createMock(Interace).

Доступ к этим компонентам осуществляется несколькими уровнями ниже в тестируемом классе, поэтому я не хочу изменять ни определение интерфейса, ни тестируемый класс.

Затем я использую EasyMock.expect(...) для управления поведением взаимодействующих объектов. Это прекрасно работает, пока методы не возвращают void.

Как я могу управлять поведением, когда есть недействительные результаты. Т.е.

EasyMock.expect(object.Method( EasyMock.isA(arg1) ).andAnswer( new IAnswer()){
    public void anser(){
   ... do seomething meaningful with arg1...
    }).anyTimes();

person user457588    schedule 24.09.2010    source источник


Ответы (1)


Вы можете использовать expectLastCall().andReturn("something");.

Вы не указываете, какую версию EasyMock вы используете, но я думаю, что эта функция все равно существует уже некоторое время.

Подробнее читайте в документации.

person Epcylon    schedule 24.09.2010
comment
Спасибо! (Это работает). Я уверен, что использую последнюю версию с тех пор, как установил ее пару дней назад. - person user457588; 25.09.2010