fix: 🚨 resolve phpcs errors

This commit is contained in:
Corentin Huet 2026-09-23 10:25:57 +02:00
parent 0f53dfe42b
commit 9524f0c7b2
7 changed files with 54 additions and 45 deletions

View file

@ -16,5 +16,6 @@ final readonly class CampaignRequestListItem
public Applicant $applicant,
public CampaignType $campaignType,
public CampaignStatus $status
) {}
) {
}
}

View file

@ -15,5 +15,6 @@ final readonly class Input implements UseCaseInput
public Pagination $pagination,
public ?CampaignRequestSortCriteria $sort = null,
public ?CampaignRequestFilters $filters = null,
) {}
) {
}
}

View file

@ -16,7 +16,8 @@ final readonly class ListCampaignsRequest implements UseCase
{
public function __construct(
private CampaignRequestRepository $repository,
) {}
) {
}
#[\Override]
public function execute(BaseInput $input): Output

View file

@ -12,5 +12,6 @@ final readonly class Output implements UseCaseOutput
/** @param Paginated<CampaignRequestListItem> $campaignsRequest */
public function __construct(
public Paginated $campaignsRequest,
) {}
) {
}
}

View file

@ -12,5 +12,6 @@ final readonly class CampaignRequestFilters
public function __construct(
public ?BrandCode $brandCode = null,
public ?CampaignStatus $status = null,
) {}
) {
}
}

View file

@ -9,5 +9,6 @@ final readonly class CampaignRequestSortClause
public function __construct(
public CampaignRequestSortField $field,
public \SortDirection $direction,
) {}
) {
}
}

View file

@ -43,41 +43,37 @@ use Shared\ValueObjects\Pagination\Pagination;
covers(ListCampaignsRequest::class, Input::class, Output::class, CampaignRequestListItem::class);
function aRequestedCoupon(): RequestedCoupon
{
return RequestedCoupon::hydrate(
RequestedCouponId::generate(),
new CouponName('Coupon A'),
new CouponProductName('Product A'),
100,
10,
new Period(new DateTime('2026-01-01'), new DateTime('2026-02-01')),
new MoneyAmount(new Money(Currency::EUR, 300)),
new ProcessingCode('PC1'),
new CouponPicture(new PicturePath('coupons/product.jpg'), new PicturePath('coupons/thumbnail.jpg')),
new GS1('01234567890128', BarcodeFormat::EAN13),
new CouponValidity(30, DateTime::now()),
);
}
function bRequestedCoupon(): RequestedCoupon
{
return RequestedCoupon::hydrate(
RequestedCouponId::generate(),
new CouponName('Coupon B'),
new CouponProductName('Product B'),
100,
10,
new Period(new DateTime('2026-01-01'), new DateTime('2026-02-01')),
new MoneyAmount(new Money(Currency::EUR, 300)),
new ProcessingCode('PC2'),
new CouponPicture(new PicturePath('coupons/product.jpg'), new PicturePath('coupons/thumbnail.jpg')),
new GS1('01234567890128', BarcodeFormat::EAN13),
new CouponValidity(30, DateTime::now()),
);
}
describe('list campaigns request use case', function (): void {
beforeEach(function (): void {
$this->couponA = RequestedCoupon::hydrate(
RequestedCouponId::generate(),
new CouponName('Coupon A'),
new CouponProductName('Product A'),
100,
10,
new Period(new DateTime('2026-01-01'), new DateTime('2026-02-01')),
new MoneyAmount(new Money(Currency::EUR, 300)),
new ProcessingCode('PC1'),
new CouponPicture(new PicturePath('coupons/product.jpg'), new PicturePath('coupons/thumbnail.jpg')),
new GS1('01234567890128', BarcodeFormat::EAN13),
new CouponValidity(30, DateTime::now()),
);
$this->couponB = RequestedCoupon::hydrate(
RequestedCouponId::generate(),
new CouponName('Coupon B'),
new CouponProductName('Product B'),
100,
10,
new Period(new DateTime('2026-01-01'), new DateTime('2026-02-01')),
new MoneyAmount(new Money(Currency::EUR, 300)),
new ProcessingCode('PC2'),
new CouponPicture(new PicturePath('coupons/product.jpg'), new PicturePath('coupons/thumbnail.jpg')),
new GS1('01234567890128', BarcodeFormat::EAN13),
new CouponValidity(30, DateTime::now()),
);
});
it('maps repository campaigns request to list items, preserving pagination and sort', function (): void {
// GIVEN
$pagination = Pagination::firstPage();
@ -88,7 +84,7 @@ describe('list campaigns request use case', function (): void {
Country::FR,
CampaignType::CLUB,
new PrintRules(maxPerCustomer: 3),
aRequestedCoupon(),
$this->couponA,
CampaignStatus::CREATED,
);
$campaignRequest2 = CampaignRequest::hydrate(
@ -98,12 +94,17 @@ describe('list campaigns request use case', function (): void {
Country::FR,
CampaignType::CLUB,
new PrintRules(maxPerCustomer: 3),
bRequestedCoupon(),
CampaignStatus::REJECTED,
$this->couponB,
CampaignStatus::CREATED,
);
$paginated = new Paginated($pagination, [$campaignRequest1, $campaignRequest2], 2);
$sort = new CampaignRequestSortCriteria(clauses: [new CampaignRequestSortClause(field: CampaignRequestSortField::BrandCode, direction: \SortDirection::Ascending), new CampaignRequestSortClause(field: CampaignRequestSortField::CreatedAt, direction: \SortDirection::Descending)]);
$sort = new CampaignRequestSortCriteria(
clauses: [
new CampaignRequestSortClause(field: CampaignRequestSortField::BrandCode, direction: \SortDirection::Ascending),
new CampaignRequestSortClause(field: CampaignRequestSortField::CreatedAt, direction: \SortDirection::Descending)
]
);
$filters = new CampaignRequestFilters($campaignRequest2->code, CampaignStatus::CREATED);
$input = new Input(pagination: $pagination, sort: $sort, filters: $filters);
@ -160,7 +161,9 @@ describe('list brands use case assertions', function (): void {
// GIVEN
$repository = \Mockery::mock(CampaignRequestRepository::class);
$useCase = new ListCampaignsRequest($repository);
$invalidInput = new class() implements BaseInput {};
$invalidInput = new class () implements BaseInput
{
};
// WHEN
$action = fn(): Output => $useCase->execute($invalidInput);