whisper-money/.github
Víctor Falcón e4243c2eaa
feat: use testcontainers for isolated MySQL in test runs (#153)
## Summary

- Add `testcontainers/testcontainers` to `require-dev` to spin up an
ephemeral MySQL 8.0 container per test process, eliminating the need for
a local database or Docker Compose stack
- Create `tests/bootstrap.php` that starts a `MySQLContainer`, sets
`DB_*` env vars dynamically, and auto-generates `APP_KEY` when missing
(supports fresh worktrees and CI)
- Update `phpunit.xml` to use the new bootstrap file and remove the
hardcoded `DB_DATABASE` env var

## How it works

Running `php artisan test` now automatically starts a short-lived MySQL
container on a random port. Each test process gets its own isolated
database, so multiple agents, worktrees, or CI jobs can run in parallel
without conflicts.

Set `TESTCONTAINERS=false` to bypass containers and use the database
configured in `.env` instead.
2026-02-25 10:14:20 +01:00
..
ISSUE_TEMPLATE chore: Add GitHub issue template for bug reports (#80) 2026-01-26 19:16:32 +01:00
copilot/skills feat: Decrypt encrypted transactions on key unlock (#123) 2026-02-16 10:37:43 +01:00
screenshots fix: Hide transaction checkboxes on mobile (#109) 2026-02-12 10:03:31 +01:00
skills chore: Update composer packages and laravel boost (#150) 2026-02-24 16:28:22 +01:00
workflows feat: use testcontainers for isolated MySQL in test runs (#153) 2026-02-25 10:14:20 +01:00
FUNDING.yml Add GitHub funding model to FUNDING.yml (#40) 2025-12-30 07:22:19 +01:00
copilot-instructions.md feat: Decrypt encrypted transactions on key unlock (#123) 2026-02-16 10:37:43 +01:00