Skip to content

Commit c10197e

Browse files
Merge pull request #89 from jasara/fix-order-regulated-info-schema
fix: schema of order regulated info
2 parents c881c8d + e4a090b commit c10197e

5 files changed

Lines changed: 51 additions & 5 deletions

File tree

src/Data/Schemas/Orders/RegulatedOrderVerificationStatusSchema.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,12 @@ class RegulatedOrderVerificationStatusSchema extends BaseSchema
88
{
99
public function __construct(
1010
public string $status,
11-
public string $external_reviewer_id,
11+
public bool $requires_merchant_action,
1212
public ValidRejectionReasonsListSchema $valid_rejection_reasons,
13-
public ?string $rejection_reason_id = null,
13+
public ?RejectionReasonSchema $rejection_reason,
14+
public ?string $review_date,
15+
public ?string $external_reviewer_id,
16+
public ?ValidVerificationDetailsListSchema $valid_verification_details,
1417
) {
1518
}
1619
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
3+
namespace Jasara\AmznSPA\Data\Schemas\Orders;
4+
5+
use Jasara\AmznSPA\Data\Schemas\BaseSchema;
6+
7+
class RejectionReasonSchema extends BaseSchema
8+
{
9+
public function __construct(
10+
public string $rejection_reason_id,
11+
public string $rejection_reason_description,
12+
) {
13+
}
14+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace Jasara\AmznSPA\Data\Schemas\Orders;
4+
5+
use Jasara\AmznSPA\Data\Base\TypedCollection;
6+
7+
/**
8+
* @template-extends TypedCollection<ValidVerificationDetailsSchema>
9+
*/
10+
class ValidVerificationDetailsListSchema extends TypedCollection
11+
{
12+
public const ITEM_CLASS = ValidVerificationDetailsSchema::class;
13+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
namespace Jasara\AmznSPA\Data\Schemas\Orders;
4+
5+
use Jasara\AmznSPA\Data\Schemas\BaseSchema;
6+
7+
class ValidVerificationDetailsSchema extends BaseSchema
8+
{
9+
/** @param string[] $valid_verification_statuses */
10+
public function __construct(
11+
public string $verification_detail_type,
12+
public array $valid_verification_statuses,
13+
){
14+
}
15+
}

tests/Unit/Resources/OrdersResourceTest.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
use Jasara\AmznSPA\Data\Responses\Orders\GetOrderResponse;
1717
use Jasara\AmznSPA\Data\Responses\Orders\GetOrdersResponse;
1818
use Jasara\AmznSPA\Data\Schemas\Orders\RegulatedOrderVerificationStatusSchema;
19+
use Jasara\AmznSPA\Data\Schemas\Orders\RejectionReasonSchema;
1920
use Jasara\AmznSPA\Data\Schemas\Orders\ValidRejectionReasonsListSchema;
21+
use Jasara\AmznSPA\Data\Schemas\Orders\ValidRejectionReasonsSchema;
2022
use Jasara\AmznSPA\Tests\Unit\UnitTestCase;
2123
use PHPUnit\Framework\Attributes\CoversClass;
2224

@@ -275,9 +277,8 @@ public function testUpdateVerificationStatus()
275277

276278
$request = RegulatedOrderVerificationStatusSchema::from(
277279
status: 'ACCEPTED',
278-
external_reviewer_id: 'external-reviewer-id',
279-
valid_rejection_reasons: new ValidRejectionReasonsListSchema([]),
280-
rejection_reason_id: null,
280+
requires_merchant_action: true,
281+
valid_rejection_reasons: new ValidRejectionReasonsListSchema([new ValidRejectionReasonsSchema('rejection_reason_id', 'rejection_reason_description')]),
281282
);
282283

283284
$amzn = new AmznSPA($config);

0 commit comments

Comments
 (0)