function AssertContentTrait::assertLinkByHref

Same name in other branches
  1. 8.9.x core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertLinkByHref()
  2. 10 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertLinkByHref()
  3. 11.x core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertLinkByHref()

Passes if a link containing a given href (part) is found.

Parameters

string $href: The full or partial value of the 'href' attribute of the anchor tag.

string $index: Link position counting from zero.

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.

Return value

bool TRUE if the assertion succeeded.

1 call to AssertContentTrait::assertLinkByHref()
StringFormatterTest::testStringFormatter in core/modules/field/tests/src/Kernel/String/StringFormatterTest.php
Tests string formatter output.

File

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

Class

AssertContentTrait
Provides test methods to assert content.

Namespace

Drupal\KernelTests

Code

protected function assertLinkByHref($href, $index = 0, $message = '', $group = 'Other') {
    $links = $this->xpath('//a[contains(@href, :href)]', [
        ':href' => $href,
    ]);
    $message = $message ? $message : new FormattableMarkup('Link containing href %href found.', [
        '%href' => $href,
    ]);
    $this->assertArrayHasKey($index, $links, $message);
    return TRUE;
}

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