d2d.emegrendeles.hu/tests/TestCase.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();
}
}