public function session(array $parameters) { $seleniumServerUrl = PHPUnit_Extensions_Selenium2TestCase_URL::fromHostAndPort($parameters['host'], $parameters['port']); $driver = new PHPUnit_Extensions_Selenium2TestCase_Driver($seleniumServerUrl); $session = $driver->startSession($parameters['browser'], $parameters['browserUrl']); return $session; }
public function session(array $parameters) { $seleniumServerUrl = PHPUnit_Extensions_Selenium2TestCase_URL::fromHostAndPort($parameters['host'], $parameters['port']); $driver = new PHPUnit_Extensions_Selenium2TestCase_Driver($seleniumServerUrl, $parameters['seleniumServerRequestsTimeout']); $capabilities = array_merge($parameters['desiredCapabilities'], array('browserName' => $parameters['browserName'])); $session = $driver->startSession($capabilities, $parameters['browserUrl']); return $session; }
/** * @param array $parameters * @return BrowserSession */ public function create(array $parameters = array()) { $parameters += $this->defaults; $seleniumServerUrl = \PHPUnit_Extensions_Selenium2TestCase_URL::fromHostAndPort($parameters['host'], $parameters['port']); $driver = new \PHPUnit_Extensions_Selenium2TestCase_Driver($seleniumServerUrl, $parameters['seleniumServerRequestsTimeout']); $capabilities = array_merge($parameters['desiredCapabilities'], array('browserName' => $parameters['browserName'])); $sessionCreation = $seleniumServerUrl->descend("/wd/hub/session"); $response = $driver->curl('POST', $sessionCreation, array('desiredCapabilities' => $capabilities)); $sessionPrefix = $response->getURL(); $timeouts = new \PHPUnit_Extensions_Selenium2TestCase_Session_Timeouts($driver, $sessionPrefix->descend('timeouts'), $parameters['seleniumServerRequestsTimeout'] * 1000); return new BrowserSession($this->sl, $driver, $sessionPrefix, $parameters, $timeouts); }
/** * @param \Nette\DI\Container $context */ public function __construct(\Nette\DI\Container $context) { $this->context = $context; $seleniumServerUrl = new \PHPUnit_Extensions_Selenium2TestCase_URL($context->parameters['selenium']['seleniumServer']); $driver = new \PHPUnit_Extensions_Selenium2TestCase_Driver($seleniumServerUrl); $sessionCreationApiUrl = $seleniumServerUrl->descend("/wd/hub/session"); $sessionCreationResponse = $driver->curl('POST', $sessionCreationApiUrl, array('desiredCapabilities' => $context->parameters['selenium']['desiredCapabilities'])); $sessionApiUrl = $sessionCreationResponse->getUrl(); $baseUrl = new \PHPUnit_Extensions_Selenium2TestCase_URL($context->parameters['selenium']['baseUrl']); $timeouts = new \PHPUnit_Extensions_Selenium2TestCase_Session_Timeouts($driver, $sessionApiUrl->descend('timeouts'), 60 * 1000); parent::__construct($driver, $sessionApiUrl, $baseUrl, $timeouts); }
private function postCommand($name, PHPUnit_Extensions_Selenium2TestCase_ElementCriteria $criteria) { $response = $this->driver->curl('POST', $this->url->addCommand($name), $criteria->getArrayCopy()); return $response->getValue(); }
public function __construct(PHPUnit_Extensions_Selenium2TestCase_URL $seleniumServerUrl, $timeout = 60) { parent::__construct($seleniumServerUrl, $timeout); $this->seleniumServerUrl = $seleniumServerUrl; $this->seleniumServerRequestsTimeout = $timeout; }
/** * @return string */ public function start() { if ($this->browserUrl == NULL) { throw new PHPUnit_Framework_Exception('setBrowserUrl() needs to be called before start().'); } if ($this->webDriverCapabilities !== NULL) { $seleniumServerUrl = PHPUnit_Extensions_Selenium2TestCase_URL::fromHostAndPort($this->host, $this->port); $driver = new PHPUnit_Extensions_Selenium2TestCase_Driver($seleniumServerUrl); $session = $driver->startSession($this->webDriverCapabilities, new PHPUnit_Extensions_Selenium2TestCase_URL($this->browserUrl)); $webDriverSessionId = $session->id(); $this->sessionId = $this->getString('getNewBrowserSession', array($this->browser, $this->browserUrl, '', "webdriver.remote.sessionid={$webDriverSessionId}")); $this->doCommand('setTimeout', array($this->seleniumTimeout * 1000)); } if (!isset($this->sessionId)) { $this->sessionId = $this->getString('getNewBrowserSession', array($this->browser, $this->browserUrl)); $this->doCommand('setTimeout', array($this->seleniumTimeout * 1000)); } return $this->sessionId; }