Bug 1392368 - Improve edge case in-op tests for Set Window Rect. r?automatedtester
Marionette has issues with repositioning/resizing the window when one
of width/height/x/y is the rect's existing value. This is an edge case
it is worth testing for.
MozReview-Commit-ID: 7E46ly2lIiY
--- a/testing/web-platform/tests/webdriver/tests/set_window_rect.py
+++ b/testing/web-platform/tests/webdriver/tests/set_window_rect.py
@@ -453,29 +453,50 @@ def test_negative_x_y(session):
elif os == "windows_nt":
assert_success(response, {"x": -8,
"y": -8,
"width": original["width"],
"height": original["height"],
"state": original["state"]})
-def test_x_y_as_current(session):
- original = session.window.rect
+def test_move_to_same_position(session):
+ original_position = session.window.position
+ position = session.window.position = (int(original_position[0]), int(original_position[1]))
+ assert position == original_position
+
- # step 13
- response = set_window_rect(session, {"x": int(original["x"]),
- "y": int(original["y"])})
+def test_move_to_same_x(session):
+ original_x = session.window.position[0]
+ position = session.window.position = (int(original_x), 345)
+ assert position == (original_x, 345)
+
+
+def test_move_to_same_y(session):
+ original_y = session.window.position[1]
+ position = session.window.position = (456, int(original_y))
+ assert position == (456, original_y)
- # step 14
- assert_success(response, {"x": original["x"],
- "y": original["y"],
- "width": original["width"],
- "height": original["height"],
- "state": original["state"]})
+
+def test_resize_to_same_size(session):
+ original_size = session.window.size
+ size = session.window.size = (int(original_size[0]), int(original_size[1]))
+ assert size == original_size
+
+
+def test_resize_to_same_width(session):
+ original_width = session.window.size[0]
+ size = session.window.size = (int(original_width), 345)
+ assert size == (original_width, 345)
+
+
+def test_resize_to_same_height(session):
+ original_height = session.window.size[1]
+ size = session.window.size = (456, int(original_height))
+ assert size == (456, original_height)
def test_payload(session):
# step 14
response = set_window_rect(session, {"x": 400, "y": 400})
assert response.status == 200
assert isinstance(response.body["value"], dict)