我有一个生成事件的类,例如
public class EventSource{
public addEventListener(EventListener listener).....
public raiseEvent(){
Event e=....
listener.handle(e);
}
}
我正在使用Mockito模拟EventListener并想对事件对象进行相等处理(例如event.getTime().. event.getMessage()等)。事件对象没有equals方法,因此我无法轻松创建另一个对象并进行断言。
用Mockito做到这一点的正常方法是什么?
最佳答案
看来您要使用argument captor。
例如:
ArgumentCaptor<Event> argument = ArgumentCaptor.forClass(Event.class);
verify(mockedListener).handle(argument.capture());
assertEquals("ExpectedMessage", argument.getValue().getMessage());
关于mockito - Mockito测试事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9905928/