From 2339106410a76400553e471442e3481b4e698381 Mon Sep 17 00:00:00 2001 From: Stefano Pallozzi Date: Sun, 27 Nov 2016 17:23:00 +0100 Subject: [PATCH 1/2] Update session timeouts for page times I found these useful for me --- .../Selenium2TestCase/Session/Timeouts.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php b/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php index fb7cb63a..295ebacc 100644 --- a/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php +++ b/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php @@ -73,6 +73,22 @@ protected function initCommands() { $self = $this; return array( + /* + * https://www.w3.org/TR/webdriver/#dfn-table-of-session-timeouts section 7.5 + */ + 'pageLoadTimeout' => function ($milliseconds, $commandUrl) use ($self) { + $jsonParameters = array('type'=>'page load', 'ms' => $milliseconds); + return new PHPUnit_Extensions_Selenium2TestCase_ElementCommand_GenericPost($jsonParameters, $commandUrl->ascend()); + }, + 'scriptTimeout' => function ($milliseconds, $commandUrl) use ($self) { + $jsonParameters = array('type'=>'script', 'ms' => $milliseconds); + return new PHPUnit_Extensions_Selenium2TestCase_ElementCommand_GenericPost($jsonParameters, $commandUrl->ascend()); + }, + 'implicitWaitTimeout' => function ($milliseconds, $commandUrl) use ($self) { + $jsonParameters = array('type'=>'implicit', 'ms' => $milliseconds); + return new PHPUnit_Extensions_Selenium2TestCase_ElementCommand_GenericPost($jsonParameters, $commandUrl->ascend()); + }, + 'implicitWait' => function ($milliseconds, $commandUrl) use ($self) { $self->check($milliseconds); $self->setLastImplicitWaitValue($milliseconds); From 61fbabaed1034bf270e1d3f4e44bdbe33d69644a Mon Sep 17 00:00:00 2001 From: Stefano Pallozzi Date: Sun, 27 Nov 2016 20:16:39 +0100 Subject: [PATCH 2/2] Update Timeouts.php --- PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php b/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php index 295ebacc..8ab70549 100644 --- a/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php +++ b/PHPUnit/Extensions/Selenium2TestCase/Session/Timeouts.php @@ -54,6 +54,9 @@ * @since Class available since Release 1.2.4 * @method implicitWait(int $ms) Sets timeout when searching for elements * @method asyncScript(int $ms) Sets timeout for asynchronous scripts executed by Session::executeAsync() + * @method pageLoadTimeout(int $ms) + * @method scriptTimeout(int $ms) + * @method implicitWaitTimeout(int $ms) */ class PHPUnit_Extensions_Selenium2TestCase_Session_Timeouts extends PHPUnit_Extensions_Selenium2TestCase_CommandsHolder