Скажем, я издеваюсь над этим классом 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, чтобы узнать, был ли Foo#doThing(Bar)
на макет с конкретным экземпляром Bar
или любой Bar
с Mockito.any(Bar.class)
, но есть ли способ убедиться, что это было вызываемый любой Bar
но с определенным значением для i
или Bar#getI()
?
То, что я знаю, возможно:
Foo mockedFoo = mock(Foo.class);
Bar someBar = mock(Bar.class);
...
verify(mockedFoo).doThing(someBar);
verify(mockedFoo).doThing(any(Bar.class);
Я хочу знать, есть ли способ проверить, что Bar
с определенными вещами, истинными в этом отношении, был передан в качестве аргумента.