Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ElementFinder.php

class ElementFinder

@final @internal

Hierarchy

  • class \Behat\Mink\Element\ElementFinder

Expanded class hierarchy of ElementFinder

1 file declares its use of ElementFinder
Session.php in vendor/behat/mink/src/Session.php

File

vendor/behat/mink/src/Element/ElementFinder.php, line 21

Namespace

Behat\Mink\Element
View source
class ElementFinder {
    
    /**
     * @var DriverInterface
     */
    private $driver;
    
    /**
     * @var SelectorsHandler
     */
    private $selectorsHandler;
    
    /**
     * @var Manipulator
     */
    private $xpathManipulator;
    public function __construct(DriverInterface $driver, SelectorsHandler $selectorsHandler, ?Manipulator $xpathManipulator = null) {
        $this->driver = $driver;
        $this->selectorsHandler = $selectorsHandler;
        $this->xpathManipulator = $xpathManipulator ?? new Manipulator();
    }
    
    /**
     * @param string|array $locator
     *
     * @return NodeElement[]
     */
    public function findAll(string $selector, $locator, string $parentXpath) {
        if ('named' === $selector) {
            $items = $this->findAll('named_exact', $locator, $parentXpath);
            if (empty($items)) {
                $items = $this->findAll('named_partial', $locator, $parentXpath);
            }
            return $items;
        }
        $xpath = $this->selectorsHandler
            ->selectorToXpath($selector, $locator);
        $xpath = $this->xpathManipulator
            ->prepend($xpath, $parentXpath);
        return $this->driver
            ->find($xpath);
    }

}

Members

Title Sort descending Modifiers Object type Summary
ElementFinder::$driver private property
ElementFinder::$selectorsHandler private property
ElementFinder::$xpathManipulator private property
ElementFinder::findAll public function
ElementFinder::__construct public function

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal