Mercurial > hg > isophonics-drupal-site
diff core/modules/help/tests/src/Functional/NoHelpTest.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 129ea1e6d783 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/help/tests/src/Functional/NoHelpTest.php Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,49 @@ +<?php + +namespace Drupal\Tests\help\Functional; + +use Drupal\Tests\BrowserTestBase; + +/** + * Verify no help is displayed for modules not providing any help. + * + * @group help + */ +class NoHelpTest extends BrowserTestBase { + + /** + * Modules to enable. + * + * Use one of the test modules that do not implement hook_help(). + * + * @var array. + */ + public static $modules = ['help', 'menu_test']; + + /** + * The user who will be created. + */ + protected $adminUser; + + protected function setUp() { + parent::setUp(); + $this->adminUser = $this->drupalCreateUser(['access administration pages']); + } + + /** + * Ensures modules not implementing help do not appear on admin/help. + */ + public function testMainPageNoHelp() { + $this->drupalLogin($this->adminUser); + + $this->drupalGet('admin/help'); + $this->assertResponse(200); + $this->assertText('Module overviews are provided by modules'); + $this->assertFalse(\Drupal::moduleHandler()->implementsHook('menu_test', 'help'), 'The menu_test module does not implement hook_help'); + $this->assertNoText(\Drupal::moduleHandler()->getName('menu_test'), 'Making sure the test module menu_test does not display a help link on admin/help.'); + + $this->drupalGet('admin/help/menu_test'); + $this->assertResponse(404, 'Getting a module overview help page for a module that does not implement hook_help() results in a 404.'); + } + +}