MockResponse::make([ 'id' => 'REG-123', 'status' => 'CREATED' ], 201), ]); $config = createTestConfig(); $connector = new AlfaBankConnector($config); $connector->withMockClient($mockClient); $payload = new RegistryRequestData( payments: RegistryPaymentData::collect([ [ 'amount' => 100.0, 'date' => '2023-10-10', 'payeeAccount' => '40702...', 'payeeBankBic' => '044...', 'payeeInn' => '770...', 'payeeName' => 'Recipient LLC', 'payerAccount' => '40702...', 'purpose' => 'Payment' ] ], DataCollection::class) ); $response = $connector->send(new CreateRegistryRequest($payload)); expect($response->status())->toBe(201) ->and($response->json('id'))->toBe('REG-123'); }); test('can sign payment registry', function () { $mockClient = new \Saloon\Http\Faking\MockClient([ SignRegistryRequest::class => MockResponse::make([], 200), ]); $config = createTestConfig(); $connector = new AlfaBankConnector($config); $connector->withMockClient($mockClient); $signatures = RegistrySignatureData::collect([ [ 'base64Encoded' => 'SIG...', 'signatureType' => 'RSA', 'certificateUuid' => 'CERT-123' ] ], DataCollection::class); $response = $connector->send(new SignRegistryRequest('REG-123', $signatures)); expect($response->status())->toBe(200); });