我在JUnit测试类中有以下期望:
CustomEvent myCustomEvent = new CustomEvent(data1, data2);
m_context.checking(new Expectations() {{
oneOf(handler).somethingHappened(myCustomEvent); }});
在正在测试的类中,我使用测试类中的相同参数调用handler.somethingHappened
实例CustomEvent
。但是,当被测试的类中发生这种情况时,JMock会声明意外调用。
JMock错误显示了对类中创建的对象引用的差异,所以我假设这就是我有意外引用的原因。
我的问题是,我怎样才能改变我的期望,以便我可以测试对象实际上是否相等?等于对象的内容而不是内存引用。
由于
答案 0 :(得分:1)
myCustomEvent
与测试期间代码中出现的内容有什么关系?默认匹配是调用equals()
,否则您应该使用匹配器来描述该关系(并且不要忘记with
子句)