Динамически изменяющееся поведение макетов в Mockito - PullRequest
1 голос
/ 17 июня 2011

Здравствуйте, я хотел бы знать, есть ли способ динамически изменять поведение mocks в Mockito.

Например, у меня есть метод count (), и я хотел бы, чтобы Mockito возвращал значение выше напо одному каждый раз, когда я звоню на макете.

Спасибо.

Ответы [ 2 ]

6 голосов
/ 17 июня 2011

Да ... Создайте Ответ и отложите его на макете, используя doAnswer ().

1 голос
/ 11 ноября 2014

Конечно, для вашего count () - метод, получающий приращение, Mockito-Answer - лучший способ.

Кстати: но, тем не менее, напомните, что вы можете «изменить» (определить) поведение поддельного-метод в случае последующих вызовов:

when(mock.someMethod("some arg"))
.thenThrow(new RuntimeException())
.thenReturn("foo");

Здесь вы видите, что первый вызов вызывает исключение RuntimeException, второй вызов возвращает строку "foo" ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...