I'm using JMock to test the behavior of a class using an object. I want to test that the method a()
is called. However, b()
and c()
also are called on the object too. Therefore if my expectations expect a()
, it must also expect b()
and c()
to make the test pass. Is there a way to test only for a certain method, and allow anything else?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Expect a()
allow only methods b()
& c()
mockery.checking(new Expectations() {{
one(mockObject).a();
allowing(mockObject).b();
allowing(mockObject).c();
}});
Expect a()
allow all other methods.
mockery.checking(new Expectations() {{
one(mockObject).a();
allowing(mockObject);
}});