aboutsummaryrefslogtreecommitdiffstats
path: root/components/webdriver_server/lib.rs
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2019-04-20 09:34:07 -0400
committerGitHub <noreply@github.com>2019-04-20 09:34:07 -0400
commit328244684a8b1f98d515d5f40655b9cf7347affd (patch)
tree0c0e166baedfde38fc0479f3216c7849c4d086f0 /components/webdriver_server/lib.rs
parent63b4455837a08fac47ed6589d3aa7e1929a17863 (diff)
parent18a90f04db545c091aec5f244b74953d04140253 (diff)
downloadservo-328244684a8b1f98d515d5f40655b9cf7347affd.tar.gz
servo-328244684a8b1f98d515d5f40655b9cf7347affd.zip
Auto merge of #23234 - Eijebong:webdriver, r=jdm
Update webdriver to 0.39 <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23234) <!-- Reviewable:end -->
Diffstat (limited to 'components/webdriver_server/lib.rs')
-rw-r--r--components/webdriver_server/lib.rs17
1 files changed, 10 insertions, 7 deletions
diff --git a/components/webdriver_server/lib.rs b/components/webdriver_server/lib.rs
index 293b364967c..ec79ca8d5c0 100644
--- a/components/webdriver_server/lib.rs
+++ b/components/webdriver_server/lib.rs
@@ -109,7 +109,7 @@ struct WebDriverSession {
/// Time to wait for injected scripts to run before interrupting them. A [`None`] value
/// specifies that the script should run indefinitely.
- script_timeout: u64,
+ script_timeout: Option<u64>,
/// Time to wait for a page to finish loading upon navigation.
load_timeout: u64,
@@ -129,7 +129,7 @@ impl WebDriverSession {
browsing_context_id: browsing_context_id,
top_level_browsing_context_id: top_level_browsing_context_id,
- script_timeout: 30_000,
+ script_timeout: Some(30_000),
load_timeout: 300_000,
implicit_wait_timeout: 0,
}
@@ -994,7 +994,7 @@ impl Handler {
.ok_or(WebDriverError::new(ErrorStatus::SessionNotCreated, ""))?;
if let Some(timeout) = parameters.script {
- session.script_timeout = timeout
+ session.script_timeout = timeout;
}
if let Some(timeout) = parameters.page_load {
session.load_timeout = timeout
@@ -1032,11 +1032,14 @@ impl Handler {
let func_body = &parameters.script;
let args_string = "window.webdriverCallback";
+ let timeout_script = if let Some(script_timeout) = self.session()?.script_timeout {
+ format!("setTimeout(webdriverTimeout, {});", script_timeout)
+ } else {
+ "".into()
+ };
let script = format!(
- "setTimeout(webdriverTimeout, {}); (function(callback) {{ {} }})({})",
- self.session()?.script_timeout,
- func_body,
- args_string
+ "{} (function(callback) {{ {} }})({})",
+ timeout_script, func_body, args_string
);
let (sender, receiver) = ipc::channel().unwrap();