MockResponse::make([['id' => 'WH-1']], 200), ]); $config = createTestConfig(); $connector = new AlfaBankConnector($config); $connector->withMockClient($mockClient); $response = $connector->send(new GetWebhooksRequest()); expect($response->status())->toBe(200) ->and($response->json('0.id'))->toBe('WH-1'); }); test('can create webhook', function () { $mockClient = new \Saloon\Http\Faking\MockClient([ CreateWebhookRequest::class => MockResponse::make(['id' => 'WH-2'], 201), ]); $config = createTestConfig(); $connector = new AlfaBankConnector($config); $connector->withMockClient($mockClient); $response = $connector->send(new CreateWebhookRequest(new WebhookSubscriptionRequestData('https://test.io', ['transactions']))); expect($response->status())->toBe(201); }); test('can delete webhook', function () { $mockClient = new \Saloon\Http\Faking\MockClient([ DeleteWebhookRequest::class => MockResponse::make([], 204), ]); $config = createTestConfig(); $connector = new AlfaBankConnector($config); $connector->withMockClient($mockClient); $response = $connector->send(new DeleteWebhookRequest('WH-1')); expect($response->status())->toBe(204); });