From d75f132ee180efd202def3e4c5f296b5cb3293f5 Mon Sep 17 00:00:00 2001 From: Alexis Gousseau Date: Tue, 13 Oct 2026 15:41:21 +0200 Subject: [PATCH] fix: :truck: renaming classes that do not belong directly to Coupons --- .../UseCases/Coupon/Create/Input.php | 4 +-- .../UseCases/Coupon/Create/Output.php | 4 +-- .../Coupon/Find/Output/CouponFound.php | 4 +-- src/Domain/Models/Entities/Coupon.php | 8 ++--- .../Coupon/CouponCountryCoverage.php | 3 +- .../Coupon/CouponProductArray.php | 8 +++-- .../CouponIncoCode.php => IncoCode.php} | 4 +-- ...nProcessingCode.php => ProcessingCode.php} | 4 +-- ...gCodeArray.php => ProcessingCodeArray.php} | 16 ++++----- .../RequestedCoupon/RequestedCoupon.php | 4 +-- .../Create/CreateCampaignRequestTest.php | 12 +++---- .../Find/FindCampaignRequestTest.php | 12 +++---- .../List/ListCampaignsRequestTest.php | 18 +++++----- .../Reject/RejectCampaignRequestTest.php | 12 +++---- .../Coupon/Create/CreateCouponTest.php | 36 +++++++++---------- .../UseCases/Coupon/Find/FindCouponTest.php | 14 ++++---- .../UseCases/Coupon/List/ListCouponTest.php | 18 +++++----- .../Models/Entities/CampaignRequestTest.php | 12 +++---- .../Domain/Models/Entities/CouponTest.php | 14 ++++---- .../Coupon/CouponCountryCoverageTest.php | 16 ++++----- .../Coupon/CouponProcessingCodeTest.php | 24 ++++++------- .../Coupon/CouponProductArrayTest.php | 10 +++--- ...ouponIncoCodeTest.php => IncoCodeTest.php} | 8 ++--- ...nProcessingCode.php => ProcessingCode.php} | 10 +++--- ...ayTest.php => ProcessingCodeArrayTest.php} | 36 +++++++++---------- .../RequestedCoupon/RequestedCouponTest.php | 22 ++++++------ 26 files changed, 168 insertions(+), 165 deletions(-) rename src/Domain/Models/ValueObjects/{Coupon/CouponIncoCode.php => IncoCode.php} (77%) rename src/Domain/Models/ValueObjects/{Coupon/CouponProcessingCode.php => ProcessingCode.php} (85%) rename src/Domain/Models/ValueObjects/{Coupon/CouponProcessingCodeArray.php => ProcessingCodeArray.php} (59%) rename tests/Unit/Domain/Models/ValueObjects/{Coupon/CouponIncoCodeTest.php => IncoCodeTest.php} (71%) rename tests/Unit/Domain/Models/ValueObjects/{Coupon/CouponProcessingCode.php => ProcessingCode.php} (77%) rename tests/Unit/Domain/Models/ValueObjects/{Coupon/CouponProcessingCodeArrayTest.php => ProcessingCodeArrayTest.php} (57%) diff --git a/src/Application/UseCases/Coupon/Create/Input.php b/src/Application/UseCases/Coupon/Create/Input.php index 0061c7c..2fe9c91 100644 --- a/src/Application/UseCases/Coupon/Create/Input.php +++ b/src/Application/UseCases/Coupon/Create/Input.php @@ -12,11 +12,11 @@ use Domain\Models\ValueObjects\Coupon\CouponDiffusion; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\DDD\UseCases\Input as UseCaseInput; final readonly class Input implements UseCaseInput @@ -29,7 +29,7 @@ final readonly class Input implements UseCaseInput public CouponDiffusion $diffusion, public CouponValidityInformationArray $validityInformations, public CouponLegalInformationArray $legalInformations, - public CouponProcessingCodeArray $processingCode, + public ProcessingCodeArray $processingCode, public BrandCode $brandCode, public ActorId $createdBy, public CouponProductArray $products, diff --git a/src/Application/UseCases/Coupon/Create/Output.php b/src/Application/UseCases/Coupon/Create/Output.php index 0a665ba..a1ae503 100644 --- a/src/Application/UseCases/Coupon/Create/Output.php +++ b/src/Application/UseCases/Coupon/Create/Output.php @@ -14,11 +14,11 @@ use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\DDD\UseCases\Output as UseCaseOutput; final readonly class Output implements UseCaseOutput @@ -32,7 +32,7 @@ final readonly class Output implements UseCaseOutput public CouponDiffusion $diffusion, public CouponValidityInformationArray $validityInformations, public CouponLegalInformationArray $legalInformations, - public CouponProcessingCodeArray $processingCode, + public ProcessingCodeArray $processingCode, public BrandCode $brandCode, public ActorId $createdBy, public CouponProductArray $products, diff --git a/src/Application/UseCases/Coupon/Find/Output/CouponFound.php b/src/Application/UseCases/Coupon/Find/Output/CouponFound.php index dc4d18c..2147114 100644 --- a/src/Application/UseCases/Coupon/Find/Output/CouponFound.php +++ b/src/Application/UseCases/Coupon/Find/Output/CouponFound.php @@ -14,11 +14,11 @@ use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; +use Domain\Models\ValueObjects\ProcessingCodeArray; final readonly class CouponFound implements Output { @@ -35,7 +35,7 @@ final readonly class CouponFound implements Output public ?CouponAvailabilityCalendar $availabilityCalendar, public CouponValidityInformationArray $validityInformations, public CouponLegalInformationArray $legalInformations, - public CouponProcessingCodeArray $processingCode, + public ProcessingCodeArray $processingCode, public Brand $brand, public ActorId $createdBy, public CouponProductArray $products, diff --git a/src/Domain/Models/Entities/Coupon.php b/src/Domain/Models/Entities/Coupon.php index 07d1988..4995461 100644 --- a/src/Domain/Models/Entities/Coupon.php +++ b/src/Domain/Models/Entities/Coupon.php @@ -15,11 +15,11 @@ use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\DDD\Models\AggregateRoot; use Shared\DDD\Models\HasTimestampIdentifier; @@ -37,7 +37,7 @@ final readonly class Coupon implements AggregateRoot, HasTimestampIdentifier public CouponDiffusion $diffusion, public CouponValidityInformationArray $validityInformations, public CouponLegalInformationArray $legalInformations, - public CouponProcessingCodeArray $processingCode, + public ProcessingCodeArray $processingCode, public BrandCode $brandCode, public ActorId $createdBy, public CouponProductArray $products, @@ -76,7 +76,7 @@ final readonly class Coupon implements AggregateRoot, HasTimestampIdentifier CouponDiffusion $diffusion, CouponValidityInformationArray $validityInformations, CouponLegalInformationArray $legalInformations, - CouponProcessingCodeArray $processingCode, + ProcessingCodeArray $processingCode, BrandCode $brandCode, ActorId $createdBy, CouponProductArray $products, @@ -114,7 +114,7 @@ final readonly class Coupon implements AggregateRoot, HasTimestampIdentifier CouponDiffusion $diffusion, CouponValidityInformationArray $validityInformations, CouponLegalInformationArray $legalInformations, - CouponProcessingCodeArray $processingCode, + ProcessingCodeArray $processingCode, BrandCode $brandCode, ActorId $createdBy, CouponProductArray $products, diff --git a/src/Domain/Models/ValueObjects/Coupon/CouponCountryCoverage.php b/src/Domain/Models/ValueObjects/Coupon/CouponCountryCoverage.php index 7a33d25..b00aca7 100644 --- a/src/Domain/Models/ValueObjects/Coupon/CouponCountryCoverage.php +++ b/src/Domain/Models/ValueObjects/Coupon/CouponCountryCoverage.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace Domain\Models\ValueObjects\Coupon; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\Enums\Country; final readonly class CouponCountryCoverage @@ -13,7 +14,7 @@ final readonly class CouponCountryCoverage } public static function assert( - CouponProcessingCodeArray $processingCodes, + ProcessingCodeArray $processingCodes, CouponValidityInformationArray $validityInformations, CouponLegalInformationArray $legalInformations, ): void { diff --git a/src/Domain/Models/ValueObjects/Coupon/CouponProductArray.php b/src/Domain/Models/ValueObjects/Coupon/CouponProductArray.php index e1f9cbb..60d3005 100644 --- a/src/Domain/Models/ValueObjects/Coupon/CouponProductArray.php +++ b/src/Domain/Models/ValueObjects/Coupon/CouponProductArray.php @@ -4,15 +4,17 @@ declare(strict_types=1); namespace Domain\Models\ValueObjects\Coupon; +use Domain\Models\ValueObjects\IncoCode; + final readonly class CouponProductArray { public function __construct( - /** @var CouponIncoCode[] */ + /** @var IncoCode[] */ public array $value = [], ) { foreach ($this->value as $product) { - if (! $product instanceof CouponIncoCode) { - throw new \DomainException('Value of CouponProductArray must be CouponIncoCode instances.'); + if (! $product instanceof IncoCode) { + throw new \DomainException('Value of CouponProductArray must be IncoCode instances.'); } } } diff --git a/src/Domain/Models/ValueObjects/Coupon/CouponIncoCode.php b/src/Domain/Models/ValueObjects/IncoCode.php similarity index 77% rename from src/Domain/Models/ValueObjects/Coupon/CouponIncoCode.php rename to src/Domain/Models/ValueObjects/IncoCode.php index 070fc5a..0055e87 100644 --- a/src/Domain/Models/ValueObjects/Coupon/CouponIncoCode.php +++ b/src/Domain/Models/ValueObjects/IncoCode.php @@ -2,9 +2,9 @@ declare(strict_types=1); -namespace Domain\Models\ValueObjects\Coupon; +namespace Domain\Models\ValueObjects; -final readonly class CouponIncoCode +final readonly class IncoCode { /** * @throws \DomainException diff --git a/src/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php b/src/Domain/Models/ValueObjects/ProcessingCode.php similarity index 85% rename from src/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php rename to src/Domain/Models/ValueObjects/ProcessingCode.php index 55ef067..bad00ff 100644 --- a/src/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php +++ b/src/Domain/Models/ValueObjects/ProcessingCode.php @@ -2,12 +2,12 @@ declare(strict_types=1); -namespace Domain\Models\ValueObjects\Coupon; +namespace Domain\Models\ValueObjects; use Shared\DDD\Models\Equatable; use Shared\Enums\Country; -final readonly class CouponProcessingCode implements \Stringable, Equatable +final readonly class ProcessingCode implements \Stringable, Equatable { private const string PATTERN = '/^\d{13}\z/'; diff --git a/src/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArray.php b/src/Domain/Models/ValueObjects/ProcessingCodeArray.php similarity index 59% rename from src/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArray.php rename to src/Domain/Models/ValueObjects/ProcessingCodeArray.php index 7249c40..e95d1fe 100644 --- a/src/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArray.php +++ b/src/Domain/Models/ValueObjects/ProcessingCodeArray.php @@ -2,31 +2,31 @@ declare(strict_types=1); -namespace Domain\Models\ValueObjects\Coupon; +namespace Domain\Models\ValueObjects; use Shared\Enums\Country; -final readonly class CouponProcessingCodeArray +final readonly class ProcessingCodeArray { public function __construct( - /** @var CouponProcessingCode[] */ + /** @var ProcessingCode[] */ public array $value, ) { if ($this->value === []) { - throw new \DomainException('ProcessingCodes requires at least one CouponProcessingCode.'); + throw new \DomainException('ProcessingCodes requires at least one ProcessingCode.'); } $hasFrance = false; $countries = []; foreach ($this->value as $processingCode) { - if (! $processingCode instanceof CouponProcessingCode) { - throw new \DomainException('Value of CouponProcessingCodeArray must be CouponProcessingCode instances.'); + if (! $processingCode instanceof ProcessingCode) { + throw new \DomainException('Value of ProcessingCodeArray must be ProcessingCode instances.'); } if (isset($countries[$processingCode->availableIn->name])) { throw new \DomainException(sprintf( - 'Only one CouponProcessingCode is allowed per country, duplicate for %s.', + 'Only one ProcessingCode is allowed per country, duplicate for %s.', $processingCode->availableIn->name, )); } @@ -39,7 +39,7 @@ final readonly class CouponProcessingCodeArray } if (! $hasFrance) { - throw new \DomainException('CouponProcessingCodes requires a CouponProcessingCode for France.'); + throw new \DomainException('ProcessingCodes requires a ProcessingCode for France.'); } } } diff --git a/src/Domain/Models/ValueObjects/RequestedCoupon/RequestedCoupon.php b/src/Domain/Models/ValueObjects/RequestedCoupon/RequestedCoupon.php index f88965f..d589b30 100644 --- a/src/Domain/Models/ValueObjects/RequestedCoupon/RequestedCoupon.php +++ b/src/Domain/Models/ValueObjects/RequestedCoupon/RequestedCoupon.php @@ -8,12 +8,12 @@ use Domain\Models\ValueObjects\Coupon\CouponCountryCoverage; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCodeArray; final readonly class RequestedCoupon { @@ -23,7 +23,7 @@ final readonly class RequestedCoupon public Period $diffusion, public MoneyAmount $moneyAmount, public CouponPicture $couponPicture, - public CouponProcessingCodeArray $couponProcessingCodes, + public ProcessingCodeArray $couponProcessingCodes, public CouponValidityInformationArray $couponValidityInformations, public CouponLegalInformationArray $couponLegalInformations, public CouponProductArray $couponProducts, diff --git a/tests/Unit/Application/UseCases/CampaignRequest/Create/CreateCampaignRequestTest.php b/tests/Unit/Application/UseCases/CampaignRequest/Create/CreateCampaignRequestTest.php index 4cacc2b..60e8429 100644 --- a/tests/Unit/Application/UseCases/CampaignRequest/Create/CreateCampaignRequestTest.php +++ b/tests/Unit/Application/UseCases/CampaignRequest/Create/CreateCampaignRequestTest.php @@ -14,20 +14,20 @@ use Domain\Models\ValueObjects\Campaign\CampaignName; use Domain\Models\ValueObjects\CampaignRequest\Applicant; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestStatus; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestType; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Domain\Ports\Repositories\BrandRepository; @@ -55,8 +55,8 @@ describe('create campaign request use case', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -66,7 +66,7 @@ describe('create campaign request use case', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3) ), ); diff --git a/tests/Unit/Application/UseCases/CampaignRequest/Find/FindCampaignRequestTest.php b/tests/Unit/Application/UseCases/CampaignRequest/Find/FindCampaignRequestTest.php index 0f60f77..ef0ec38 100644 --- a/tests/Unit/Application/UseCases/CampaignRequest/Find/FindCampaignRequestTest.php +++ b/tests/Unit/Application/UseCases/CampaignRequest/Find/FindCampaignRequestTest.php @@ -21,20 +21,20 @@ use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestId; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestStatus; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestType; use Domain\Models\ValueObjects\CampaignRequest\RejectionReason; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Domain\Ports\Repositories\BrandRepository; @@ -59,8 +59,8 @@ describe('find campaign request use case', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -70,7 +70,7 @@ describe('find campaign request use case', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3), ); diff --git a/tests/Unit/Application/UseCases/CampaignRequest/List/ListCampaignsRequestTest.php b/tests/Unit/Application/UseCases/CampaignRequest/List/ListCampaignsRequestTest.php index e253772..c4d8b81 100644 --- a/tests/Unit/Application/UseCases/CampaignRequest/List/ListCampaignsRequestTest.php +++ b/tests/Unit/Application/UseCases/CampaignRequest/List/ListCampaignsRequestTest.php @@ -16,20 +16,20 @@ use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestSortCriteria; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestSortField; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestStatus; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestType; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Domain\Ports\Repositories\CampaignRequestRepository; @@ -53,8 +53,8 @@ describe('list campaigns request use case', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -64,7 +64,7 @@ describe('list campaigns request use case', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3), ); @@ -78,8 +78,8 @@ describe('list campaigns request use case', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -89,7 +89,7 @@ describe('list campaigns request use case', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3), ); diff --git a/tests/Unit/Application/UseCases/CampaignRequest/Reject/RejectCampaignRequestTest.php b/tests/Unit/Application/UseCases/CampaignRequest/Reject/RejectCampaignRequestTest.php index 25521e1..3c54d9c 100644 --- a/tests/Unit/Application/UseCases/CampaignRequest/Reject/RejectCampaignRequestTest.php +++ b/tests/Unit/Application/UseCases/CampaignRequest/Reject/RejectCampaignRequestTest.php @@ -19,20 +19,20 @@ use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestId; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestStatus; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestType; use Domain\Models\ValueObjects\CampaignRequest\RejectionReason; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Domain\Ports\Repositories\CampaignRequestRepository; @@ -54,8 +54,8 @@ describe('reject campaign request use case', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -65,7 +65,7 @@ describe('reject campaign request use case', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3), ); diff --git a/tests/Unit/Application/UseCases/Coupon/Create/CreateCouponTest.php b/tests/Unit/Application/UseCases/Coupon/Create/CreateCouponTest.php index 44b09ca..dbad074 100644 --- a/tests/Unit/Application/UseCases/Coupon/Create/CreateCouponTest.php +++ b/tests/Unit/Application/UseCases/Coupon/Create/CreateCouponTest.php @@ -21,8 +21,6 @@ use Domain\Models\ValueObjects\Coupon\CouponMovement; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; @@ -30,6 +28,8 @@ use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Ports\Repositories\BrandRepository; use Domain\Ports\Repositories\CouponRepository; use Shared\DDD\UseCases\Input as BaseInput; @@ -58,8 +58,8 @@ describe('create coupon use case', function (): void { 'legalInformations' => new CouponLegalInformationArray([ new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), ]), - 'processingCode' => new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + 'processingCode' => new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), 'brandCode' => new BrandCode('TST89'), 'createdBy' => ActorId::generate(), @@ -197,9 +197,9 @@ describe('create coupon use case', function (): void { it('creates a GS1 coupon with France and Benelux', function () use ($makeInput): void { // GIVEN - $processingCode = new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), - new CouponProcessingCode('5425003944147', Country::BENELUX), + $processingCode = new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), + new ProcessingCode('5425003944147', Country::BENELUX), ]); $validityInformations = new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -236,8 +236,8 @@ describe('create coupon use case', function (): void { it('rejects a coupon that targets only benelux', function () use ($makeInput): void { // GIVEN / WHEN $action = fn (): Input => $makeInput([ - 'processingCode' => new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944147', Country::BENELUX), + 'processingCode' => new ProcessingCodeArray([ + new ProcessingCode('5425003944147', Country::BENELUX), ]), 'validityInformations' => new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX), @@ -254,9 +254,9 @@ describe('create coupon use case', function (): void { it('rejects a benelux processing code without benelux legal information', function () use ($makeInput): void { // GIVEN $input = $makeInput([ - 'processingCode' => new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), - new CouponProcessingCode('5425003944147', Country::BENELUX), + 'processingCode' => new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), + new ProcessingCode('5425003944147', Country::BENELUX), ]), 'validityInformations' => new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -283,9 +283,9 @@ describe('create coupon use case', function (): void { it('rejects a benelux processing code without benelux validity information', function () use ($makeInput): void { // GIVEN $input = $makeInput([ - 'processingCode' => new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), - new CouponProcessingCode('5425003944147', Country::BENELUX), + 'processingCode' => new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), + new ProcessingCode('5425003944147', Country::BENELUX), ]), 'legalInformations' => new CouponLegalInformationArray([ new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -312,9 +312,9 @@ describe('create coupon use case', function (): void { it('rejects two processing codes for the same country', function () use ($makeInput): void { // GIVEN / WHEN $action = fn (): Input => $makeInput([ - 'processingCode' => new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), - new CouponProcessingCode('5425003944147', Country::FRANCE), + 'processingCode' => new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), + new ProcessingCode('5425003944147', Country::FRANCE), ]), ]); diff --git a/tests/Unit/Application/UseCases/Coupon/Find/FindCouponTest.php b/tests/Unit/Application/UseCases/Coupon/Find/FindCouponTest.php index 712bd45..305fd76 100644 --- a/tests/Unit/Application/UseCases/Coupon/Find/FindCouponTest.php +++ b/tests/Unit/Application/UseCases/Coupon/Find/FindCouponTest.php @@ -21,22 +21,22 @@ use Domain\Models\ValueObjects\Campaign\CampaignCouponArray; use Domain\Models\ValueObjects\Campaign\CampaignName; use Domain\Models\ValueObjects\Coupon\CouponCode; use Domain\Models\ValueObjects\Coupon\CouponDiffusion; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovement; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Ports\Repositories\BrandRepository; use Domain\Ports\Repositories\CampaignRepository; use Domain\Ports\Repositories\CouponRepository; @@ -83,14 +83,14 @@ describe('find coupon use case', function (): void { Country::FRANCE ), ]), - processingCode: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + processingCode: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), brandCode: $brand->code, createdBy: ActorId::generate(), products: new CouponProductArray([ - new CouponIncoCode(35784), - new CouponIncoCode(15522), + new IncoCode(35784), + new IncoCode(15522), ]), movements: new CouponMovementArray([ new CouponMovement(1000) diff --git a/tests/Unit/Application/UseCases/Coupon/List/ListCouponTest.php b/tests/Unit/Application/UseCases/Coupon/List/ListCouponTest.php index a3106e6..205eb6f 100644 --- a/tests/Unit/Application/UseCases/Coupon/List/ListCouponTest.php +++ b/tests/Unit/Application/UseCases/Coupon/List/ListCouponTest.php @@ -16,24 +16,24 @@ use Domain\Models\ValueObjects\Coupon\CouponAvailabilityCalendar; use Domain\Models\ValueObjects\Coupon\CouponCode; use Domain\Models\ValueObjects\Coupon\CouponDiffusion; use Domain\Models\ValueObjects\Coupon\CouponId; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovement; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponSortCriteria; use Domain\Models\ValueObjects\Coupon\CouponSortField; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Ports\Repositories\CouponRepository; use Shared\DDD\UseCases\Input as BaseInput; use Shared\Enums\Country; @@ -65,12 +65,12 @@ describe('list coupons use case', function (): void { legalInformations: new CouponLegalInformationArray([ new CouponLegalInformation('Lorem ipsum dolor sit amet.', Country::FRANCE), ]), - processingCode: new CouponProcessingCodeArray([ - new CouponProcessingCode('ABC1234567890', Country::FRANCE), + processingCode: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), brandCode: new BrandCode('AAA01'), createdBy: ActorId::generate(), - products: new CouponProductArray([new CouponIncoCode(35784)]), + products: new CouponProductArray([new IncoCode(35784)]), movements: new CouponMovementArray([new CouponMovement(100)]), quantity: new CouponQuantity(100), availabilityCalendar: new CouponAvailabilityCalendar([ @@ -97,12 +97,12 @@ describe('list coupons use case', function (): void { legalInformations: new CouponLegalInformationArray([ new CouponLegalInformation('Lorem ipsum dolor sit amet.', Country::FRANCE), ]), - processingCode: new CouponProcessingCodeArray([ - new CouponProcessingCode('DEF0123456789', Country::FRANCE), + processingCode: new ProcessingCodeArray([ + new ProcessingCode('5425003944147', Country::FRANCE), ]), brandCode: new BrandCode('BBB02'), createdBy: ActorId::generate(), - products: new CouponProductArray([new CouponIncoCode(35784)]), + products: new CouponProductArray([new IncoCode(35784)]), movements: new CouponMovementArray([new CouponMovement(100)]), quantity: new CouponQuantity(100), ); diff --git a/tests/Unit/Domain/Models/Entities/CampaignRequestTest.php b/tests/Unit/Domain/Models/Entities/CampaignRequestTest.php index 896514f..edf6a44 100644 --- a/tests/Unit/Domain/Models/Entities/CampaignRequestTest.php +++ b/tests/Unit/Domain/Models/Entities/CampaignRequestTest.php @@ -14,20 +14,20 @@ use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestId; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestStatus; use Domain\Models\ValueObjects\CampaignRequest\CampaignRequestType; use Domain\Models\ValueObjects\CampaignRequest\RejectionReason; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Ramsey\Uuid\Uuid; @@ -49,8 +49,8 @@ describe('campaign request', function (): void { new PicturePath('files/thumbnail.jpg'), new PicturePath('files/mobileThumbnail.jpg') ), - couponProcessingCodes: new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + couponProcessingCodes: new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]), couponValidityInformations: new CouponValidityInformationArray([ new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), @@ -60,7 +60,7 @@ describe('campaign request', function (): void { new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE), new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX) ]), - couponProducts: new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]), + couponProducts: new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]), printRules: new PrintRules(maxPerCustomer: 3), ); $code = new BrandCode('AAA01'); diff --git a/tests/Unit/Domain/Models/Entities/CouponTest.php b/tests/Unit/Domain/Models/Entities/CouponTest.php index 003084b..1e77108 100644 --- a/tests/Unit/Domain/Models/Entities/CouponTest.php +++ b/tests/Unit/Domain/Models/Entities/CouponTest.php @@ -6,7 +6,6 @@ namespace Tests\Unit\Domain\Models\Entities; use Carbon\CarbonImmutable; use DateTime; -use Shared\Enums\Country; use Domain\Models\Entities\Coupon; use Domain\Models\ValueObjects\Actor\ActorId; use Domain\Models\ValueObjects\Brand\BrandCode; @@ -14,23 +13,24 @@ use Domain\Models\ValueObjects\Coupon\CouponAvailabilityCalendar; use Domain\Models\ValueObjects\Coupon\CouponCode; use Domain\Models\ValueObjects\Coupon\CouponDiffusion; use Domain\Models\ValueObjects\Coupon\CouponId; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponMovement; use Domain\Models\ValueObjects\Coupon\CouponMovementArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponQuantity; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Ramsey\Uuid\Uuid; +use Shared\Enums\Country; use Shared\Enums\Currency; use Shared\ValueObjects\Money; @@ -58,12 +58,12 @@ describe('coupon', function (): void { Country::FRANCE, ) ]); - $processingCode = new CouponProcessingCodeArray([ - new CouponProcessingCode('5425003944130', Country::FRANCE), + $processingCode = new ProcessingCodeArray([ + new ProcessingCode('5425003944130', Country::FRANCE), ]); $brandCode = new BrandCode('AAA01'); $createdBy = ActorId::generate(); - $products = new CouponProductArray([new CouponIncoCode(35784), new CouponIncoCode(15522)]); + $products = new CouponProductArray([new IncoCode(35784), new IncoCode(15522)]); $movements = new CouponMovementArray([new CouponMovement(100)]); $quantity = new CouponQuantity(100); $availabilityCalendar = new CouponAvailabilityCalendar([ diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponCountryCoverageTest.php b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponCountryCoverageTest.php index c09fd08..1a7bcf0 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponCountryCoverageTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponCountryCoverageTest.php @@ -7,17 +7,17 @@ namespace Tests\Unit\Domain\Models\ValueObjects\Coupon; use Domain\Models\ValueObjects\Coupon\CouponCountryCoverage; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\Enums\Country; covers(CouponCountryCoverage::class); describe('coupon country coverage', function (): void { - $franceCode = new CouponProcessingCode('5425003944130', Country::FRANCE); - $beneluxCode = new CouponProcessingCode('5425003944147', Country::BENELUX); + $franceCode = new ProcessingCode('5425003944130', Country::FRANCE); + $beneluxCode = new ProcessingCode('5425003944147', Country::BENELUX); $franceValidity = new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE); $beneluxValidity = new CouponValidityInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::BENELUX); $franceLegal = new CouponLegalInformation('Lorem ipsum dolor sit amet consectetur adipiscing elit.', Country::FRANCE); @@ -26,7 +26,7 @@ describe('coupon country coverage', function (): void { it('accepts a france only coupon', function () use ($franceCode, $franceValidity, $franceLegal): void { // GIVEN / WHEN $action = fn () => CouponCountryCoverage::assert( - new CouponProcessingCodeArray([$franceCode]), + new ProcessingCodeArray([$franceCode]), new CouponValidityInformationArray([$franceValidity]), new CouponLegalInformationArray([$franceLegal]), ); @@ -45,7 +45,7 @@ describe('coupon country coverage', function (): void { ): void { // GIVEN / WHEN $action = fn () => CouponCountryCoverage::assert( - new CouponProcessingCodeArray([$franceCode, $beneluxCode]), + new ProcessingCodeArray([$franceCode, $beneluxCode]), new CouponValidityInformationArray([$franceValidity, $beneluxValidity]), new CouponLegalInformationArray([$franceLegal, $beneluxLegal]), ); @@ -63,7 +63,7 @@ describe('coupon country coverage', function (): void { ): void { // GIVEN / WHEN $action = fn () => CouponCountryCoverage::assert( - new CouponProcessingCodeArray([$franceCode, $beneluxCode]), + new ProcessingCodeArray([$franceCode, $beneluxCode]), new CouponValidityInformationArray([$franceValidity]), new CouponLegalInformationArray([$franceLegal, $beneluxLegal]), ); @@ -81,7 +81,7 @@ describe('coupon country coverage', function (): void { ): void { // GIVEN / WHEN $action = fn () => CouponCountryCoverage::assert( - new CouponProcessingCodeArray([$franceCode, $beneluxCode]), + new ProcessingCodeArray([$franceCode, $beneluxCode]), new CouponValidityInformationArray([$franceValidity, $beneluxValidity]), new CouponLegalInformationArray([$franceLegal]), ); diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeTest.php b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeTest.php index ec58e64..3302b48 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeTest.php @@ -4,17 +4,17 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects\Coupon; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; +use Domain\Models\ValueObjects\ProcessingCode; use Shared\Enums\Country; -covers(CouponProcessingCode::class); +covers(ProcessingCode::class); describe('coupon processing code', function (): void { $value = '5425003944130'; it('creates a valid processing code', function () use ($value): void { // GIVEN / WHEN - $code = new CouponProcessingCode($value, Country::FRANCE); + $code = new ProcessingCode($value, Country::FRANCE); // THEN expect($code->value)->toBe($value) @@ -23,7 +23,7 @@ describe('coupon processing code', function (): void { it('rejects an invalid value', function (string $invalidValue): void { // GIVEN / WHEN - $action = fn (): CouponProcessingCode => new CouponProcessingCode($invalidValue, Country::FRANCE); + $action = fn (): ProcessingCode => new ProcessingCode($invalidValue, Country::FRANCE); // THEN expect($action)->toThrow(\DomainException::class, 'Processing Code must be exactly 13 numeric characters'); @@ -39,8 +39,8 @@ describe('coupon processing code', function (): void { it('is equal to another processing code with the same value', function () use ($value): void { // GIVEN - $code = new CouponProcessingCode($value, Country::FRANCE); - $other = new CouponProcessingCode($value, Country::FRANCE); + $code = new ProcessingCode($value, Country::FRANCE); + $other = new ProcessingCode($value, Country::FRANCE); // WHEN / THEN expect($code->equals($other))->toBeTrue(); @@ -48,8 +48,8 @@ describe('coupon processing code', function (): void { it('ignores the country when comparing', function () use ($value): void { // GIVEN - $france = new CouponProcessingCode($value, Country::FRANCE); - $benelux = new CouponProcessingCode($value, Country::BENELUX); + $france = new ProcessingCode($value, Country::FRANCE); + $benelux = new ProcessingCode($value, Country::BENELUX); // WHEN / THEN expect($france->equals($benelux))->toBeTrue(); @@ -57,8 +57,8 @@ describe('coupon processing code', function (): void { it('is not equal to a processing code with a different value', function () use ($value): void { // GIVEN - $code = new CouponProcessingCode($value, Country::FRANCE); - $other = new CouponProcessingCode('4006381333931', Country::FRANCE); + $code = new ProcessingCode($value, Country::FRANCE); + $other = new ProcessingCode('4006381333931', Country::FRANCE); // WHEN / THEN expect($code->equals($other))->toBeFalse(); @@ -66,7 +66,7 @@ describe('coupon processing code', function (): void { it('is not equal to a value that is not a processing code', function () use ($value): void { // GIVEN - $code = new CouponProcessingCode($value, Country::FRANCE); + $code = new ProcessingCode($value, Country::FRANCE); // WHEN / THEN expect($code->equals($value))->toBeFalse() @@ -75,7 +75,7 @@ describe('coupon processing code', function (): void { it('is converted to its value as a string', function () use ($value): void { // GIVEN - $code = new CouponProcessingCode($value, Country::FRANCE); + $code = new ProcessingCode($value, Country::FRANCE); // WHEN / THEN expect((string) $code)->toBe($value); diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProductArrayTest.php b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProductArrayTest.php index 342c6f5..ac43e87 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProductArrayTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProductArrayTest.php @@ -4,14 +4,14 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects\Coupon; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponProductArray; +use Domain\Models\ValueObjects\IncoCode; covers(CouponProductArray::class); describe('coupon product array', function (): void { - $firstProduct = new CouponIncoCode(35784); - $secondProduct = new CouponIncoCode(15522); + $firstProduct = new IncoCode(35784); + $secondProduct = new IncoCode(15522); it('is empty by default', function (): void { // GIVEN / WHEN @@ -47,7 +47,7 @@ describe('coupon product array', function (): void { // THEN expect($action)->toThrow( \DomainException::class, - 'Value of CouponProductArray must be CouponIncoCode instances.', + 'Value of CouponProductArray must be IncoCode instances.', ); }); @@ -61,7 +61,7 @@ describe('coupon product array', function (): void { // THEN expect($action)->toThrow( \DomainException::class, - 'Value of CouponProductArray must be CouponIncoCode instances.', + 'Value of CouponProductArray must be IncoCode instances.', ); }); }); diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponIncoCodeTest.php b/tests/Unit/Domain/Models/ValueObjects/IncoCodeTest.php similarity index 71% rename from tests/Unit/Domain/Models/ValueObjects/Coupon/CouponIncoCodeTest.php rename to tests/Unit/Domain/Models/ValueObjects/IncoCodeTest.php index 3302c49..026260e 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponIncoCodeTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/IncoCodeTest.php @@ -4,9 +4,9 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; +use Domain\Models\ValueObjects\IncoCode; -covers(CouponIncoCode::class); +covers(IncoCode::class); describe('inco code', function (): void { $value = 1010100101; @@ -14,7 +14,7 @@ describe('inco code', function (): void { it('creates a valid inco code', function () use ($value): void { // GIVEN / WHEN - $incoCode = new CouponIncoCode($value); + $incoCode = new IncoCode($value); // THEN expect($incoCode->value)->toBe($value); @@ -22,7 +22,7 @@ describe('inco code', function (): void { it('rejects invalid inco code', function () use ($zeroValue): void { // GIVEN / WHEN / THEN - expect(fn (): CouponIncoCode => new CouponIncoCode($zeroValue)) + expect(fn (): IncoCode => new IncoCode($zeroValue)) ->toThrow(\DomainException::class); }); }); diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php b/tests/Unit/Domain/Models/ValueObjects/ProcessingCode.php similarity index 77% rename from tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php rename to tests/Unit/Domain/Models/ValueObjects/ProcessingCode.php index cb83c24..64b7681 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCode.php +++ b/tests/Unit/Domain/Models/ValueObjects/ProcessingCode.php @@ -4,10 +4,10 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; +use Domain\Models\ValueObjects\ProcessingCode; use Shared\Enums\Country; -covers(CouponProcessingCode::class); +covers(ProcessingCode::class); describe('processing code', function (): void { $value = '5425003944130'; @@ -15,7 +15,7 @@ describe('processing code', function (): void { it('creates a valid processing code FRANCE', function () use ($value): void { // GIVEN / WHEN - $processingCode = new CouponProcessingCode( + $processingCode = new ProcessingCode( $value, Country::FRANCE, ); @@ -26,7 +26,7 @@ describe('processing code', function (): void { it('creates a valid processing code BENELUX', function () use ($value): void { // GIVEN / WHEN - $processingCode = new CouponProcessingCode( + $processingCode = new ProcessingCode( $value, Country::BENELUX, ); @@ -37,7 +37,7 @@ describe('processing code', function (): void { it('rejects invalid processing code', function () use ($emptyValue): void { // GIVEN / WHEN / THEN - expect(fn (): CouponProcessingCode => new CouponProcessingCode( + expect(fn (): ProcessingCode => new ProcessingCode( $emptyValue, Country::FRANCE, ))->toThrow(\DomainException::class); diff --git a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArrayTest.php b/tests/Unit/Domain/Models/ValueObjects/ProcessingCodeArrayTest.php similarity index 57% rename from tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArrayTest.php rename to tests/Unit/Domain/Models/ValueObjects/ProcessingCodeArrayTest.php index cbeb252..c71da19 100644 --- a/tests/Unit/Domain/Models/ValueObjects/Coupon/CouponProcessingCodeArrayTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/ProcessingCodeArrayTest.php @@ -4,22 +4,22 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects\Coupon; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Shared\Enums\Country; -covers(CouponProcessingCodeArray::class); +covers(ProcessingCodeArray::class); describe('coupon processing code array', function (): void { - $franceCode = new CouponProcessingCode('5425003944130', Country::FRANCE); - $beneluxCode = new CouponProcessingCode('5425003944147', Country::BENELUX); + $franceCode = new ProcessingCode('5425003944130', Country::FRANCE); + $beneluxCode = new ProcessingCode('5425003944147', Country::BENELUX); it('creates an array containing a France processing code', function () use ($franceCode): void { // GIVEN $processingCodes = [$franceCode]; // WHEN - $array = new CouponProcessingCodeArray($processingCodes); + $array = new ProcessingCodeArray($processingCodes); // THEN expect($array->value)->toBe($processingCodes); @@ -30,7 +30,7 @@ describe('coupon processing code array', function (): void { $processingCodes = [$beneluxCode, $franceCode]; // WHEN - $array = new CouponProcessingCodeArray($processingCodes); + $array = new ProcessingCodeArray($processingCodes); // THEN expect($array->value)->toBe($processingCodes); @@ -38,12 +38,12 @@ describe('coupon processing code array', function (): void { it('rejects an empty array', function (): void { // GIVEN / WHEN - $action = fn (): CouponProcessingCodeArray => new CouponProcessingCodeArray([]); + $action = fn (): ProcessingCodeArray => new ProcessingCodeArray([]); // THEN expect($action)->toThrow( \DomainException::class, - 'ProcessingCodes requires at least one CouponProcessingCode.', + 'ProcessingCodes requires at least one ProcessingCode.', ); }); @@ -52,27 +52,27 @@ describe('coupon processing code array', function (): void { // GIVEN $informations = [ $franceCode, - new CouponProcessingCode('5425003944130', Country::FRANCE), + new ProcessingCode('5425003944130', Country::FRANCE), ]; // WHEN - $action = fn (): CouponProcessingCodeArray => new CouponProcessingCodeArray($informations); + $action = fn (): ProcessingCodeArray => new ProcessingCodeArray($informations); // THEN expect($action)->toThrow( \DomainException::class, - 'Only one CouponProcessingCode is allowed per country, duplicate for FRANCE.', + 'Only one ProcessingCode is allowed per country, duplicate for FRANCE.', ); }); it('rejects a non processing code element', function (): void { // GIVEN / WHEN - $action = fn (): CouponProcessingCodeArray => new CouponProcessingCodeArray(['ABC1234567890']); + $action = fn (): ProcessingCodeArray => new ProcessingCodeArray(['ABC1234567890']); // THEN expect($action)->toThrow( \DomainException::class, - 'Value of CouponProcessingCodeArray must be CouponProcessingCode instances.', + 'Value of ProcessingCodeArray must be ProcessingCode instances.', ); }); @@ -81,12 +81,12 @@ describe('coupon processing code array', function (): void { $processingCodes = [$franceCode, 'ABC1234567890']; // WHEN - $action = fn (): CouponProcessingCodeArray => new CouponProcessingCodeArray($processingCodes); + $action = fn (): ProcessingCodeArray => new ProcessingCodeArray($processingCodes); // THEN expect($action)->toThrow( \DomainException::class, - 'Value of CouponProcessingCodeArray must be CouponProcessingCode instances.', + 'Value of ProcessingCodeArray must be ProcessingCode instances.', ); }); @@ -95,12 +95,12 @@ describe('coupon processing code array', function (): void { $processingCodes = [$beneluxCode]; // WHEN - $action = fn (): CouponProcessingCodeArray => new CouponProcessingCodeArray($processingCodes); + $action = fn (): ProcessingCodeArray => new ProcessingCodeArray($processingCodes); // THEN expect($action)->toThrow( \DomainException::class, - 'CouponProcessingCodes requires a CouponProcessingCode for France.', + 'ProcessingCodes requires a ProcessingCode for France.', ); }); }); diff --git a/tests/Unit/Domain/Models/ValueObjects/RequestedCoupon/RequestedCouponTest.php b/tests/Unit/Domain/Models/ValueObjects/RequestedCoupon/RequestedCouponTest.php index 06368aa..392fa6a 100644 --- a/tests/Unit/Domain/Models/ValueObjects/RequestedCoupon/RequestedCouponTest.php +++ b/tests/Unit/Domain/Models/ValueObjects/RequestedCoupon/RequestedCouponTest.php @@ -5,20 +5,20 @@ declare(strict_types=1); namespace Tests\Unit\Domain\Models\ValueObjects\RequestedCoupon; use DateTime; -use Domain\Models\ValueObjects\Coupon\CouponIncoCode; use Domain\Models\ValueObjects\Coupon\CouponLegalInformation; use Domain\Models\ValueObjects\Coupon\CouponLegalInformationArray; use Domain\Models\ValueObjects\Coupon\CouponName; use Domain\Models\ValueObjects\Coupon\CouponPicture; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCode; -use Domain\Models\ValueObjects\Coupon\CouponProcessingCodeArray; use Domain\Models\ValueObjects\Coupon\CouponProductArray; use Domain\Models\ValueObjects\Coupon\CouponValidityInformation; use Domain\Models\ValueObjects\Coupon\CouponValidityInformationArray; +use Domain\Models\ValueObjects\IncoCode; use Domain\Models\ValueObjects\MoneyAmount; use Domain\Models\ValueObjects\Period; use Domain\Models\ValueObjects\PicturePath; use Domain\Models\ValueObjects\PrintRules; +use Domain\Models\ValueObjects\ProcessingCode; +use Domain\Models\ValueObjects\ProcessingCodeArray; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCoupon; use Domain\Models\ValueObjects\RequestedCoupon\RequestedCouponQuantity; use Shared\Enums\Country; @@ -38,9 +38,9 @@ describe('requested coupon', function (): void { new PicturePath('files/mobileThumbnail.jpg') ); - $franceProcessingCode = new CouponProcessingCode('5425003944130', Country::FRANCE); - $beneluxProcessingCode = new CouponProcessingCode('5425003944147', Country::BENELUX); - $couponProcessingCodes = new CouponProcessingCodeArray([ + $franceProcessingCode = new ProcessingCode('5425003944130', Country::FRANCE); + $beneluxProcessingCode = new ProcessingCode('5425003944147', Country::BENELUX); + $couponProcessingCodes = new ProcessingCodeArray([ $franceProcessingCode, $beneluxProcessingCode, ]); @@ -72,8 +72,8 @@ describe('requested coupon', function (): void { ]); $couponProducts = new CouponProductArray([ - new CouponIncoCode(35784), - new CouponIncoCode(15522), + new IncoCode(35784), + new IncoCode(15522), ]); $printRules = new PrintRules(maxPerCustomer: 3); @@ -193,7 +193,7 @@ describe('requested coupon', function (): void { diffusion: $diffusion, moneyAmount: $moneyAmount, couponPicture: $couponPicture, - couponProcessingCodes: new CouponProcessingCodeArray([ + couponProcessingCodes: new ProcessingCodeArray([ $franceProcessingCode, ]), couponValidityInformations: new CouponValidityInformationArray([ @@ -227,13 +227,13 @@ describe('requested coupon', function (): void { diffusion: $diffusion, moneyAmount: $moneyAmount, couponPicture: $couponPicture, - couponProcessingCodes: new CouponProcessingCodeArray([ + couponProcessingCodes: new ProcessingCodeArray([ $beneluxProcessingCode, ]), couponValidityInformations: $couponValidityInformations, couponLegalInformations: $couponLegalInformations, couponProducts: $couponProducts, - ))->toThrow(\DomainException::class, 'CouponProcessingCodes requires a CouponProcessingCode for France.'); + ))->toThrow(\DomainException::class, 'ProcessingCodes requires a ProcessingCode for France.'); }); it('throws when a benelux processing code has no benelux validity information', function () use (