50 lines
1.7 KiB
PHP
50 lines
1.7 KiB
PHP
<?php
|
|
|
|
use Apoloz\AlfaBank\Core\AlfaBankConnector;
|
|
use Apoloz\AlfaBank\Requests\B2B_1C\CheckMerchantRequest;
|
|
use Apoloz\AlfaBank\Requests\Claims\ResolveClaimRequest;
|
|
use Apoloz\AlfaBank\Requests\Logistics\ExecuteOrderActionRequest;
|
|
use Saloon\Http\Faking\MockResponse;
|
|
|
|
test('can check 1c merchant', function (): void {
|
|
$mockClient = new \Saloon\Http\Faking\MockClient([
|
|
CheckMerchantRequest::class => MockResponse::make([], 200),
|
|
]);
|
|
|
|
$config = createTestConfig();
|
|
$connector = new AlfaBankConnector($config);
|
|
$connector->withMockClient($mockClient);
|
|
|
|
$response = $connector->send(new CheckMerchantRequest('MF123', 'Basic ...'));
|
|
|
|
expect($response->status())->toBe(200);
|
|
});
|
|
|
|
test('can resolve claim', function (): void {
|
|
$mockClient = new \Saloon\Http\Faking\MockClient([
|
|
ResolveClaimRequest::class => MockResponse::make([], 200),
|
|
]);
|
|
|
|
$config = createTestConfig();
|
|
$connector = new AlfaBankConnector($config);
|
|
$connector->withMockClient($mockClient);
|
|
|
|
$response = $connector->send(new ResolveClaimRequest('CLAIM-1', new \Apoloz\AlfaBank\Data\Claims\ClaimResolvedData('RESOLVED')));
|
|
|
|
expect($response->status())->toBe(200);
|
|
});
|
|
|
|
test('can execute logistics action', function (): void {
|
|
$mockClient = new \Saloon\Http\Faking\MockClient([
|
|
ExecuteOrderActionRequest::class => MockResponse::make([], 200),
|
|
]);
|
|
|
|
$config = createTestConfig();
|
|
$connector = new AlfaBankConnector($config);
|
|
$connector->withMockClient($mockClient);
|
|
|
|
$response = $connector->send(new ExecuteOrderActionRequest(1, 2, 'ORDER-1', 'deliver', new \Apoloz\AlfaBank\Data\Logistics\LogisticsActionData));
|
|
|
|
expect($response->status())->toBe(200);
|
|
});
|