Я использую Mockery для модульного тестирования, по общему признанию, крайнего случая. Он не работает, и я не думаю, что он должен дать сбой, так что в Mockery может быть ошибка.
Рассмотрим объект, у которого есть метод. У метода есть сигнатура аргумента, где первый аргумент является типизированным и по умолчанию имеет значение null. Второй аргумент не имеет значения по умолчанию.
Когда метод вызывается для объекта с нулевым значением в качестве первого аргумента, он работает нормально. Когда метод вызывается для объекта Mocked с нулевым значением в качестве первого аргумента, он терпит неудачу.
См. Пример кода здесь: https://gist.github.com/awei01/9278119