1
Я пишу некоторые испытания и мне было интересно, как я мог издеваться следующим каскадный Funciton вызова:PHPUnit издеваться каскадный функция
$validator->errors()->all()
мне не нужен сбор ошибок, как я хочу, чтобы это было emmpty так, чтобы $this->logerror
не вызывается.
Можно ли высмеять $validator->errors()->all()
в один звонок?
Что-то вроде
Validator::shouldReceive('errors()->all()')
->once()
->andReturn(array());
Code:
// CLASS
$validator = Validator::make(
['participant' => $participant'],
$programValidator->getRules()
);
if($validator->fails()) {
foreach($validator->errors()->all() as $error) {
$this->logError($record, $error);
}
// TEST
Validator::shouldReceive('make')
->once()
->andReturn(Mockery::mock(array('fails' => true)));
Вы должны издеваться над всеми вызовами методов, поэтому вы должны ошибаться, что вызов метода 'errors()' должен возвращать также издевавшийся объект, который в вызове метода 'all()' возвращает пустой массив. Для получения полного ответа вам необходимо указать, какую структуру и версию вы используете, по крайней мере, какой тип объекта возвращается при вызове метода вызова. Надеюсь, эта помощь. – Matteo