我正在开发的应用程序会在Eloquent模型属性更新时触发一个事件。
Eloquent模型名为Job
,当duration
属性更新时,它应该触发JobCustomerTotalAmountDueChanged
事件。我在JobObserver
中编写了以下代码:
public function saved(Job $job)
{
if ($job->isDirty('duration')) {
event(new JobCustomerTotalAmountDueChanged($job));
}
}
当我尝试使用Event::fake
进行测试时,Eloquent事件没有被触发,这意味着saved
方法中的代码从未执行。据我所见,assertDispatched
和assertNotDispatched
方法仅适用于伪造的事件。是否有一种方法可以在不使用Event::fake
的情况下断言特定事件已/未触发?