我正在写一些测试,我想知道如何模拟下一个连接的函数调用:
$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)));
答案 0 :(得分:0)
你试过了吗?
Validator::shouldReceive('errors->all')
->once()
->andReturn(array());
这个答案可能也很重要:https://stackoverflow.com/a/22435748/5072503