function AssertContentTrait::assertLinkByHref

Same name in other branches
  1. 9 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertLinkByHref()
  2. 8.9.x 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 with t(). Use double quotes and embed variables directly in message text, or use sprintf() if necessary. Avoid the use of \Drupal\Component\Render\FormattableMarkup unless you cast the object to a string. If left blank, a default message will be displayed.

Return value

bool TRUE if the assertion succeeded.

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

File

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

Class

AssertContentTrait
Provides test methods to assert content.

Namespace

Drupal\KernelTests

Code

protected function assertLinkByHref($href, $index = 0, $message = '') {
    $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.