corentin_wakdo/.forgejo/workflows
Imugiii d4b02a76c6
All checks were successful
CI / secret-scan (push) Successful in 7s
CI / php-lint (push) Successful in 17s
CI / static-tests (push) Successful in 46s
CI / secret-scan (pull_request) Successful in 8s
CI / php-lint (pull_request) Successful in 20s
CI / static-tests (pull_request) Successful in 45s
CI / auto-merge (push) Has been skipped
CI / auto-merge (pull_request) Successful in 5s
ci: run DB integration tests against an ephemeral MariaDB service
Avant ce commit, le job static-tests lancait phpunit sans base ni
WAKDO_DB_TESTS=1 : les 7 tests d'integration tests/Integration/*DbTest
s'auto-skippaient (13 skips), et le SQL porteur de securite n'etait valide
par AUCUN test en CI -- upsert atomique du throttle (login + PIN), predicat
RBAC AND r.is_active=1, audit_log dans la meme transaction, FK RESTRICT/CASCADE.
Une regression dans ce SQL passait la CI au vert (le double FakeDatabase
n'execute pas le SQL).

Ce commit provisionne un service MariaDB 11.4 ephemere, applique le schema
(db/migrations) puis le seed (db/seeds), et lance phpunit avec WAKDO_DB_TESTS=1
+ DB_*, ajoute le pilote pdo_mysql (php-mysql) et le client mariadb. L'option
--fail-on-skipped garantit qu'un skip silencieux d'un *DbTest fait desormais
echouer la CI au lieu de la laisser verte.

Recette validee localement sur une MariaDB 11.4 vierge : migrations + seeds
appliques proprement (22 tables, 5 roles, 53 produits), phpunit = 188 tests /
525 assertions / 0 skip / 0 echec (vs 188 / 448 / 13 skip sans base).
2026-06-16 10:40:09 +00:00
..
ci.yml ci: run DB integration tests against an ephemeral MariaDB service 2026-06-16 10:40:09 +00:00