Skip to content

chore: roll to 1.53.1 #2892

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 42 commits into from
Jun 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
fe34e0f
Started roll
agg23 Jun 16, 2025
1a85b74
In progress changes from v1.53.0 release
agg23 Jun 17, 2025
ba40171
Initial compiling roll to 1.53.0-alpha-2025-05-21
agg23 Jun 17, 2025
05ce9bc
Revert accidental removal of API wrapping
agg23 Jun 17, 2025
13d5bb5
More timeout handling
agg23 Jun 17, 2025
a78c02e
Fixed overeager timeout conversion in Page
agg23 Jun 18, 2025
a626c55
Switch to 2025-06-07 and fix cookies
agg23 Jun 18, 2025
5c82385
Bumped to 1.53.0-beta-1749221468000 due to selector bug
agg23 Jun 18, 2025
e9c491b
Fix launch_persistent_context deserialization
agg23 Jun 19, 2025
251c231
Remove superfluous BrowserContext addition
agg23 Jun 19, 2025
2bdd016
Update tracing tests to new log format
agg23 Jun 19, 2025
5ad2780
More timeout operation fixes
agg23 Jun 19, 2025
609274d
Fix HAR path interpretation
agg23 Jun 19, 2025
39da953
Fixed context options and video tests
agg23 Jun 19, 2025
bbdbfe3
Fix selector registration
agg23 Jun 20, 2025
d073877
Clean up HAR option serialization
agg23 Jun 20, 2025
7d76c32
Dummy logging for CI debugging
agg23 Jun 20, 2025
87dbb04
Add context logging in Selectors.register
agg23 Jun 20, 2025
3577f98
More logging
agg23 Jun 20, 2025
04643aa
Log browser context at start of failing test
agg23 Jun 20, 2025
3af6375
Log context close
agg23 Jun 20, 2025
88cc81e
Explicitly close contexts in sync tests that were missing it
agg23 Jun 20, 2025
a3b1157
Logging all contexts when closing one
agg23 Jun 20, 2025
aac337b
More selector context logging
agg23 Jun 20, 2025
2a62bcd
Switch context collections to sets due to duplicate events
agg23 Jun 20, 2025
3e42fbd
Clean up debug information
agg23 Jun 20, 2025
2c3f2c6
Fix strange Literal import
agg23 Jun 20, 2025
e676ccb
Regenerate APIs
agg23 Jun 20, 2025
80a86c7
Remove accidental print statements
agg23 Jun 20, 2025
477e78b
Minor PR cleanup
agg23 Jun 23, 2025
576871d
Normalized timeout setting
agg23 Jun 23, 2025
1f240e4
Remove unused method
agg23 Jun 23, 2025
9dc4609
Proper assertion titles
agg23 Jun 23, 2025
4c7519c
Add missing assertion tests
agg23 Jun 23, 2025
4eeeaeb
Double click action title
agg23 Jun 23, 2025
7ed6587
Roll to 1.53.1
agg23 Jun 23, 2025
f52748a
viewportSizeChanged event from #35994
agg23 Jun 23, 2025
4eb72f6
Add missing new_page() title
agg23 Jun 23, 2025
e4a4a3c
Fix extra self in _click() inner method
agg23 Jun 24, 2025
587355e
snake_case fix
agg23 Jun 24, 2025
b3e5199
Add missing `_browser_type` instance variable
agg23 Jun 24, 2025
8f9d4c3
Add browser_type assertions
agg23 Jun 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ Playwright is a Python library to automate [Chromium](https://www.chromium.org/H

| | Linux | macOS | Windows |
| :--- | :---: | :---: | :---: |
| Chromium <!-- GEN:chromium-version -->136.0.7103.25<!-- GEN:stop --> ||||
| WebKit <!-- GEN:webkit-version -->18.4<!-- GEN:stop --> ||||
| Firefox <!-- GEN:firefox-version -->137.0<!-- GEN:stop --> ||||
| Chromium <!-- GEN:chromium-version -->138.0.7204.23<!-- GEN:stop --> ||||
| WebKit <!-- GEN:webkit-version -->18.5<!-- GEN:stop --> ||||
| Firefox <!-- GEN:firefox-version -->139.0<!-- GEN:stop --> ||||

## Documentation

Expand Down
35 changes: 34 additions & 1 deletion playwright/_impl/_assertions.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ async def _expect_impl(
expect_options: FrameExpectOptions,
expected: Any,
message: str,
title: str = None,
) -> None:
__tracebackhide__ = True
expect_options["isNot"] = self._is_not
Expand All @@ -60,7 +61,7 @@ async def _expect_impl(
message = message.replace("expected to", "expected not to")
if "useInnerText" in expect_options and expect_options["useInnerText"] is None:
del expect_options["useInnerText"]
result = await self._actual_locator._expect(expression, expect_options)
result = await self._actual_locator._expect(expression, expect_options, title)
if result["matches"] == self._is_not:
actual = result.get("received")
if self._custom_message:
Expand Down Expand Up @@ -105,6 +106,7 @@ async def to_have_title(
FrameExpectOptions(expectedText=expected_values, timeout=timeout),
titleOrRegExp,
"Page title expected to be",
'Expect "to_have_title"',
)

async def not_to_have_title(
Expand All @@ -129,6 +131,7 @@ async def to_have_url(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
urlOrRegExp,
"Page URL expected to be",
'Expect "to_have_url"',
)

async def not_to_have_url(
Expand Down Expand Up @@ -190,6 +193,7 @@ async def to_contain_text(
),
expected,
"Locator expected to contain text",
'Expect "to_contain_text"',
)
else:
expected_text = to_expected_text_values(
Expand All @@ -207,6 +211,7 @@ async def to_contain_text(
),
expected,
"Locator expected to contain text",
'Expect "to_contain_text"',
)

async def not_to_contain_text(
Expand Down Expand Up @@ -241,6 +246,7 @@ async def to_have_attribute(
),
value,
"Locator expected to have attribute",
'Expect "to_have_attribute"',
)

async def not_to_have_attribute(
Expand Down Expand Up @@ -276,6 +282,7 @@ async def to_have_class(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
expected,
"Locator expected to have class",
'Expect "to_have_class"',
)
else:
expected_text = to_expected_text_values([expected])
Expand All @@ -284,6 +291,7 @@ async def to_have_class(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
expected,
"Locator expected to have class",
'Expect "to_have_class"',
)

async def not_to_have_class(
Expand Down Expand Up @@ -318,6 +326,7 @@ async def to_contain_class(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
expected,
"Locator expected to contain class names",
'Expect "to_contain_class"',
)
else:
expected_text = to_expected_text_values([expected])
Expand All @@ -326,6 +335,7 @@ async def to_contain_class(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
expected,
"Locator expected to contain class",
'Expect "to_contain_class"',
)

async def not_to_contain_class(
Expand All @@ -350,6 +360,7 @@ async def to_have_count(
FrameExpectOptions(expectedNumber=count, timeout=timeout),
count,
"Locator expected to have count",
'Expect "to_have_count"',
)

async def not_to_have_count(
Expand All @@ -375,6 +386,7 @@ async def to_have_css(
),
value,
"Locator expected to have CSS",
'Expect "to_have_css"',
)

async def not_to_have_css(
Expand All @@ -398,6 +410,7 @@ async def to_have_id(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
id,
"Locator expected to have ID",
'Expect "to_have_id"',
)

async def not_to_have_id(
Expand All @@ -422,6 +435,7 @@ async def to_have_js_property(
),
value,
"Locator expected to have JS Property",
'Expect "to_have_property"',
)

async def not_to_have_js_property(
Expand All @@ -445,6 +459,7 @@ async def to_have_value(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
value,
"Locator expected to have Value",
'Expect "to_have_value"',
)

async def not_to_have_value(
Expand All @@ -469,6 +484,7 @@ async def to_have_values(
FrameExpectOptions(expectedText=expected_text, timeout=timeout),
values,
"Locator expected to have Values",
'Expect "to_have_values"',
)

async def not_to_have_values(
Expand Down Expand Up @@ -512,6 +528,7 @@ async def to_have_text(
),
expected,
"Locator expected to have text",
'Expect "to_have_text"',
)
else:
expected_text = to_expected_text_values(
Expand All @@ -526,6 +543,7 @@ async def to_have_text(
),
expected,
"Locator expected to have text",
'Expect "to_have_text"',
)

async def not_to_have_text(
Expand Down Expand Up @@ -558,6 +576,7 @@ async def to_be_attached(
FrameExpectOptions(timeout=timeout),
None,
f"Locator expected to be {attached_string}",
'Expect "to_be_attached"',
)

async def to_be_checked(
Expand All @@ -582,6 +601,7 @@ async def to_be_checked(
FrameExpectOptions(timeout=timeout, expectedValue=expected_value),
None,
f"Locator expected to be {checked_string}",
'Expect "to_be_checked"',
)

async def not_to_be_attached(
Expand Down Expand Up @@ -609,6 +629,7 @@ async def to_be_disabled(
FrameExpectOptions(timeout=timeout),
None,
"Locator expected to be disabled",
'Expect "to_be_disabled"',
)

async def not_to_be_disabled(
Expand All @@ -632,6 +653,7 @@ async def to_be_editable(
FrameExpectOptions(timeout=timeout),
None,
f"Locator expected to be {editable_string}",
'Expect "to_be_editable"',
)

async def not_to_be_editable(
Expand All @@ -652,6 +674,7 @@ async def to_be_empty(
FrameExpectOptions(timeout=timeout),
None,
"Locator expected to be empty",
'Expect "to_be_empty"',
)

async def not_to_be_empty(
Expand All @@ -675,6 +698,7 @@ async def to_be_enabled(
FrameExpectOptions(timeout=timeout),
None,
f"Locator expected to be {enabled_string}",
'Expect "to_be_enabled"',
)

async def not_to_be_enabled(
Expand All @@ -695,6 +719,7 @@ async def to_be_hidden(
FrameExpectOptions(timeout=timeout),
None,
"Locator expected to be hidden",
'Expect "to_be_hidden"',
)

async def not_to_be_hidden(
Expand All @@ -718,6 +743,7 @@ async def to_be_visible(
FrameExpectOptions(timeout=timeout),
None,
f"Locator expected to be {visible_string}",
'Expect "to_be_visible"',
)

async def not_to_be_visible(
Expand All @@ -738,6 +764,7 @@ async def to_be_focused(
FrameExpectOptions(timeout=timeout),
None,
"Locator expected to be focused",
'Expect "to_be_focused"',
)

async def not_to_be_focused(
Expand All @@ -758,6 +785,7 @@ async def to_be_in_viewport(
FrameExpectOptions(timeout=timeout, expectedNumber=ratio),
None,
"Locator expected to be in viewport",
'Expect "to_be_in_viewport"',
)

async def not_to_be_in_viewport(
Expand All @@ -781,6 +809,7 @@ async def to_have_accessible_description(
FrameExpectOptions(expectedText=expected_values, timeout=timeout),
None,
"Locator expected to have accessible description",
'Expect "to_have_accessible_description"',
)

async def not_to_have_accessible_description(
Expand All @@ -807,6 +836,7 @@ async def to_have_accessible_name(
FrameExpectOptions(expectedText=expected_values, timeout=timeout),
None,
"Locator expected to have accessible name",
'Expect "to_have_accessible_name"',
)

async def not_to_have_accessible_name(
Expand All @@ -828,6 +858,7 @@ async def to_have_role(self, role: AriaRole, timeout: float = None) -> None:
FrameExpectOptions(expectedText=expected_values, timeout=timeout),
None,
"Locator expected to have accessible role",
'Expect "to_have_role"',
)

async def to_have_accessible_error_message(
Expand All @@ -845,6 +876,7 @@ async def to_have_accessible_error_message(
FrameExpectOptions(expectedText=expected_values, timeout=timeout),
None,
"Locator expected to have accessible error message",
'Expect "to_have_accessible_error_message"',
)

async def not_to_have_accessible_error_message(
Expand All @@ -871,6 +903,7 @@ async def to_match_aria_snapshot(
FrameExpectOptions(expectedValue=expected, timeout=timeout),
expected,
"Locator expected to match Aria snapshot",
'Expect "to_match_aria_snapshot"',
)

async def not_to_match_aria_snapshot(
Expand Down
Loading
Loading