shopit-back/tests
ncoronel ee9f2ba538 fix(event): backfill active event social media 2026-09-18 11:32:10 -03:00
..
Concerns refactor(backend): reorganize domains into Core, Commerce, Ticketing and Shared 2026-09-18 10:15:57 -03:00
Feature fix(event): backfill active event social media 2026-09-18 11:32:10 -03:00
Support fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00
Unit refactor(backend): reorganize domains into Core, Commerce, Ticketing and Shared 2026-09-18 10:15:57 -03:00
README.md fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00
TestCase.php fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00
bootstrap.php fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00
verify-database-safety.php fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00

README.md

Database isolation

Run the suite with composer test or vendor/bin/phpunit. Both use tests/bootstrap.php, which forces SQLite :memory: in all environment sources. Tests never need a MySQL test database or the local database credentials.

Tests\TestCase rejects cached configuration and validates the default connection before application providers boot. Its connection factory also rejects persistent databases, URLs, and alternate endpoints for named or dynamically built connections. Tests that need Laravel must extend this base class. Do not bypass these guards to make a failing test pass; adapt database-specific tests to SQLite or use a separately designed disposable database workflow.

php tests/verify-database-safety.php checks the guard and application wiring without running test setup, queries, migrations, or opening PDO connections.

The suite does not validate MySQL-specific behavior when using SQLite.