说我在嘲笑这门课 Foo
class Foo {
public void doThing(Bar bar) {
// ...
}
}
这是 Bar
class Bar {
private int i;
public int getI() { return i; }
public void setI(int i) { this.i = i; }
}
我知道我可以使用 Mockito 的验证功能来查看是否使用特定的 Bar
实例或 Mockito.any(Bar.class)
、 但是有没有什么方法可以确保它被任何 ABC1调用,但是具有 ABC5或 Bar#getI()
的特定值?的任何 Bar
对 mock 调用了 Foo#doThing(Bar)
我所知道的是可能的:
Foo mockedFoo = mock(Foo.class);
Bar someBar = mock(Bar.class);
...
verify(mockedFoo).doThing(someBar);
verify(mockedFoo).doThing(any(Bar.class);
我想知道的是,是否有一种方法可以验证 Bar
是否作为参数传递,该 Bar
的特定条件为真。