649 Commits

Author SHA1 Message Date
Max Schmitt
cf70a01836
test: should serialize storageState with lone surrogates (#29089)
https://github.com/microsoft/playwright-dotnet/issues/2819
2024-01-29 19:22:33 +01:00
Dmitry Gozman
acc72c2663
fix(codegen): assertValue works with disabled input (#29205)
Also add tests for new codegen functionality.

Fixes #29161.
2024-01-27 14:54:22 -08:00
Yury Semikhatsky
32034728ad
test: request overrides and routeFromHar (#29200)
Test that modifications from `route.fallback()` apply to the requests
before reading from/writing to HAR.

Reference https://github.com/microsoft/playwright/issues/29190
2024-01-26 15:19:01 -08:00
Dmitry Gozman
f5de6e5538
feat(codegen): generate multiple selectors to choose from (#29154)
When possible, "pick locator" generates:
- default locator;
- locator without any text;
- locator without css `#id`.

Fixes #27875, fixes #5178.
2024-01-25 07:35:58 -08:00
Dmitry Gozman
bc83d7084c
fix(chromium): emulate navigator.userAgentData along with UA (#29159)
Fixes #28989, fixes #29139.
2024-01-25 07:34:11 -08:00
Pavel Feldman
cec2ff1772
chore: split cli processing into cli endpoint and program (#29131) 2024-01-23 15:22:09 -08:00
Dmitry Gozman
8e607d509f
fix(recorder): disallow external imports (#29129)
Previously, new `Recorder` instance was given an existing
`InjectedScript`. However, we built a separate source for
`InjectedScript` vs `Recorder`, and both bundles contain their own copy
of all helper modules, e.g. `roleUtils`.

This resulted in two copies of helper modules, which is troublesome for
any module-level globals like a top-level cache. Depending on whether
`Recorder` or `InjectedScript` called into the helper, they would access
the different value of a module global, which lead to bugs.

To prevent this, we force any external dependencies to be imported
through the `InjectedScript.utils`.
2024-01-23 11:29:40 -08:00
Yury Semikhatsky
b2de9bc865
fix: mock safari.pushNotification (#29107)
Fixes https://github.com/microsoft/playwright/issues/29032
2024-01-22 15:44:13 -08:00
Max Schmitt
e551506c9e
Revert "feat(codegen): add range input recording support (#28767)" (#29069) 2024-01-19 19:47:59 +01:00
Dmitry Gozman
d023829dd5
fix(locator parser): allow escaped quotes in the digest function (#29012)
This supports mixed quotes locators in JavaScript where we are not sure
what quote is the correct one, so we normalize to unescaped single quote
when comparing with the original.

Drive-by: we were allowing single quotes in Python, Java and .NET, but
these are actually not allowed.

Regressed in #27718.
Fixes #28630.
2024-01-16 16:06:02 -08:00
Dmitry Gozman
9b657b54fb
fix(launcher): unregister global process handlers when all browser are closed (#29011)
Otherwise, we forever block SIGTERM and SIGHUP by registering a handler
that does not do anything (due to no browsers to close) and prevents
default handler that exits from running.

Fixes #28091.
2024-01-16 14:41:26 -08:00
Dmitry Gozman
48317af1cc
feat(trace): preserve noscript when javascript is disabled (#28971)
Closes #27504, closes #27532.
2024-01-12 12:11:39 -08:00
Pavel Feldman
a0750b7854
chore: network panel polish (#28924) 2024-01-10 15:28:33 -08:00
Dmitry Gozman
3851d9b897
test: make sure asLocator works with has+hasText at the same time (#28937) 2024-01-10 12:42:55 -08:00
Max Schmitt
58fa4fce74
fix: use logger in default context with connectOverCDP (#28838)
Fixes https://github.com/microsoft/playwright/issues/28813
2024-01-03 19:49:47 +01:00
Rui Figueira
778828cc43
feat(codegen): add range input recording support (#28767) 2023-12-30 17:22:57 -08:00
Max Schmitt
576b3406e3
test: tree gardening (#28676)
Looks like massaging the signals test in
8ab0660d1b (diff-f9d332d27364a8a58e52f5d7ffc180df7581589565b62186757b21839aabf889)
didn't make it fully green.

As of today it fails on Darwin 13 which is version 22, so we should not
run into the first if.
2023-12-15 17:39:31 -08:00
Yury Semikhatsky
a1a4133152
chore: extract unroute behavior tests into a separate file (#28674)
Reference https://github.com/microsoft/playwright/issues/23781
2023-12-15 15:37:57 -08:00
Max Schmitt
39bdbbf029
test: codegen #28663 follow-up (#28673) 2023-12-15 12:05:13 -08:00
Max Schmitt
44c3ad5ceb
chore: make csharp library codegen more csharp like (#28663) 2023-12-15 10:24:26 -08:00
Yury Semikhatsky
9c845365f7
chore: revert TestProject.botName for this release (#28670)
This is essentially a revert of f88288d71dc78d829fe5f128afff71d1f2cae3ea

Reference https://github.com/microsoft/playwright/issues/27284
2023-12-15 09:48:34 -08:00
Yury Semikhatsky
d89837c58e
chore: revert noWaitForFinish option, page.close does not wait for ro… (#28658)
…ute handlers

Reference https://github.com/microsoft/playwright/issues/23781
2023-12-15 09:00:12 -08:00
Yury Semikhatsky
f28ceffa37
feat: page.unrouteAll and context.unrouteAll (#28635)
Reference https://github.com/microsoft/playwright/issues/23781
2023-12-14 13:48:17 -08:00
Yury Semikhatsky
66e056c306
fix: disable PaintHolding to be able to click in oopifs (#28604)
Fixes https://github.com/microsoft/playwright/issues/28023
2023-12-12 12:20:44 -08:00
Andrey Lushnikov
dd9028cfe2
test: fix browsercontext-basic offline test (#28558)
Since the last firefox roll, firefox now does internal redirect to the
error page when it's been forced into offline mode.
2023-12-08 15:26:24 -08:00
Max Schmitt
736c0efd43
chore: use more explicit awaits when returning in client (#28443) 2023-12-07 20:13:35 -08:00
Dmitry Gozman
d587435efa
feat(trace): show target point for raw mouse apis (#28459)
Fixes #27931.
2023-12-07 06:27:49 -08:00
Yury Semikhatsky
411abdb752
feat: add fileName option to blob reporter (#28525)
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-06 20:44:06 -08:00
Max Schmitt
2d2c270388
chore: mark outofprocess connection not as remote (#28156) 2023-12-06 17:58:19 -08:00
Max Schmitt
8ab0660d1b
test: skip webgl tests on macOS-arm64 (#28522)
Fixes https://github.com/microsoft/playwright/issues/28216.

Drive-by: adjust signals expectation.

---------

Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-12-06 13:52:49 -08:00
Yury Semikhatsky
74e51d334e
feat: wait for active route handlers on page/context close (#28414)
Reference https://github.com/microsoft/playwright/issues/23781
2023-12-04 16:19:05 -08:00
Max Schmitt
f44ef81af7
fix(snapshot): broken snapshot after use of setInputFiles (#28444) 2023-12-01 09:38:50 -08:00
Yury Semikhatsky
15a8ba5158
fix(route): correctly remove expired handlers (#28385)
* Check if handler is still in the route list before calling it
* Check if the handler is still in the list before removing it after
`times` expiration
2023-11-28 17:52:16 -08:00
Dmitry Gozman
11bf96fe98
test: unflake a few tests (#28205) 2023-11-16 16:31:42 -08:00
Max Schmitt
ff706ec8bd
test: skip Intl.ListFormat test on ubuntu20.04 (#28185)
It was failing across the Ubuntu 20.04 bots:


![image](https://github.com/microsoft/playwright/assets/17984549/3b80f04d-cae8-4288-8fd3-b94d9bf1ce03)

This is most likely because on Ubuntu 20 libicu-dev has version 66.1.
And according to

https://wksearch.azurewebsites.net/#path=%2Fhome%2Fjoe%2Fwebkit%2FSource%2FJavaScriptCore%2Fruntime%2FIntlListFormat.h&line=32
the ListFormatter requires 67 which is the case in Ubuntu 22 (70).
2023-11-16 20:39:32 +01:00
Max Schmitt
ee1e6cd72f
test: unskip service tests (#28170) 2023-11-16 20:14:55 +01:00
Yury Semikhatsky
85438edb97
test: Intl.ListFormat is working in playwright all browsers (#28178)
Fixes https://github.com/microsoft/playwright/issues/23978
2023-11-15 18:47:42 -08:00
Max Schmitt
7ffcb42551
test: fix 'exposeFunction should not leak' in video mode (#28169)
This is like how we do it with the other channel tests. In video mode we
produce artifacts so we need to add them to our expectation.
2023-11-15 21:48:47 +01:00
Max Schmitt
b66839b039
fix(exposeFunction): exposeFunction should not leak client side BindingCalls (#28163)
This should already make it a bit better. There is more going on tho.

https://github.com/microsoft/playwright/issues/28146
2023-11-15 17:15:25 +01:00
Dmitry Gozman
16aee8b5d0
fix(codegen): comment-out generated expects for library scripts (#28118)
- reverts "fix(codegen): generate expect import for library
(https://github.com/microsoft/playwright/pull/28107)";
- comments-out generated expects.
2023-11-13 16:56:27 -08:00
Max Schmitt
8b1c637c16
fix(codegen): generate expect import for library (#28107) 2023-11-13 21:54:30 +01:00
Dmitry Gozman
120f0228c5
feat(selector generator): try improving text candidate with heuristics (#28074)
- Drop number-like prefixes and/or suffixes.
- Trim long texts to a word boundary around 15-25 character.
2023-11-13 11:30:16 -08:00
Dmitry Gozman
7f10fe935a
test: add a test for concurrent hover (#28042)
References #27969.
2023-11-09 08:27:34 -08:00
Pavel Feldman
87787dcc7d
chore: allow click close the page w/o errors (#27994) 2023-11-06 15:13:41 -08:00
Dmitry Gozman
f401a482d2
fix(codegen): consume pointer events alongside mouse events (#27949)
Fixes #27926.
2023-11-03 13:41:51 -07:00
Pavel Feldman
817a130cdc
chore: dispose-based callback termination (#27911) 2023-11-01 16:36:39 -07:00
Max Schmitt
d983941447
test: locale/timeZone should affect Intl.DateTimeFormat() (#27898)
https://github.com/microsoft/playwright/issues/27802
2023-11-01 17:29:57 +01:00
Yury Semikhatsky
36c4c24f8a
fix: only convert input files for browser collocated with server (#27873)
Reference #27452
Fixes #27792
2023-11-01 08:40:12 -07:00
Max Schmitt
08685a654a
test: using ServiceWorker on localhost over HTTPS (#27863) 2023-10-31 10:28:57 +01:00
Yury Semikhatsky
c7b6a76437
fix(fetch): throw when methods are called on disposed context (#27868)
Fixes #27822
2023-10-30 15:23:12 -07:00