1
0
mirror of https://github.com/flarum/core.git synced 2025-08-04 15:37:51 +02:00

feat: advanced maintenance modes (#3977)

* feat: low maintenance mode (maintenance with admin access) (#3975)
* feat: low maintenance mode (maintenance with admin access)
* Apply fixes from StyleCI
* chore: only required when basic
* chore: more concise code
* chore(review): enum
* feat: enable through settings
* Apply fixes from StyleCI
* core: typing
* feat: safe mode (#3978)
* feat: safe mode
* feat: add extension page warning
* feat: `safe_mode_extensions`
* Apply fixes from StyleCI
This commit is contained in:
Sami Mazouz
2024-05-03 14:05:58 +01:00
committed by GitHub
parent 2b917372a7
commit b8e17182e9
96 changed files with 5801 additions and 342 deletions

View File

@@ -10,6 +10,7 @@
namespace Flarum\Tests\unit\Foundation;
use Flarum\Foundation\Config;
use Flarum\Foundation\MaintenanceMode;
use Flarum\Testing\unit\TestCase;
use InvalidArgumentException;
use RuntimeException;
@@ -73,14 +74,32 @@ class ConfigTest extends TestCase
'offline' => false,
]);
$this->assertFalse($config->inMaintenanceMode());
$this->assertFalse($config->inHighMaintenanceMode());
$config = new Config([
'url' => 'https://flarum.localhost',
'offline' => true,
]);
$this->assertTrue($config->inMaintenanceMode());
$this->assertTrue($config->inHighMaintenanceMode());
$config = new Config([
'url' => 'https://flarum.localhost',
'offline' => MaintenanceMode::LOW,
]);
$this->assertFalse($config->inSafeMode());
$this->assertTrue($config->inLowMaintenanceMode());
$this->assertFalse($config->inHighMaintenanceMode());
$config = new Config([
'url' => 'https://flarum.localhost',
'offline' => MaintenanceMode::SAFE,
]);
$this->assertTrue($config->inSafeMode());
$this->assertFalse($config->inLowMaintenanceMode());
$this->assertFalse($config->inHighMaintenanceMode());
}
/** @test */
@@ -90,7 +109,7 @@ class ConfigTest extends TestCase
'url' => 'https://flarum.localhost',
]);
$this->assertFalse($config->inMaintenanceMode());
$this->assertFalse($config->inHighMaintenanceMode());
}
/** @test */