Skip to content

Commit

Permalink
Merge r227412 - WebDriver: matched capabilities should include setWin…
Browse files Browse the repository at this point in the history
…dowRect

https://bugs.webkit.org/show_bug.cgi?id=180411

Reviewed by Carlos Alberto Lopez Perez.

Source/WebDriver:

Handle setWindowRect in capabilities. It's always true for GTK and false for WPE.

* Capabilities.h:
* WebDriverService.cpp:
(WebDriver::WebDriverService::parseCapabilities const):
(WebDriver::WebDriverService::matchCapabilities const):
(WebDriver::WebDriverService::newSession):
* gtk/WebDriverServiceGtk.cpp:
(WebDriver::WebDriverService::platformCapabilities):
* wpe/WebDriverServiceWPE.cpp:
(WebDriver::WebDriverService::platformCapabilities):

WebDriverTests:

Change the bug number of test imported/w3c/webdriver/tests/sessions/new_session/response.py::test_resp_data,
since now it's failing due to missing timeouts value.

* TestExpectations.json:
  • Loading branch information
carlosgcampos committed Jan 24, 2018
1 parent ba52408 commit 5917c23
Show file tree
Hide file tree
Showing 7 changed files with 42 additions and 1 deletion.
1 change: 1 addition & 0 deletions Source/WebDriver/Capabilities.h
Expand Up @@ -57,6 +57,7 @@ struct Capabilities {
std::optional<String> browserVersion;
std::optional<String> platformName;
std::optional<bool> acceptInsecureCerts;
std::optional<bool> setWindowRect;
std::optional<Timeouts> timeouts;
std::optional<PageLoadStrategy> pageLoadStrategy;
std::optional<UnhandledPromptBehavior> unhandledPromptBehavior;
Expand Down
19 changes: 19 additions & 0 deletions Source/WebDriver/ChangeLog
@@ -1,3 +1,22 @@
2018-01-23 Carlos Garcia Campos <cgarcia@igalia.com>

WebDriver: matched capabilities should include setWindowRect
https://bugs.webkit.org/show_bug.cgi?id=180411

Reviewed by Carlos Alberto Lopez Perez.

Handle setWindowRect in capabilities. It's always true for GTK and false for WPE.

* Capabilities.h:
* WebDriverService.cpp:
(WebDriver::WebDriverService::parseCapabilities const):
(WebDriver::WebDriverService::matchCapabilities const):
(WebDriver::WebDriverService::newSession):
* gtk/WebDriverServiceGtk.cpp:
(WebDriver::WebDriverService::platformCapabilities):
* wpe/WebDriverServiceWPE.cpp:
(WebDriver::WebDriverService::platformCapabilities):

2018-01-23 Carlos Garcia Campos <cgarcia@igalia.com>

WebDriver: test imported/selenium/py/test/selenium/webdriver/common/api_example_tests.py::testChangeWindowSize fails
Expand Down
7 changes: 7 additions & 0 deletions Source/WebDriver/WebDriverService.cpp
Expand Up @@ -346,6 +346,9 @@ void WebDriverService::parseCapabilities(const JSON::Object& matchedCapabilities
bool acceptInsecureCerts;
if (matchedCapabilities.getBoolean(ASCIILiteral("acceptInsecureCerts"), acceptInsecureCerts))
capabilities.acceptInsecureCerts = acceptInsecureCerts;
bool setWindowRect;
if (matchedCapabilities.getBoolean(ASCIILiteral("setWindowRect"), setWindowRect))
capabilities.setWindowRect = setWindowRect;
String browserName;
if (matchedCapabilities.getString(ASCIILiteral("browserName"), browserName))
capabilities.browserName = browserName;
Expand Down Expand Up @@ -466,6 +469,8 @@ RefPtr<JSON::Object> WebDriverService::matchCapabilities(const JSON::Object& mer
matchedCapabilities->setString(ASCIILiteral("platformName"), platformCapabilities.platformName.value());
if (platformCapabilities.acceptInsecureCerts)
matchedCapabilities->setBoolean(ASCIILiteral("acceptInsecureCerts"), platformCapabilities.acceptInsecureCerts.value());
if (platformCapabilities.setWindowRect)
matchedCapabilities->setBoolean(ASCIILiteral("setWindowRect"), platformCapabilities.setWindowRect.value());

auto end = mergedCapabilities.end();
for (auto it = mergedCapabilities.begin(); it != end; ++it) {
Expand Down Expand Up @@ -665,6 +670,8 @@ void WebDriverService::newSession(RefPtr<JSON::Object>&& parameters, Function<vo
break;
}
}
if (capabilities.setWindowRect)
capabilitiesObject->setBoolean(ASCIILiteral("setWindowRect"), capabilities.setWindowRect.value());
if (capabilities.unhandledPromptBehavior) {
switch (capabilities.unhandledPromptBehavior.value()) {
case UnhandledPromptBehavior::Dismiss:
Expand Down
1 change: 1 addition & 0 deletions Source/WebDriver/gtk/WebDriverServiceGtk.cpp
Expand Up @@ -37,6 +37,7 @@ Capabilities WebDriverService::platformCapabilities()
Capabilities capabilities;
capabilities.platformName = String("linux");
capabilities.acceptInsecureCerts = false;
capabilities.setWindowRect = true;
return capabilities;
}

Expand Down
1 change: 1 addition & 0 deletions Source/WebDriver/wpe/WebDriverServiceWPE.cpp
Expand Up @@ -37,6 +37,7 @@ Capabilities WebDriverService::platformCapabilities()
Capabilities capabilities;
capabilities.platformName = String("linux");
capabilities.acceptInsecureCerts = false;
capabilities.setWindowRect = false;
return capabilities;
}

Expand Down
12 changes: 12 additions & 0 deletions WebDriverTests/ChangeLog
@@ -1,3 +1,15 @@
2018-01-23 Carlos Garcia Campos <cgarcia@igalia.com>

WebDriver: matched capabilities should include setWindowRect
https://bugs.webkit.org/show_bug.cgi?id=180411

Reviewed by Carlos Alberto Lopez Perez.

Change the bug number of test imported/w3c/webdriver/tests/sessions/new_session/response.py::test_resp_data,
since now it's failing due to missing timeouts value.

* TestExpectations.json:

2018-01-23 Carlos Garcia Campos <cgarcia@igalia.com>

WebDriver: test imported/selenium/py/test/selenium/webdriver/common/api_example_tests.py::testChangeWindowSize fails
Expand Down
2 changes: 1 addition & 1 deletion WebDriverTests/TestExpectations.json
Expand Up @@ -335,7 +335,7 @@
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/180408"}}
},
"test_resp_data": {
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/180411"}}
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/180412"}}
},
"test_timeouts": {
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/180412"}}
Expand Down

0 comments on commit 5917c23

Please sign in to comment.