Files
dyncoll-dev/backend/tests/TestCase.php
Giuseppe Naponiello cc4e174880 auth tests
2026-06-22 14:31:44 +02:00

33 lines
1.0 KiB
PHP

<?php
namespace Tests;
use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
use Illuminate\Support\Facades\DB;
use Tests\Concerns\CreatesUsers;
use Tests\Support\UnsafeTestDatabaseException;
abstract class TestCase extends BaseTestCase
{
use CreatesUsers;
/**
* Cintura di sicurezza. refreshApplication() gira PRIMA di setUpTraits()
* (quindi prima dell'eventuale migrate:fresh di RefreshDatabase): se la
* connessione non punta al DB di test dedicato, abortiamo invece di azzerare
* il database di sviluppo `dyncoll`. (Non si può usare beforeRefreshingDatabase:
* nelle classi che usano il trait RefreshDatabase la sua versione vuota
* soppianta quella ereditata dal parent.) Esegui sempre con `make test`.
*/
protected function refreshApplication(): void
{
parent::refreshApplication();
$database = DB::connection()->getDatabaseName();
if ($database !== 'dyncoll_test') {
throw UnsafeTestDatabaseException::for($database);
}
}
}