function AssertContentTrait::assertOptionSelectedWithDrupalSelector

Same name and namespace in other branches
  1. 9 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertOptionSelectedWithDrupalSelector()
  2. 8.9.x core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertOptionSelectedWithDrupalSelector()
  3. 10 core/tests/Drupal/KernelTests/AssertContentTrait.php \Drupal\KernelTests\AssertContentTrait::assertOptionSelectedWithDrupalSelector()

Asserts that a select option in the current page is checked.

@todo $id is unusable. Replace with $name.

Parameters

string $drupal_selector: The data drupal selector of select field to assert.

string $option: Option to assert.

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.

Return value

bool TRUE on pass, FALSE on fail.

File

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

Class

AssertContentTrait
Provides test methods to assert content.

Namespace

Drupal\KernelTests

Code

protected function assertOptionSelectedWithDrupalSelector($drupal_selector, $option, $message = '') {
    $message = $message ? $message : new FormattableMarkup('Option @option for field @data_drupal_selector is selected.', [
        '@option' => $option,
        '@data_drupal_selector' => $drupal_selector,
    ]);
    $elements = $this->xpath('//select[@data-drupal-selector=:data_drupal_selector]//option[@value=:option]', [
        ':data_drupal_selector' => $drupal_selector,
        ':option' => $option,
    ]);
    $this->assertNotEmpty($elements, $message);
    $this->assertNotEmpty($elements[0]['selected'], $message);
    return TRUE;
}

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