Mercurial > hg > cmmr2012-drupal-site
view vendor/jcalderonzumba/mink-phantomjs-driver/src/WindowTrait.php @ 5:12f9dff5fda9 tip
Update to Drupal core 8.7.1
| author | Chris Cannam |
|---|---|
| date | Thu, 09 May 2019 15:34:47 +0100 |
| parents | c75dbcec494b |
| children |
line wrap: on
line source
<?php namespace Zumba\Mink\Driver; use Behat\Mink\Exception\DriverException; /** * Class WindowTrait * @package Zumba\Mink\Driver */ trait WindowTrait { /** * Returns the current page window name * @return string */ public function getWindowName() { return $this->browser->windowName(); } /** * Return all the window handles currently present in phantomjs * @return array */ public function getWindowNames() { return $this->browser->windowHandles(); } /** * Switches to window by name if possible * @param $name * @throws DriverException */ public function switchToWindow($name = null) { $handles = $this->browser->windowHandles(); if ($name === null) { //null means back to the main window return $this->browser->switchToWindow($handles[0]); } $windowHandle = $this->browser->windowHandle($name); if (!empty($windowHandle)) { $this->browser->switchToWindow($windowHandle); } else { throw new DriverException("Could not find window handle by a given window name: $name"); } } /** * Resizing a window with specified size * @param int $width * @param int $height * @param string $name * @throws DriverException */ public function resizeWindow($width, $height, $name = null) { if ($name !== null) { //TODO: add this on the phantomjs stuff throw new DriverException("Resizing other window than the main one is not supported yet"); } $this->browser->resize($width, $height); } }
