Codeception / module-webdriver

WebDriver module for Codeception

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Default timeouts are set to zero, instead of 30 seconds

vl-lapikov opened this issue · comments

Hey Guys,

Here https://codeception.com/docs/modules/WebDriver Codeception claims, that default timeouts (connection_timeout and request_timeout) are 30 seconds. Because of the bug, I think they are set to 0 now, which makes curl_exec() later to wait indefinitely.

Check this code https://github.com/Codeception/module-webdriver/blob/master/src/Codeception/Module/WebDriver.php#L362

$this->connectionTimeoutInMs = $this->config['connection_timeout'] * 1000;
$this->requestTimeoutInMs = $this->config['request_timeout'] * 1000;

by default both values are null, but multipling null * 1000 results in 0, not null. Later here https://github.com/php-webdriver/php-webdriver/blob/main/lib/Remote/RemoteWebDriver.php#L101 it is strictly compared with null, but since the value is 0 it passes the condition and sets timeout to 0 which makes curl to wait indefinitely.

commented

I think you are right. Can you make a test and a fix?

Yeah, I'll work on it.