Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mozilla/geckodriver.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Tolfsen <ato@mozilla.com>2017-04-05 15:35:27 +0300
committerjgraham <james@hoppipolla.co.uk>2017-04-07 16:26:58 +0300
commitc6cf7b9e2bc2d01bb20f9fb995ee29a892644d15 (patch)
tree3b82f6610576640812ff20807199e67bdb3e99e9
parent8f19dc4dac63da4153584a2a6974c26be9453ecc (diff)
marionette: remove capabilities field wrapping for NewSession
Remove one layer of wrapping inside the `capabilities' field when geckodriver sends the capabilities to Marionette. Prior to this patch, geckodriver would send the following JSON Object to Marionette's newSession command: {capabilities: {foo: 1, {desiredCapabilities: {foo: 1}}}} Following this patch, it sends: {foo: 1, {capabilities: {desiredCapabilities: {foo: 1}}}} In the future, the idea is to remove the capabilities object altogether and just send {foo: 1}
-rw-r--r--src/marionette.rs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/marionette.rs b/src/marionette.rs
index cb1ebb9..e04c672 100644
--- a/src/marionette.rs
+++ b/src/marionette.rs
@@ -832,17 +832,17 @@ impl MarionetteCommand {
let (opt_name, opt_parameters) = match msg.command {
NewSession(_) => {
let caps = capabilities.expect("Tried to create new session without processing capabilities");
+
let mut data = BTreeMap::new();
- data.insert("sessionId".to_string(), Json::Null);
- let mut capabilites = BTreeMap::new();
- for (key, value) in caps.iter() {
- capabilites.insert(key.to_string(), value.to_json());
+ for (k, v) in caps.iter() {
+ data.insert(k.to_string(), v.to_json());
}
- // Copy into a desiredCapabilities key for legacy compat.
- capabilites.insert("desiredCapabilities".to_string(),
- caps.to_json());
- data.insert("capabilities".to_string(),
- capabilites.to_json());
+
+ // duplicate in capabilities.desiredCapabilities for legacy compat
+ let mut legacy_caps = BTreeMap::new();
+ legacy_caps.insert("desiredCapabilities".to_string(), caps.to_json());
+ data.insert("capabilities".to_string(), legacy_caps.to_json());
+
(Some("newSession"), Some(Ok(data)))
},
DeleteSession => {