я использую Mockery
с Laravel 5.6
, И на данный момент мне нужно проверить, что было передано на сотый звонок.
Вот пример проверки, которую я хочу выполнить.
Mockery::mock(ShopifySDK::class)
->shouldReceive('get')
->with(['key' => 'val']) //I need to check passed array on the 100-th call of the "get" method
->getMock();
Возможно ли это сделать? Если это так, то как это сделать?
Благодаря @NigelRen
Это решение, которое я нашел. Немного некрасиво, но достаточно хорошо для меня.
Mockery::mock(ShopifySDK::class)
->shouldReceive('get')
->withArgs(function ($params) {
static $counter = 0;
if ($counter++ === 100) {
//checks...
return true;
}
return false;
})->getMock();
Других решений пока нет …