function RouterTest::testMaintenanceModeLoginPaths

Make sure the maintenance mode can be bypassed using hook_menu_site_status_alter().

See also

hook_menu_site_status_alter().

File

drupal/core/modules/system/lib/Drupal/system/Tests/Menu/RouterTest.php, line 159
Definition of Drupal\system\Tests\Menu\RouterTest.

Class

RouterTest
Tests menu router and hook_menu() functionality.

Namespace

Drupal\system\Tests\Menu

Code

function testMaintenanceModeLoginPaths() {
  config('system.maintenance')
    ->set('enabled', 1)
    ->save();
  $offline_message = t('@site is currently under maintenance. We should be back shortly. Thank you for your patience.', array(
    '@site' => config('system.site')
      ->get('name'),
  ));
  $this
    ->drupalGet('test-page');
  $this
    ->assertText($offline_message);
  $this
    ->drupalGet('menu_login_callback');
  $this
    ->assertText('This is menu_login_callback().', 'Maintenance mode can be bypassed through hook_menu_site_status_alter().');
  config('system.maintenance')
    ->set('enabled', 0)
    ->save();
}