Mockito 测试事件 [英] Mockito testing events

查看:66
本文介绍了Mockito 测试事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个生成事件的类,例如

I have a class which generates events e.g.

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

 }

}

我正在使用 Mockito 来模拟 EventListener 并希望对事件对象进行相等处理(例如 event.getTime()..event.getMessage() 等).事件对象没有 equals 方法,因此我无法轻松创建另一个对象并进行断言.

I'm using Mockito to mock an EventListener and want to do an equality on the event object (e.g. event.getTime()..event.getMessage() etc). The event object doesnt have an equals method so I cant easily create another object and do an assert.

使用 Mockito 执行此操作的正常方法是什么?

Whats the normal way of doing this with Mockito?

推荐答案

您似乎想要使用 参数捕获器.

例如:

ArgumentCaptor<Event> argument = ArgumentCaptor.forClass(Event.class);
verify(mockedListener).handle(argument.capture());
assertEquals("ExpectedMessage", argument.getValue().getMessage());

这篇关于Mockito 测试事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆