Может ли Mockito проверять параметры на основе их значений во время вызова метода?

у меня естьFoo класс, который является SUT иBar класс, который является его сотрудником.Foo звонкиrun(List<Object> values) наBar с участием "expectedList«В качестве аргумента. ТогдаFoo добавит еще несколько элементов к этомуList так что его состояние будет отличаться от того что было на момент звонкаrun(), Вот мой тестовый пример.

@Test
public void testFoo() {
    Bar collaborator = spy(new Bar()); 
    Foo sut = new Foo(collaborator);
    verify(collaborator).run(expectedList);
}

Обратите внимание, что сотрудник на самом деле является объектом шпиона, а не насмешкой. Этот тест не пройдёт, потому что даже еслиrun() был вызван с аргументом, равнымexpectedList, он был изменен, и его текущее значение больше не равноexpectedList, Тем не менее, это способ, которым он должен работать, поэтому мне интересно, есть ли способ, чтобы Mockito сохранял снимок параметров при вызове метода и проверял их на основе этих значений, а не самых последних значений.

Ответы на вопрос(4)

Ваш ответ на вопрос