Заглушка по умолчанию в Mockito

Как я могу заглушить метод, чтобы при получении значения, которое я не ожидаю, он возвращал значение по умолчанию?

Например, :

Map<String, String> map = mock(Map.class);
when(map.get("abcd")).thenReturn("defg");
when(map.get("defg")).thenReturn("ghij");
when(map.get(anyString())).thenReturn("I don't know that string");

Часть 2: То же, что и выше, но вызывает исключение:

Map<String, String> map = mock(Map.class);
when(map.get("abcd")).thenReturn("defg");
when(map.get("defg")).thenReturn("ghij");
when(map.get(anyString())).thenThrow(new IllegalArgumentException("I don't know that string"));

В приведенных выше примерах последняя заглушка имеет приоритет, поэтому карта всегда будет возвращать значение по умолчанию.

14
задан Alex Spurling 18 November 2010 в 05:19
поделиться