【发布时间】:2023-03-22 21:45:02
【问题描述】:
我正在尝试模拟模型并在插入时返回 false,以便我可以测试失败案例。
这是我的测试模拟
$mockModel = Mockery::mock(\App\Models\MyModel::class)->shouldReceive(['insertGetId'])->once()->andReturn(false);
这是我在控制器中的插入方法
$result = MyModel::insertGetId(['something' => 'somevalue',]);
dd($result);
我期望 $result 为假,但我得到的是 id (int)。
如果我删除 dd();我在终端上收到此错误。
Mockery\Exception\InvalidCountException: Method insertGetId() from Mockery_0_App_Models_MyModel should be called
exactly 1 times but called 0 times.
【问题讨论】:
标签: php laravel unit-testing mocking mockery