38 lines
1.1 KiB
PHP
38 lines
1.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Tests\Unit\Auth;
|
|
|
|
use GuzzleHttp\Psr7\Uri;
|
|
use Ramsey\Uuid\Uuid;
|
|
use Uwil\ArcadiaApiPhpClient\Auth\Nonce;
|
|
use Uwil\ArcadiaApiPhpClient\Auth\RequestSignaturePayload;
|
|
use Uwil\ArcadiaApiPhpClient\Enum\HttpMethod;
|
|
|
|
describe('RequestSignaturePayload Test', function () {
|
|
it('can instanciate a valid request signature payload', function () {
|
|
// GIVEN
|
|
$method = HttpMethod::GET;
|
|
$uri = new Uri('https://example.com');
|
|
$timestamp = new \DateTimeImmutable();
|
|
$nonce = new Nonce(Uuid::uuid7());
|
|
$body = '';
|
|
|
|
// WHEN
|
|
$requestSignaturePayload = new RequestSignaturePayload(
|
|
$method,
|
|
$uri,
|
|
$timestamp,
|
|
$nonce,
|
|
$body
|
|
);
|
|
|
|
// THEN
|
|
expect($requestSignaturePayload->method)->toBe($method);
|
|
expect($requestSignaturePayload->uri)->toBe($uri);
|
|
expect($requestSignaturePayload->timestamp)->toBe($timestamp);
|
|
expect($requestSignaturePayload->nonce)->toBe($nonce);
|
|
expect($requestSignaturePayload->body)->toBe($body);
|
|
});
|
|
});
|