bootstrap.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. declare(strict_types=1);
  3. define('BASE_PATH', dirname(__DIR__));
  4. define('TESTING', true);
  5. require_once BASE_PATH . '/vendor/autoload.php';
  6. if (file_exists(BASE_PATH . '/config/.config.test.php')) {
  7. require_once BASE_PATH . '/config/.config.test.php';
  8. } elseif (file_exists(BASE_PATH . '/config/.config.php')) {
  9. // Fallback to main config but use test database
  10. require_once BASE_PATH . '/config/.config.php';
  11. $_ENV['db_database'] = 'sspanel_test';
  12. $_ENV['redis_db'] = 15;
  13. } else {
  14. require_once BASE_PATH . '/config/.config.example.php';
  15. // Set test database for example config
  16. $_ENV['db_database'] = 'sspanel_test';
  17. $_ENV['redis_db'] = 15;
  18. }
  19. $_ENV['APP_ENV'] = 'testing';
  20. error_reporting(E_ALL);
  21. ini_set('display_errors', '1');
  22. $directories = [
  23. BASE_PATH . '/storage/logs',
  24. BASE_PATH . '/storage/framework/smarty/compile',
  25. BASE_PATH . '/storage/framework/smarty/cache',
  26. BASE_PATH . '/.phpunit.cache',
  27. BASE_PATH . '/coverage',
  28. ];
  29. foreach ($directories as $dir) {
  30. if (!is_dir($dir)) {
  31. mkdir($dir, 0777, true);
  32. }
  33. }
  34. require_once __DIR__ . '/helpers.php';