mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-19 16:25:38 +00:00
Bug 1494617 - [geckodriver] Fix evaluation of "desiredCapabilities" and "requiredCapabilities". r=ato
The refactoring of the webdriver crate to use Serde (bug 1396821) caused this regression. By instructing Serde to correctly rename both properties fixes it. Differential Revision: https://phabricator.services.mozilla.com/D7079 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
f9e73257fd
commit
421c63d12b
@ -517,9 +517,9 @@ impl CapabilitiesMatching for SpecNewSessionParameters {
|
||||
|
||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
||||
pub struct LegacyNewSessionParameters {
|
||||
#[serde(default = "Capabilities::default")]
|
||||
#[serde(rename = "desiredCapabilities", default = "Capabilities::default")]
|
||||
pub desired: Capabilities,
|
||||
#[serde(default = "Capabilities::default")]
|
||||
#[serde(rename = "requiredCapabilities", default = "Capabilities::default")]
|
||||
pub required: Capabilities,
|
||||
}
|
||||
|
||||
@ -635,7 +635,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_desired_only() {
|
||||
let json = r#"{"desired":{}}"#;
|
||||
let json = r#"{"desiredCapabilities":{}}"#;
|
||||
let data = LegacyNewSessionParameters {
|
||||
desired: Capabilities::new(),
|
||||
required: Capabilities::new(),
|
||||
@ -646,7 +646,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_required_only() {
|
||||
let json = r#"{"required":{}}"#;
|
||||
let json = r#"{"requiredCapabilities":{}}"#;
|
||||
let data = LegacyNewSessionParameters {
|
||||
desired: Capabilities::new(),
|
||||
required: Capabilities::new(),
|
||||
@ -657,21 +657,21 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_desired_null() {
|
||||
let json = r#"{"desired":null,"required":{}}"#;
|
||||
let json = r#"{"desiredCapabilities":null,"requiredCapabilities":{}}"#;
|
||||
|
||||
assert!(serde_json::from_str::<LegacyNewSessionParameters>(&json).is_err());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_required_null() {
|
||||
let json = r#"{"desired":{}, "required":null}"#;
|
||||
let json = r#"{"desiredCapabilities":{}, "requiredCapabilities":null}"#;
|
||||
|
||||
assert!(serde_json::from_str::<LegacyNewSessionParameters>(&json).is_err());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_both_empty() {
|
||||
let json = r#"{"desired":{},"required":{}}"#;
|
||||
let json = r#"{"desiredCapabilities":{},"requiredCapabilities":{}}"#;
|
||||
let data = LegacyNewSessionParameters {
|
||||
desired: Capabilities::new(),
|
||||
required: Capabilities::new(),
|
||||
@ -682,7 +682,10 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_json_spec_legacy_new_session_parameters_both_with_capabilities() {
|
||||
let json = r#"{"desired":{"foo":"bar"},"required":{"foo2":"bar2"}}"#;
|
||||
let json = r#"{
|
||||
"desiredCapabilities":{"foo":"bar"},
|
||||
"requiredCapabilities":{"foo2":"bar2"}
|
||||
}"#;
|
||||
let mut data = LegacyNewSessionParameters {
|
||||
desired: Capabilities::new(),
|
||||
required: Capabilities::new(),
|
||||
|
Loading…
Reference in New Issue
Block a user