class ExperimentalHelpTest

Same name and namespace in other branches
  1. 11.x core/modules/help/tests/src/Functional/ExperimentalHelpTest.php \Drupal\Tests\help\Functional\ExperimentalHelpTest
  2. 10 core/modules/help/tests/src/Functional/ExperimentalHelpTest.php \Drupal\Tests\help\Functional\ExperimentalHelpTest
  3. 8.9.x core/modules/help/tests/src/Functional/ExperimentalHelpTest.php \Drupal\Tests\help\Functional\ExperimentalHelpTest

Verifies help for experimental modules.

@group help

Hierarchy

Expanded class hierarchy of ExperimentalHelpTest

File

core/modules/help/tests/src/Functional/ExperimentalHelpTest.php, line 12

Namespace

Drupal\Tests\help\Functional
View source
class ExperimentalHelpTest extends BrowserTestBase {
  
  /**
   * Modules to enable.
   *
   * The experimental_module_test module implements hook_help() and is in the
   * Core (Experimental) package.
   *
   * @var array
   */
  protected static $modules = [
    'help',
    'experimental_module_test',
    'help_page_test',
  ];
  
  /**
   * {@inheritdoc}
   */
  protected $defaultTheme = 'stark';
  
  /**
   * The admin user.
   *
   * @var \Drupal\user\UserInterface
   */
  protected $adminUser;
  
  /**
   * {@inheritdoc}
   */
  protected function setUp() : void {
    parent::setUp();
    $this->adminUser = $this->drupalCreateUser([
      'access administration pages',
    ]);
  }
  
  /**
   * Verifies that a warning message is displayed for experimental modules.
   */
  public function testExperimentalHelp() {
    $this->drupalLogin($this->adminUser);
    $this->drupalGet('admin/help/experimental_module_test');
    $this->assertSession()
      ->statusMessageContains('This module is experimental.', 'warning');
    // Regular modules should not display the message.
    $this->drupalGet('admin/help/help_page_test');
    $this->assertSession()
      ->statusMessageNotContains('This module is experimental.');
    // Ensure the actual help page is displayed to avoid a false positive.
    $this->assertSession()
      ->statusCodeEquals(200);
    $this->assertSession()
      ->pageTextContains('online documentation for the Help Page Test module');
  }

}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.