События тестирования Mockito - PullRequest
3 голосов
/ 28 марта 2012

У меня есть класс, который генерирует события, например,

public class EventSource{
 public addEventListener(EventListener listener).....
 public raiseEvent(){
    Event e=....
    listener.handle(e);

 }

}

Я использую Mockito для макета EventListener и хочу сделать равенство для объекта события (например, event.getTime () .. event.getMessage () и т. Д.) У объекта события нет метода equals, поэтому я не могу легко создать другой объект и выполнить assert.

Какой нормальный способ сделать это с Mockito?

1 Ответ

3 голосов
/ 28 марта 2012

Похоже, вы хотите использовать аргумент captor .

Например:

ArgumentCaptor<Event> argument = ArgumentCaptor.forClass(Event.class);
verify(mockedListener).handle(argument.capture());
assertEquals("ExpectedMessage", argument.getValue().getMessage());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...