Context
SonarQube flagged duplicated lines on the moox/verapdf branch (mooxphp/moox feature/add-verapdf-package). The package ships two identical TestCase files — src/Tests/TestCase.php and tests/TestCase.php — both declaring the same class Moox\VeraPdf\Tests\TestCase (they only coexist via an in-file autoloader shim). This is the 96% / ~72-line duplication hit and a genuine copy-paste defect.
What to build
The package has exactly one Moox\VeraPdf\Tests\TestCase, resolved through composer autoloading, with no duplicate file and no runtime autoloader shim.
Acceptance criteria
Blocked by
None — can start immediately.
Context
SonarQube flagged duplicated lines on the
moox/verapdfbranch (mooxphp/mooxfeature/add-verapdf-package). The package ships two identicalTestCasefiles —src/Tests/TestCase.phpandtests/TestCase.php— both declaring the same classMoox\VeraPdf\Tests\TestCase(they only coexist via an in-file autoloader shim). This is the 96% / ~72-line duplication hit and a genuine copy-paste defect.What to build
The package has exactly one
Moox\VeraPdf\Tests\TestCase, resolved through composer autoloading, with no duplicate file and no runtime autoloader shim.Acceptance criteria
TestCasefile remains (keep the canonical location per package convention; the redundant copy is deleted).composer.jsonautoload-devmapsMoox\VeraPdf\Tests\to the kept location; the in-file PSR-4 autoloader shim is removed.Pest.phpstill resolvesTestCase; the full package suite runs green.Blocked by
None — can start immediately.