Skip to content

Commit e29f2c3

Browse files
lutienmoz-wptsync-bot
authored andcommitted
[wdspec] Add tests for "userContexts" argument for "browsingContext.setViewport" command.
Differential Revision: https://phabricator.services.mozilla.com/D240028 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1940952 gecko-commit: a296671729adb664ed35c7688fcfdf18dd52504a gecko-reviewers: webdriver-reviewers, jdescottes
1 parent f4af6d3 commit e29f2c3

File tree

6 files changed

+614
-1
lines changed

6 files changed

+614
-1
lines changed

Diff for: webdriver/tests/bidi/browsing_context/set_viewport/device_pixel_ratio.py

+9
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,15 @@ async def test_device_pixel_ratio_only(bidi_session, inline, new_tab, device_pix
2222
assert await get_device_pixel_ratio(bidi_session, new_tab) == device_pixel_ratio
2323
assert await get_viewport_dimensions(bidi_session, new_tab) == viewport
2424

25+
url = inline("<div>foo</div>", domain="alt")
26+
await bidi_session.browsing_context.navigate(
27+
context=new_tab["context"], url=url, wait="complete"
28+
)
29+
30+
# Make sure that overrides are applied after cross-origin navigation.
31+
assert await get_device_pixel_ratio(bidi_session, new_tab) == device_pixel_ratio
32+
assert await get_viewport_dimensions(bidi_session, new_tab) == viewport
33+
2534

2635
@pytest.mark.asyncio
2736
@pytest.mark.parametrize("device_pixel_ratio", [0.5, 2])

Diff for: webdriver/tests/bidi/browsing_context/set_viewport/invalid.py

+70-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
pytestmark = pytest.mark.asyncio
77

88

9-
@pytest.mark.parametrize("value", [None, False, 42, {}, []])
9+
@pytest.mark.parametrize("value", [False, 42, {}, []])
1010
async def test_params_context_invalid_type(bidi_session, value):
1111
with pytest.raises(error.InvalidArgumentException):
1212
await bidi_session.browsing_context.set_viewport(context=value, viewport={
@@ -89,3 +89,72 @@ async def test_params_devicePixelRatio_invalid_value(bidi_session, new_tab, devi
8989
device_pixel_ratio=device_pixel_ratio,
9090
viewport=None
9191
)
92+
93+
94+
@pytest.mark.parametrize("value", [True, "foo", 42, {}])
95+
async def test_params_user_contexts_invalid_type(bidi_session, value):
96+
with pytest.raises(error.InvalidArgumentException):
97+
await bidi_session.browsing_context.set_viewport(
98+
user_contexts=value,
99+
viewport={
100+
"width": 100,
101+
"height": 200,
102+
}
103+
)
104+
105+
106+
async def test_params_user_contexts_empty_list(bidi_session):
107+
with pytest.raises(error.InvalidArgumentException):
108+
await bidi_session.browsing_context.set_viewport(
109+
user_contexts=[],
110+
viewport={
111+
"width": 100,
112+
"height": 200,
113+
}
114+
)
115+
116+
117+
@pytest.mark.parametrize("value", [None, False, 42, {}, []])
118+
async def test_params_user_contexts_entry_invalid_type(bidi_session, value):
119+
with pytest.raises(error.InvalidArgumentException):
120+
await bidi_session.browsing_context.set_viewport(
121+
user_contexts=[value],
122+
viewport={
123+
"width": 100,
124+
"height": 200,
125+
}
126+
)
127+
128+
129+
@pytest.mark.parametrize("value", ["", "somestring"])
130+
async def test_params_user_contexts_entry_invalid_value(bidi_session, value):
131+
with pytest.raises(error.NoSuchUserContextException):
132+
await bidi_session.browsing_context.set_viewport(
133+
user_contexts=[value],
134+
viewport={
135+
"width": 100,
136+
"height": 200,
137+
}
138+
)
139+
140+
141+
async def test_params_both_user_contexts_and_context(bidi_session, top_context):
142+
with pytest.raises(error.InvalidArgumentException):
143+
await bidi_session.browsing_context.set_viewport(
144+
context=top_context["context"],
145+
user_contexts=["default"],
146+
viewport={
147+
"width": 100,
148+
"height": 200,
149+
}
150+
)
151+
152+
153+
async def test_params_no_user_contexts_and_context(bidi_session):
154+
with pytest.raises(error.InvalidArgumentException):
155+
await bidi_session.browsing_context.set_viewport(
156+
viewport={
157+
"width": 100,
158+
"height": 200,
159+
}
160+
)

0 commit comments

Comments
 (0)