У меня есть класс А, который должен сделать два последующих вызовов метода его зависимостей B, который принимает коллекцию в качестве аргумента:Проверка аргументов последующих вызовов того же метода в Mockito
class A{
private B myDependency;
public myClassMethod() {
// ... on more than one occasion calls myDependency.dependencyMehtod(someColleciton);
}
}
class B{
public void dependencyMehtod(Collection<Something> input)
}
I хотел бы написать единичный тест для класса A (предпочтительно с использованием Mockito), который проверяет, что метод зависимостей вызывается точно заданным количеством раз, а также проверяет размер входной коллекции при каждом последующем вызове (размер аргумента варьируется между вызовами). Как я могу это сделать?
Я попытался с помощью
myAObject.myClassMethod();
verify(myMockOfB).dependencyMehtod((Collection<Something>) argThat(hasSize(3)); //I expect a size of 3 on the first call
verify(myMockOfB).dependencyMehtod((Collection<Something>) argThat(hasSize(1)); //I expect a size of 1 on the second call
Однако я получаю сообщение об ошибке от Mockito, что коллекция размера 1 была найдена где ожидается коллекция размера 3. Что я делаю не так?
http://docs.mockito.googlecode.com/hg/latest/org/mockito/Mockito.html#6. Почти все о Mockito описано на этой странице с примерами и всего. Прочтите все. –
Выглядит как обманутый вопрос: http://stackoverflow.com/questions/36573399/how-to-verify-invocations-of-the-same-mock-method-with- the-same-argument- thatat -ch – Hedley