37 lines
1.4 KiB
PHP
37 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace Tests;
|
|
|
|
use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
|
|
|
|
abstract class TestCase extends BaseTestCase
|
|
{
|
|
protected function setUp(): void
|
|
{
|
|
if (! $this->app) {
|
|
$this->refreshApplication();
|
|
}
|
|
|
|
// Kényszerítsük a teszt adatbázist, ha valamiért nem az lenne (pl. cache-elt config)
|
|
// Használjuk az env() függvényt, mert a config() a cache miatt csalhat
|
|
if (env('APP_ENV') === 'testing') {
|
|
config(['database.connections.mysql.database' => 'd2dTest']);
|
|
}
|
|
|
|
$currentDb = config('database.connections.mysql.database');
|
|
$currentEnv = env('APP_ENV');
|
|
|
|
// Szigorú ellenőrzés a d2d (élő/helyi) adatbázis ellen
|
|
if (strtolower($currentDb) === 'd2d' && $currentEnv === 'testing') {
|
|
throw new \Exception('STOP!!! KRITIKUS HIBA: A tesztek az ÉLŐ (d2d) adatbázison akarnak futni! A folyamat leállítva a RefreshDatabase lefutása előtt. Kérlek futtasd a "php artisan config:clear" parancsot!');
|
|
}
|
|
|
|
// Általános ellenőrzés, hogy a teszt adatbázis legyen használva
|
|
if (strtolower($currentDb) !== 'd2dtest' && $currentEnv === 'testing') {
|
|
throw new \Exception('HIBA: A teszteknek a d2dTest adatbázison kellene futniuk. Aktuális konfiguráció: ' . $currentDb . '. Kérlek futtasd a "php artisan config:clear" parancsot!');
|
|
}
|
|
|
|
parent::setUp();
|
|
}
|
|
}
|