Казалось бы, популярный, уже оттестированный фреймворк. И тут те на!
Допустим нам нужно замокать нечто вроде:
|
1 2 3 4 5 6 7 |
public class ToMock { public Integer getInt() { return 7; } } |
Дальше в тесте:
|
1 |
int i = mock(ToMock.class).getInt() |
Согласно моим ожиданиям, этот код должен свалиться с NPE, потому как происходит анбоксинг после вызова метода getInt. На самом деле mockito возвращает 0.
Проверялось на mockito-all:1.10.8 и 1.10.19.
Со стороны mockito всё нормально. “Прикрылись” фиговым листком джавадоком:
By default, for all methods that return value, mock returns null, an empty collection or appropriate primitive/primitive wrapper value (e.g: 0, false, … for int/Integer, boolean/Boolean, …).