--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -138528,16 +138528,22 @@
{}
]
],
"webdriver/navigation.py": [
[
"/webdriver/navigation.py",
{}
]
+ ],
+ "webdriver/window_maximizing.py": [
+ [
+ "/webdriver/window_maximizing.py",
+ {}
+ ]
]
}
},
"paths": {
"./.codecov.yml": [
"e2322808739a5977e90896b4755cfc20f4ab2046",
"support"
],
@@ -192609,17 +192615,17 @@
"3fabcfa40caf9c66bc74bcd83663eddb0f385051",
"support"
],
"interfaces/webrtc-pc.idl": [
"4f94c4236168ed722f71d81bd957e0da72b29c71",
"support"
],
"intersection-observer/bounding-box.html": [
- "0deef078368d11e2a55ef0988d50f548587a4c57",
+ "a3ac1b70ba26234b7c968055171e652f3a8a14d8",
"testharness"
],
"intersection-observer/client-rect.html": [
"acec9a4f59ebee1840950cf766a45676490eef84",
"testharness"
],
"intersection-observer/containing-block.html": [
"8bdf6fa6a3ee09130981bf83728aa9f61a6ebc54",
@@ -213577,17 +213583,17 @@
"0ddb4f1cf84729ed673295719ec58a3e5d600a12",
"support"
],
"service-workers/service-worker/resources/bytecheck-worker-imported-script.py": [
"772d029d4efbe22f62f3473d4afe9e501a792571",
"support"
],
"service-workers/service-worker/resources/bytecheck-worker.py": [
- "2693790af1dcd812bc3741db7fa355e23eef0e01",
+ "66ec51461bc4da5862a9c4d06a9468a8dbe1d134",
"support"
],
"service-workers/service-worker/resources/claim-with-redirect-iframe.html": [
"fdc472f4e9a591f0b471174b2aa1783107731f49",
"support"
],
"service-workers/service-worker/resources/claim-worker.js": [
"e779a28c42928ff10219073171c1216c6623b4d4",
@@ -214373,17 +214379,17 @@
"14d79d1008193c96f0eadaf3e47ef321a429b905",
"testharness"
],
"service-workers/service-worker/update-after-oneday.https.html": [
"7c8c6c3edca83d54f1838eccf3afb0b1223c7a44",
"testharness"
],
"service-workers/service-worker/update-bytecheck.https.html": [
- "6562348b198124822297c6b622c3e63870427672",
+ "ab13a5489f964de56db2fe25c5895a8a55ab7d88",
"testharness"
],
"service-workers/service-worker/update-recovery.https.html": [
"aac5705d6844e4a33200418504adb57053a45be2",
"testharness"
],
"service-workers/service-worker/update.https.html": [
"73c129838eda3c18365f384b8b0a5c32b5e9cf6d",
@@ -220601,17 +220607,17 @@
"a5a1cbce9f0ef66c19065cb8ba761c8fd27cc4ac",
"support"
],
"webdriver/conftest.py": [
"6217bd14a1ec72f00d5a6a9014a9dc991e4289db",
"support"
],
"webdriver/contexts.py": [
- "302a1a0cb246aef74f2c1d961a210d9de7e366c5",
+ "ae157de034d7887d20f2d14fe880779bb1cc1b41",
"wdspec"
],
"webdriver/interface.html": [
"d783d0dd370f58b264ef238d8da5cd8601dc3c7f",
"testharness"
],
"webdriver/navigation.py": [
"dd2f52a3a77497ce8785e698f9ab462390ed0d57",
@@ -220636,16 +220642,20 @@
"webdriver/support/inline.py": [
"bc85126e5637145e81f27d037f3a9090747130c8",
"support"
],
"webdriver/support/merge_dictionaries.py": [
"84a6d3c6f8f4afded0f21264bbaeebec38a7f827",
"support"
],
+ "webdriver/window_maximizing.py": [
+ "87faa1445e9923ccf736bda21f32e52792c35013",
+ "wdspec"
+ ],
"webgl/OWNERS": [
"f8e0703fe2cc88edd21ef2c94fcb2e1a8889f5ae",
"support"
],
"webgl/bufferSubData.html": [
"526612470551a0eb157b310c587d50080087808d",
"testharness"
],
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/webdriver/window_maximizing.py
@@ -0,0 +1,38 @@
+from support.inline import inline
+from support.asserts import assert_error, assert_success
+
+alert_doc = inline("<script>window.alert()</script>")
+
+# 10.7.3 Maximize Window
+def test_maximize_no_browsing_context(session, create_window):
+ # Step 1
+ session.window_handle = create_window()
+ session.close()
+ result = session.transport.send("POST", "session/%s/window/maximize" % session.session_id)
+
+ assert_error(result, "no such window")
+
+
+def test_maximize_rect_alert_prompt(session):
+ # Step 2
+ session.url = alert_doc
+
+ result = session.transport.send("POST", "session/%s/window/maximize" % session.session_id)
+
+ assert_error(result, "unexpected alert open")
+
+
+def test_maximize_payload(session):
+ # step 5
+ result = session.transport.send("POST", "session/%s/window/maximize" % session.session_id)
+
+ assert result.status == 200
+ assert isinstance(result.body["value"], dict)
+ assert "width" in result.body["value"]
+ assert "height" in result.body["value"]
+ assert "x" in result.body["value"]
+ assert "y" in result.body["value"]
+ assert isinstance(result.body["value"]["width"], float)
+ assert isinstance(result.body["value"]["height"], float)
+ assert isinstance(result.body["value"]["x"], float)
+ assert isinstance(result.body["value"]["y"], float)