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

Breadcrumb

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

function NamedSelector::translateToXPath

Translates provided locator into XPath.

Parameters

string|array $locator selector name or array of (selector_name, locator):

Return value

string

Throws

\InvalidArgumentException

Overrides SelectorInterface::translateToXPath

File

vendor/behat/mink/src/Selector/NamedSelector.php, line 211

Class

NamedSelector
Named selectors engine. Uses registered XPath selectors to create new expressions.

Namespace

Behat\Mink\Selector

Code

public function translateToXPath($locator) {
    if (\is_array($locator)) {
        if (2 !== \count($locator)) {
            throw new \InvalidArgumentException('NamedSelector expects array(name, locator) as argument');
        }
        $selector = $locator[0];
        $locator = $locator[1];
    }
    else {
        $selector = (string) $locator;
        $locator = null;
    }
    if (!isset($this->selectors[$selector])) {
        throw new \InvalidArgumentException(sprintf('Unknown named selector provided: "%s". Expected one of (%s)', $selector, implode(', ', array_keys($this->selectors))));
    }
    $xpath = $this->selectors[$selector];
    if (null !== $locator) {
        $xpath = strtr($xpath, array(
            '%locator%' => $this->escapeLocator($locator),
        ));
    }
    return $xpath;
}

API Navigation

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