Skip to content
Snippets Groups Projects
Unverified Commit 42d2b92f authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3136762 by dww, codersukanta, webchick, larowlan: Update.php includes...

Issue #3136762 by dww, codersukanta, webchick, larowlan: Update.php includes link to 'Put site into maintenance mode' for users without permission to use it

(cherry picked from commit 4833c49b)
parent 010940e4
No related branches found
No related tags found
9 merge requests!1445Issue #2920039: Views' User Name exposed group filter validation,!1298Issue #3240993: Let layout builder render inline block translations,!774Issue #3174569: Example node template file name is incorrect,!497Issue #2463967: Use .user.ini file for PHP settings,!433Resolve #3163663 "Too many open files",!233Resolve #2693787 "Taxonomy term name",!133Resolve #2666286 "Clean up menuui",!112Resolve #3187004 "Drupaldatetime serialization issue",!53Resolve #3181870: Correct typo "the the" in "core/classList" deprecation message.
...@@ -220,7 +220,7 @@ system.site_maintenance_mode: ...@@ -220,7 +220,7 @@ system.site_maintenance_mode:
_form: '\Drupal\system\Form\SiteMaintenanceModeForm' _form: '\Drupal\system\Form\SiteMaintenanceModeForm'
_title: 'Maintenance mode' _title: 'Maintenance mode'
requirements: requirements:
_permission: 'administer site configuration' _permission: 'administer site configuration+administer software updates'
system.run_cron: system.run_cron:
path: '/admin/reports/status/run-cron' path: '/admin/reports/status/run-cron'
......
...@@ -659,17 +659,26 @@ public function testSuccessfulMultilingualUpdateFunctionality() { ...@@ -659,17 +659,26 @@ public function testSuccessfulMultilingualUpdateFunctionality() {
* Tests maintenance mode link on update.php. * Tests maintenance mode link on update.php.
*/ */
public function testMaintenanceModeLink() { public function testMaintenanceModeLink() {
$admin_user = $this->drupalCreateUser([ $full_admin_user = $this->drupalCreateUser([
'administer software updates', 'administer software updates',
'access administration pages', 'access administration pages',
'administer site configuration', 'administer site configuration',
]); ]);
$this->drupalLogin($admin_user); $this->drupalLogin($full_admin_user);
$this->drupalGet($this->updateUrl, ['external' => TRUE]);
$this->assertSession()->statusCodeEquals(200);
$this->clickLink('maintenance mode');
$this->assertSession()->statusCodeEquals(200);
$this->assertSession()->elementContains('css', 'main h1', 'Maintenance mode');
// Now login as a user with only 'administer software updates' (but not
// 'administer site configuration') permission and try again.
$this->drupalLogin($this->updateUser);
$this->drupalGet($this->updateUrl, ['external' => TRUE]); $this->drupalGet($this->updateUrl, ['external' => TRUE]);
$this->assertSession()->statusCodeEquals(200); $this->assertSession()->statusCodeEquals(200);
$this->clickLink('maintenance mode'); $this->clickLink('maintenance mode');
$this->assertSession()->statusCodeEquals(200); $this->assertSession()->statusCodeEquals(200);
$this->assertEquals('Maintenance mode', $this->cssSelect('main h1')[0]->getText()); $this->assertSession()->elementContains('css', 'main h1', 'Maintenance mode');
} }
/** /**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment