Commit 3d0a07f6 authored by Tatiana Buldina's avatar Tatiana Buldina Committed by Commit Bot

[ChromeDriver] Add processing of extension capabilities contained ":"

Bug: chromedriver:1997
Change-Id: Ic231f01e68cc141877d501b5aee6926bc48ac1ee
Reviewed-on: https://chromium-review.googlesource.com/c/1355172Reviewed-by: default avatarJohn Chen <johnchen@chromium.org>
Commit-Queue: Tatiana Buldina <buldina@chromium.org>
Cr-Commit-Position: refs/heads/master@{#612266}
parent 74916354
......@@ -756,8 +756,6 @@ Status Capabilities::Parse(const base::DictionaryValue& desired_caps,
parser_map["networkConnectionEnabled"] =
base::BindRepeating(&ParseBoolean, &network_emulation_enabled);
}
// goog:testName is set by some tests to help debugging, and is ignored.
parser_map["goog:testName"] = base::BindRepeating(&IgnoreCapability);
for (base::DictionaryValue::Iterator it(desired_caps); !it.IsAtEnd();
it.Advance()) {
......@@ -765,9 +763,10 @@ Status Capabilities::Parse(const base::DictionaryValue& desired_caps,
continue;
if (parser_map.find(it.key()) == parser_map.end()) {
// The specified capability is unrecognized. W3C spec requires us to
// return an error. In legacy mode, for backward compatibility reasons,
// return an error if capability does not contain ":".
// In legacy mode, for backward compatibility reasons,
// we ignore unrecognized capabilities.
if (w3c_compliant)
if (w3c_compliant && it.key().find(':') == std::string::npos)
return Status(kInvalidArgument, "unrecognized capability: " + it.key());
else
continue;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment