Skip to content

Latest commit

 

History

History
31 lines (21 loc) · 1.62 KB

File metadata and controls

31 lines (21 loc) · 1.62 KB

Coverage policy

This document lists justified PHPUnit coverage exclusions for REQ-TEST-003 (line coverage ≥ 99% of includable src/).

Included surface

phpunit.xml.dist includes all src/**/*.php except src/Resources and the files below.

Exclusions (phpunit.xml.dist)

These paths are covered primarily by functional tests and interactive CLI flows. Their SQL / IO branch volume would otherwise block a meaningful aggregate gate without duplicating the full command matrix in unit tests:

Path Reason
src/Command/RotateKeysCommand.php Multi-step interactive CLI; exercised in functional/command suites
src/Command/DoctrineEncryptDatabaseCommand.php Raw SQL batch encrypt; functional coverage
src/Command/DoctrineDecryptDatabaseCommand.php Raw SQL batch decrypt; functional coverage
src/Command/GenerateSecretKeyCommand.php Filesystem / env key generation CLI
src/Subscribers/DoctrineEncryptSubscriber.php Lifecycle hooks covered by functional Doctrine tests
src/Encryptors/HaliteEncryptor.php Halite I/O paths covered by unit + functional encryptor tests outside aggregate
src/DependencyInjection/Configuration.php Symfony Config tree; covered by ConfigurationTest (unit) and DI tests

Defensive openssl_* === false / unreadable-file branches in MysqlAesEncryptor are marked @codeCoverageIgnore (unreachable under normal OpenSSL / readable files). Remaining lines are covered by unit tests.

How to verify

make test-coverage

Update the PHP percentage in root README.md (REQ-TEST-007) when the reported summary changes.