TenantAtlas/apps/platform/tests/Feature/Guards/FastFeedbackLaneContractTest.php
2026-04-16 15:57:39 +02:00

29 lines
1.3 KiB
PHP

<?php
declare(strict_types=1);
use Tests\Support\TestLaneManifest;
it('keeps fast-feedback as the default parallel contributor loop', function (): void {
$lane = TestLaneManifest::lane('fast-feedback');
$command = TestLaneManifest::buildCommand('fast-feedback');
expect($lane['defaultEntryPoint'])->toBeTrue()
->and($lane['parallelMode'])->toBe('required')
->and($lane['includedFamilies'])->toContain('unit')
->and($lane['excludedFamilies'])->toContain('browser', 'heavy-governance')
->and($lane['budget']['baselineDeltaTargetPercent'])->toBe(50)
->and(TestLaneManifest::commandRef('fast-feedback'))->toBe('test')
->and($command)->toContain('--group=fast-feedback')
->and($command)->toContain('--parallel')
->and($command)->toContain('--testsuite=Unit,Feature')
->and(implode(' ', $command))->toContain('--exclude-group=browser,heavy-governance');
});
it('keeps fast-feedback narrower than the broader confidence lane', function (): void {
$fastTargets = TestLaneManifest::discoverFiles('fast-feedback');
$confidenceTargets = TestLaneManifest::discoverFiles('confidence');
expect($fastTargets)->not->toBeEmpty()
->and(count($fastTargets))->toBeLessThan(count($confidenceTargets));
});