function WebAssert::fieldEnabled

Same name in other branches
  1. 9 core/tests/Drupal/Tests/WebAssert.php \Drupal\Tests\WebAssert::fieldEnabled()
  2. 8.9.x core/tests/Drupal/Tests/WebAssert.php \Drupal\Tests\WebAssert::fieldEnabled()
  3. 10 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 637

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) {
    $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;
}

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