OrderNumberController :
- Extraction validateNumber() avec les 3 validations (format, existence, minimum)
- applyNextNumber réduit à 2 returns (erreur validation ou null succès)
sonar-project.properties :
- Ajout templates/email/** et templates/emails/** dans sonar.exclusions
(templates HTML email non analysables par SonarQube)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Le tableau DEFAULT_PRICES contient 16 entrées de données avec la même
structure (title, description, priceHt, monthPrice, period) — c'est de
la configuration, pas du code dupliqué.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- sonar-project.properties : ajout sonar.javascript.lcov.reportPaths=coverage/lcov.info
pour importer le coverage JS généré par vitest/istanbul
- sonar.tests : ajout tests/js pour reconnaissance des tests JavaScript
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
phpunit.dist.xml:
- Ajout de src/Controller/WebhookDocuSealController.php dans les
exclusions de source coverage (methodes I/O non testables)
sonar-project.properties:
- Ajout de src/Controller/WebhookDocuSealController.php dans
sonar.exclusions pour ne pas compter dans le coverage SonarQube
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>