Я начал использовать PHPSpec 2, и мне нравится Mockery, но я столкнулся с проблемой, которую не могу понять.
У меня есть массив, возвращаемый статической функцией, и я хочу проверить этот массив. Убедитесь, что все необходимые ключи есть и т. д.
Я старался:
$systems = CacheFactory::getCacheSystems();
$systems->shouldBeArray();
Так же как:
$systems = CacheFactory::getCacheSystems();
$this->spec($systems)->shouldBeArray();
Но ни то, ни другое не сработало. Во-первых, по понятным причинам, ошибка сказала, что $systems
не является объектом. Вторая ошибка говорила, что я не могу сериализовать замыкание. В массиве есть замыкания (это массив конфигурации), но я даже пытался их отфильтровать, но безрезультатно.
Пример массива:
array(
'someCache' => array(
'cache' => 'SomeCacheSystem',
'checks' => function () { return isCacheActivated(); }
),
Возможно ли это с PHPSpec 2 в настоящее время? Я просто пропустил что-то глупое, я новичок в фреймворке.