Files
openidea/fixtures/php-app/tests/ArchTest.php
T
lleviathe f50d3099ce test(smoke): smoke-test PHP on a php-app fixture (#2189)
PHP had no regression coverage. Adds a php-app fixture (Composer + Pest) with language, run and debug smoke cases, and a php entry in the Language smoke workflow: PHP 8.5 with Xdebug via setup-php, Intelephense pinned like the other servers. Other languages' selectors are unchanged.

Co-authored-by: lleviathe <95321986+lleviathe@users.noreply.github.com>
2026-11-10 12:10:51 +08:00

23 lines
574 B
PHP

<?php
declare(strict_types=1);
use App\Shipping\Charges;
use App\Shipping\CustomsPolicy;
use App\Shipping\Parcel;
use App\Shipping\Tariff;
use App\Shipping\ThresholdCustoms;
arch('value objects are final and readonly')
->expect([Charges::class, Parcel::class, Tariff::class])
->toBeFinal()
->toBeReadonly();
arch('customs policies implement the contract')
->expect(ThresholdCustoms::class)
->toImplement(CustomsPolicy::class);
arch('application code does not contain debug helpers')
->expect('App')
->not->toUse(['dd', 'dump', 'var_dump']);