You are here

abstract class CoreDriver in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/behat/mink/src/Driver/CoreDriver.php \Behat\Mink\Driver\CoreDriver

Core driver. All other drivers should extend this class for future compatibility.

@author Konstantin Kudryashov <ever.zet@gmail.com>

Hierarchy

Expanded class hierarchy of CoreDriver

1 file declares its use of CoreDriver
BasePhantomJSDriver.php in vendor/jcalderonzumba/mink-phantomjs-driver/src/BasePhantomJSDriver.php

File

vendor/behat/mink/src/Driver/CoreDriver.php, line 23

Namespace

Behat\Mink\Driver
View source
abstract class CoreDriver implements DriverInterface {

  /**
   * @var Session
   */
  private $session;

  /**
   * {@inheritdoc}
   */
  public function setSession(Session $session) {
    $this->session = $session;
  }

  /**
   * {@inheritdoc}
   */
  public function start() {
    throw new UnsupportedDriverActionException('Starting the driver is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function isStarted() {
    throw new UnsupportedDriverActionException('Checking the driver state is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function stop() {
    throw new UnsupportedDriverActionException('Stopping the driver is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function reset() {
    throw new UnsupportedDriverActionException('Resetting the driver is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function visit($url) {
    throw new UnsupportedDriverActionException('Visiting an url is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getCurrentUrl() {
    throw new UnsupportedDriverActionException('Getting the current url is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getContent() {
    throw new UnsupportedDriverActionException('Getting the page content is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function find($xpath) {
    $elements = array();
    foreach ($this
      ->findElementXpaths($xpath) as $xpath) {
      $elements[] = new NodeElement($xpath, $this->session);
    }
    return $elements;
  }

  /**
   * Finds elements with specified XPath query.
   *
   * @see find()
   *
   * @param string $xpath
   *
   * @return string[] The XPath of the matched elements
   *
   * @throws UnsupportedDriverActionException When operation not supported by the driver
   */
  protected function findElementXpaths($xpath) {
    throw new UnsupportedDriverActionException('Finding elements is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getTagName($xpath) {
    throw new UnsupportedDriverActionException('Getting the tag name is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getText($xpath) {
    throw new UnsupportedDriverActionException('Getting the element text is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getHtml($xpath) {
    throw new UnsupportedDriverActionException('Getting the element inner HTML is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getOuterHtml($xpath) {
    throw new UnsupportedDriverActionException('Getting the element outer HTML is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getAttribute($xpath, $name) {
    throw new UnsupportedDriverActionException('Getting the element attribute is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getValue($xpath) {
    throw new UnsupportedDriverActionException('Getting the field value is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function setValue($xpath, $value) {
    throw new UnsupportedDriverActionException('Setting the field value is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function check($xpath) {
    throw new UnsupportedDriverActionException('Checking a checkbox is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function uncheck($xpath) {
    throw new UnsupportedDriverActionException('Unchecking a checkbox is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function isChecked($xpath) {
    throw new UnsupportedDriverActionException('Getting the state of a checkbox is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function selectOption($xpath, $value, $multiple = false) {
    throw new UnsupportedDriverActionException('Selecting an option is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function click($xpath) {
    throw new UnsupportedDriverActionException('Clicking on an element is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function attachFile($xpath, $path) {
    throw new UnsupportedDriverActionException('Attaching a file in an input is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function reload() {
    throw new UnsupportedDriverActionException('Page reloading is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function forward() {
    throw new UnsupportedDriverActionException('Forward action is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function back() {
    throw new UnsupportedDriverActionException('Backward action is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function setBasicAuth($user, $password) {
    throw new UnsupportedDriverActionException('Basic auth setup is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function switchToWindow($name = null) {
    throw new UnsupportedDriverActionException('Windows management is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function switchToIFrame($name = null) {
    throw new UnsupportedDriverActionException('iFrames management is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function setRequestHeader($name, $value) {
    throw new UnsupportedDriverActionException('Request headers manipulation is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getResponseHeaders() {
    throw new UnsupportedDriverActionException('Response headers are not available from %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function setCookie($name, $value = null) {
    throw new UnsupportedDriverActionException('Cookies manipulation is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getCookie($name) {
    throw new UnsupportedDriverActionException('Cookies are not available from %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getStatusCode() {
    throw new UnsupportedDriverActionException('Status code is not available from %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getScreenshot() {
    throw new UnsupportedDriverActionException('Screenshots are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getWindowNames() {
    throw new UnsupportedDriverActionException('Listing all window names is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function getWindowName() {
    throw new UnsupportedDriverActionException('Listing this window name is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function doubleClick($xpath) {
    throw new UnsupportedDriverActionException('Double-clicking is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function rightClick($xpath) {
    throw new UnsupportedDriverActionException('Right-clicking is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function isVisible($xpath) {
    throw new UnsupportedDriverActionException('Element visibility check is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function isSelected($xpath) {
    throw new UnsupportedDriverActionException('Element selection check is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function mouseOver($xpath) {
    throw new UnsupportedDriverActionException('Mouse manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function focus($xpath) {
    throw new UnsupportedDriverActionException('Mouse manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function blur($xpath) {
    throw new UnsupportedDriverActionException('Mouse manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function keyPress($xpath, $char, $modifier = null) {
    throw new UnsupportedDriverActionException('Keyboard manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function keyDown($xpath, $char, $modifier = null) {
    throw new UnsupportedDriverActionException('Keyboard manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function keyUp($xpath, $char, $modifier = null) {
    throw new UnsupportedDriverActionException('Keyboard manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function dragTo($sourceXpath, $destinationXpath) {
    throw new UnsupportedDriverActionException('Mouse manipulations are not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function executeScript($script) {
    throw new UnsupportedDriverActionException('JS is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function evaluateScript($script) {
    throw new UnsupportedDriverActionException('JS is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function wait($timeout, $condition) {
    throw new UnsupportedDriverActionException('JS is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function resizeWindow($width, $height, $name = null) {
    throw new UnsupportedDriverActionException('Window resizing is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function maximizeWindow($name = null) {
    throw new UnsupportedDriverActionException('Window maximize is not supported by %s', $this);
  }

  /**
   * {@inheritdoc}
   */
  public function submitForm($xpath) {
    throw new UnsupportedDriverActionException('Form submission is not supported by %s', $this);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CoreDriver::$session private property 1
CoreDriver::attachFile public function Attaches file path to file field located by it's XPath query. Overrides DriverInterface::attachFile 2
CoreDriver::back public function Moves browser backward 1 page. Overrides DriverInterface::back 1
CoreDriver::blur public function Removes focus from element. Overrides DriverInterface::blur 1
CoreDriver::check public function Checks checkbox by it's XPath query. Overrides DriverInterface::check 1
CoreDriver::click public function Clicks button or link located by it's XPath query. Overrides DriverInterface::click 1
CoreDriver::doubleClick public function Double-clicks button or link located by it's XPath query. Overrides DriverInterface::doubleClick
CoreDriver::dragTo public function Drag one element onto another. Overrides DriverInterface::dragTo 1
CoreDriver::evaluateScript public function Evaluates JS script. Overrides DriverInterface::evaluateScript
CoreDriver::executeScript public function Executes JS script. Overrides DriverInterface::executeScript
CoreDriver::find public function Finds elements with specified XPath query. Overrides DriverInterface::find 1
CoreDriver::findElementXpaths protected function Finds elements with specified XPath query. 1
CoreDriver::focus public function Brings focus to element. Overrides DriverInterface::focus 1
CoreDriver::forward public function Moves browser forward 1 page. Overrides DriverInterface::forward 1
CoreDriver::getAttribute public function Returns element's attribute by it's XPath query. Overrides DriverInterface::getAttribute 2
CoreDriver::getContent public function Returns last response content. Overrides DriverInterface::getContent 1
CoreDriver::getCookie public function Returns cookie by name. Overrides DriverInterface::getCookie 1
CoreDriver::getCurrentUrl public function Returns current URL address. Overrides DriverInterface::getCurrentUrl 1
CoreDriver::getHtml public function Returns element's inner html by it's XPath query. Overrides DriverInterface::getHtml 1
CoreDriver::getOuterHtml public function Returns element's outer html by it's XPath query. Overrides DriverInterface::getOuterHtml 1
CoreDriver::getResponseHeaders public function Returns last response headers. Overrides DriverInterface::getResponseHeaders 1
CoreDriver::getScreenshot public function Capture a screenshot of the current window. Overrides DriverInterface::getScreenshot
CoreDriver::getStatusCode public function Returns last response status code. Overrides DriverInterface::getStatusCode 1
CoreDriver::getTagName public function Returns element's tag name by it's XPath query. Overrides DriverInterface::getTagName 2
CoreDriver::getText public function Returns element's text by it's XPath query. Overrides DriverInterface::getText 1
CoreDriver::getValue public function Returns element's value by it's XPath query. Overrides DriverInterface::getValue 1
CoreDriver::getWindowName public function Return the name of the currently active window. Overrides DriverInterface::getWindowName
CoreDriver::getWindowNames public function Return the names of all open windows. Overrides DriverInterface::getWindowNames
CoreDriver::isChecked public function Checks whether checkbox or radio button located by it's XPath query is checked. Overrides DriverInterface::isChecked 1
CoreDriver::isSelected public function Checks whether select option, located by it's XPath query, is selected. Overrides DriverInterface::isSelected 1
CoreDriver::isStarted public function Checks whether driver is started. Overrides DriverInterface::isStarted 1
CoreDriver::isVisible public function Checks whether element visible located by it's XPath query. Overrides DriverInterface::isVisible 1
CoreDriver::keyDown public function Pressed down specific keyboard key. Overrides DriverInterface::keyDown
CoreDriver::keyPress public function Presses specific keyboard key. Overrides DriverInterface::keyPress
CoreDriver::keyUp public function Pressed up specific keyboard key. Overrides DriverInterface::keyUp
CoreDriver::maximizeWindow public function Maximizes the window if it is not maximized already. Overrides DriverInterface::maximizeWindow
CoreDriver::mouseOver public function Simulates a mouse over on the element. Overrides DriverInterface::mouseOver
CoreDriver::reload public function Reloads current page. Overrides DriverInterface::reload 1
CoreDriver::reset public function Resets driver state. Overrides DriverInterface::reset 1
CoreDriver::resizeWindow public function Set the dimensions of the window. Overrides DriverInterface::resizeWindow
CoreDriver::rightClick public function Right-clicks button or link located by it's XPath query. Overrides DriverInterface::rightClick
CoreDriver::selectOption public function Selects option from select field or value in radio group located by it's XPath query. Overrides DriverInterface::selectOption 1
CoreDriver::setBasicAuth public function Sets HTTP Basic authentication parameters. Overrides DriverInterface::setBasicAuth 2
CoreDriver::setCookie public function Sets cookie. Overrides DriverInterface::setCookie 1
CoreDriver::setRequestHeader public function Sets specific request header on client. Overrides DriverInterface::setRequestHeader 1
CoreDriver::setSession public function Sets driver's current session. Overrides DriverInterface::setSession 1
CoreDriver::setValue public function Sets element's value by it's XPath query. Overrides DriverInterface::setValue 1
CoreDriver::start public function Starts driver. Overrides DriverInterface::start 1
CoreDriver::stop public function Stops driver. Overrides DriverInterface::stop 1
CoreDriver::submitForm public function Submits the form. Overrides DriverInterface::submitForm 1
CoreDriver::switchToIFrame public function Switches to specific iFrame. Overrides DriverInterface::switchToIFrame 1
CoreDriver::switchToWindow public function Switches to specific browser window. Overrides DriverInterface::switchToWindow
CoreDriver::uncheck public function Unchecks checkbox by it's XPath query. Overrides DriverInterface::uncheck 1
CoreDriver::visit public function Visit specified URL. Overrides DriverInterface::visit 1
CoreDriver::wait public function Waits some time or until JS condition turns true. Overrides DriverInterface::wait