You are here

protected function AssertContentTrait::assertTitle in Drupal 9

Same name and namespace in other branches
  1. 8 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertTitle()
  2. 10 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertTitle()

Pass if the page title is the given string.

Parameters

string $title: The string the title should be.

string $message: (optional) A message to display with the assertion. Do not translate messages: use \Drupal\Component\Render\FormattableMarkup to embed variables in the message text, not t(). If left blank, a default message will be displayed.

string $group: (optional) The group this message is in, which is displayed in a column in test output. Use 'Debug' to indicate this is debugging output. Do not translate this string. Defaults to 'Other'; most tests do not override this default.

2 calls to AssertContentTrait::assertTitle()
RouteProviderTest::testAdminHtmlRoutes in core/tests/Drupal/KernelTests/Core/Entity/RouteProviderTest.php
@covers \Drupal\Core\Entity\Routing\AdminHtmlRouteProvider::getEditFormRoute @covers \Drupal\Core\Entity\Routing\AdminHtmlRouteProvider::getDeleteFormRoute
RouteProviderTest::testHtmlRoutes in core/tests/Drupal/KernelTests/Core/Entity/RouteProviderTest.php
@covers \Drupal\Core\Entity\Routing\DefaultHtmlRouteProvider::getRoutes

File

core/tests/Drupal/KernelTests/AssertContentTrait.php, line 806

Class

AssertContentTrait
Provides test methods to assert content.

Namespace

Drupal\KernelTests

Code

protected function assertTitle($title, $message = '', $group = 'Other') {

  // Don't use xpath as it messes with HTML escaping.
  preg_match('@<title>(.*)</title>@', $this
    ->getRawContent(), $matches);
  if (isset($matches[1])) {
    $actual = $matches[1];
    if (!$message) {
      $message = new FormattableMarkup('Page title @actual is equal to @expected.', [
        '@actual' => var_export($actual, TRUE),
        '@expected' => var_export($title, TRUE),
      ]);
    }
    $this
      ->assertEquals($title, $actual, $message);
  }
  else {
    $this
      ->fail('No title element found on the page.');
  }
}