You are here

public function WebAssert::fieldEnabled in Drupal 10

Same name and namespace in other branches
  1. 8 core/tests/Drupal/Tests/WebAssert.php \Drupal\Tests\WebAssert::fieldEnabled()
  2. 9 core/tests/Drupal/Tests/WebAssert.php \Drupal\Tests\WebAssert::fieldEnabled()

Checks that a given form field element is enabled.

Parameters

string $field: One of id|name|label|value for the field.

\Behat\Mink\Element\TraversableElement $container: (optional) The document to check against. Defaults to the current page.

Return value

\Behat\Mink\Element\NodeElement The matching element.

Throws

\Behat\Mink\Exception\ElementNotFoundException

\Behat\Mink\Exception\ExpectationException

File

core/tests/Drupal/Tests/WebAssert.php, line 587

Class

WebAssert
Defines a class with methods for asserting presence of elements during tests.

Namespace

Drupal\Tests

Code

public function fieldEnabled($field, TraversableElement $container = NULL) {
  assert(func_num_args() <= 2);
  $container = $container ?: $this->session
    ->getPage();
  $node = $container
    ->findField($field);
  if ($node === NULL) {
    throw new ElementNotFoundException($this->session
      ->getDriver(), 'field', 'id|name|label|value', $field);
  }
  if ($node
    ->hasAttribute('disabled')) {
    throw new ExpectationException("Field {$field} is not enabled", $this->session
      ->getDriver());
  }
  return $node;
}