Update to Drupal 8.0.0-rc3. For more information, see https://www.drupal.org/node/2608078

This commit is contained in:
Pantheon Automation 2015-11-04 11:11:27 -08:00 committed by Greg Anderson
parent 6419a031d7
commit 4afb23bbd3
762 changed files with 20080 additions and 6368 deletions

View file

@ -0,0 +1,64 @@
<?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);
}
}