You are here

protected function AssertContentTrait::assertNoOption in Drupal 8

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

Asserts that a select option in the current page does not exist.

Parameters

string $id: ID 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.

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 'Browser'; most tests do not override this default.

Return value

bool TRUE on pass, FALSE on fail.

File

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

Class

AssertContentTrait
Provides test methods to assert content.

Namespace

Drupal\KernelTests

Code

protected function assertNoOption($id, $option, $message = '', $group = 'Browser') {
  $selects = $this
    ->xpath('//select[@id=:id]', [
    ':id' => $id,
  ]);
  $options = $this
    ->xpath('//select[@id=:id]//option[@value=:option]', [
    ':id' => $id,
    ':option' => $option,
  ]);
  return $this
    ->assertTrue(isset($selects[0]) && !isset($options[0]), $message ? $message : new FormattableMarkup('Option @option for field @id does not exist.', [
    '@option' => $option,
    '@id' => $id,
  ]), $group);
}