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
Max Schmitt
59b8cf008e
fix(codegen): don't generate page.frame() calls anymore ( #27820 )
...
Fixes https://github.com/microsoft/playwright/issues/27650
2023-10-30 21:56:45 +01:00
Dmitry Gozman
f620828818
chore: allow PW_VERSION_OVERRIDE in tests ( #27861 )
2023-10-30 11:04:35 -07:00
Pavel Feldman
4d82d6801f
chore: render full pathname in network panel ( #27843 )
...
Fixes #27618
2023-10-27 14:14:24 -07:00
Dmitry Gozman
88f30d1ce2
feat: support firefoxUserPrefs in launchPersistentContext ( #27840 )
...
Fixes #27773 .
2023-10-27 09:24:41 -07:00
Pavel Feldman
ff206bd9c1
chore: render time in the trace viewer log ( #27825 )
2023-10-26 14:45:15 -07:00
Max Schmitt
5f0d91a42c
test: add test for multipart keeping order ( #27787 )
...
Test for https://github.com/microsoft/playwright/issues/27720
2023-10-25 19:33:00 +02:00
Pavel Feldman
7de0ccd36e
chore: support await using for close() and dispose() ( #27766 )
...
This change assumes that the user has Node 18 with Symbol.dispose
available.
Fixes https://github.com/microsoft/playwright/issues/27141
2023-10-24 12:25:53 -07:00
Pavel Feldman
5752a28f87
chore: make tests strict (1) ( #27731 )
2023-10-23 09:31:30 -07:00
Max Schmitt
f48861ddee
fix(inspector): highlight xpath/css locators without engine prefix ( #27742 )
...
Motivation: As of today when a user inspects a Locator which is a xpath,
it won't work if the user has not prefixed it with `xpath=` because we
internally compare the given with the generated locator.
Works: `locator('xpath=//div[contains(@class, "foo")]')`
Does not work: `locator('//div[contains(@class, "foo")]')`
Relates
https://github.com/microsoft/playwright/issues/27707#issue-1952360264
Fixes
https://github.com/microsoft/playwright-dotnet/issues/2718#issuecomment-1771073816
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-10-23 18:23:28 +02:00
Max Schmitt
6d7d37061d
fix(recorder): Locator picker had wrong initial language in language bindings ( #27706 )
...
**Description**
When a language port was using Inspector with the "Locator Picker"
feature, it only recognised JavaScript as a language by default. As a
workaround the user was able to click record, interact with the page and
then the language would be correctly used -> csharp e.g. would work in
the "Locator Picker".
**Why?**
Our language bindings are setting `PW_LANG_NAME=<sdkLanguage>` env var
-> good. Our recorder harness also uses this along its internal state
here:
b9b289b641/packages/playwright-core/src/server/recorder.ts (L369)
and it gets used here (no parameter means: we use the first language
aka. primary language):
b9b289b641/packages/playwright-core/src/server/recorder.ts (L95)
The only issue is that the Inspector frontend in the beginning does not
know which language it should use and pass over to the server side, it
then falls back to JavaScript.
**Proposed fix**
Instead of passing it over from the frontend to the server side, we just
always use it from the server side, aka. "currentLanguage". When the
user switches languages in the frontend, "currentLanguage" already gets
updated properly via the "fileChanged" event.
https://github.com/microsoft/playwright-dotnet/issues/2718
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-10-22 13:02:14 +02:00
Dmitry Gozman
d1d5fc67dc
fix(recorder): show action point in main frame only ( #27719 )
2023-10-20 20:58:09 -07:00
Dmitry Gozman
6fe31ab52c
feat: support alternative quotes in js parseLocator() ( #27718 )
...
Fixes #27707 .
2023-10-20 08:42:29 -07:00
Yury Semikhatsky
bd58c0d5d2
fix: preserve lastModified timestamp in setInputFiles ( #27671 )
...
Fixes #27452
2023-10-18 14:05:09 -07:00
Playwright Service
5262e5ab35
feat(chromium-tip-of-tree): roll to r1159 ( #27605 )
2023-10-17 22:41:23 +02:00
Pavel Feldman
d4296dbff4
chore: break dowload.path() to throw ( #27662 )
2023-10-17 12:56:56 -07:00
Max Schmitt
0a49c3dbb9
chore: bump @babel dependencies ( #27632 )
...
This fixes:
```
Run npm audit --omit dev
# npm audit report
@babel/traverse <7.23.2
Severity: critical
Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code - https://github.com/advisories/GHSA-[6](https://github.com/microsoft/playwright/actions/runs/6535308689/job/17744452034?pr=27631#step:10:7)[7](https://github.com/microsoft/playwright/actions/runs/6535308689/job/17744452034?pr=27631#step:10:8)hx-6x53-jw[9](https://github.com/microsoft/playwright/actions/runs/6535308689/job/17744452034?pr=27631#step:10:10)2
fix available via `npm audit fix`
node_modules/@babel/traverse
1 critical severity vulnerability
To address all issues, run:
npm audit fix
Error: Process completed with exit code 1.
```
2023-10-17 20:52:41 +02:00
Yury Semikhatsky
4e845e7b1d
fix(fetch): JSON.stringify on client ( #27644 )
...
Fixes https://github.com/microsoft/playwright/issues/27602
2023-10-16 16:33:49 -07:00
Dmitry Gozman
e8b4c03e54
fix(chromium): do not cancel downloads when intercepting ( #27638 )
...
Fixes #27575 .
2023-10-16 15:12:52 -07:00
Yury Semikhatsky
b2dc0d2fbd
test: unskip "should keep selection in multiple pages" ( #27611 )
...
https://github.com/microsoft/playwright/pull/27609 fixed the
functionality in WebKit.
Fixes https://github.com/microsoft/playwright/issues/27475
2023-10-16 09:47:05 -07:00
Dmitry Gozman
fc32ca676b
feat: check client version on the server ( #27585 )
2023-10-13 21:02:30 -07:00
Yury Semikhatsky
80c408023e
test: unflake "should fail without credentials" ( #27606 )
...
Speculative fix. The test marked as failed => we reuse the browser
without closing the context.
2023-10-13 14:15:12 -07:00
Yury Semikhatsky
d6adfee7c0
test: update expectation on windows for "should reject if launched br… ( #27603 )
...
…owser fails immediately"
The test has been failing on Windows since
f212fd1a83
2023-10-13 14:02:55 -07:00
Yury Semikhatsky
bc59565d77
fix(webkit): support clipboard.readText ( #27581 )
...
Reference #27475
2023-10-13 09:10:35 -07:00
Yury Semikhatsky
9d76c09ddb
test: preserve selection when switching pages ( #27578 )
...
Reference https://github.com/microsoft/playwright/issues/27475
2023-10-12 12:52:06 -07:00
Pavel Feldman
f212fd1a83
chore: unify target closed errors ( #27540 )
2023-10-12 11:05:34 -07:00
Dmitry Gozman
a5be8ce86a
test: unflake some more tests ( #27546 )
2023-10-11 10:34:11 -07:00
Dmitry Gozman
d05c865389
test: unflake a few tests ( #27519 )
2023-10-10 09:14:58 -07:00
Dmitry Gozman
40ba5ebc1d
test: unflake a launcher test in driver mode ( #27518 )
2023-10-09 14:52:05 -07:00
Dmitry Gozman
e8523abea5
test: mark some --headless=new tests as fixme ( #27516 )
2023-10-09 14:07:22 -07:00
Dmitry Gozman
0717b386f9
test: disable some failing tests ( #27463 )
2023-10-05 15:00:08 -07:00
Jim Hays
dcc8dcca73
Fix various typos ( Fixes #27396 ) ( #27391 )
...
Fixes https://github.com/microsoft/playwright/issues/27396
2023-10-04 19:56:42 -07:00
Pavel Feldman
13cca1db3d
test: add a test for cdp w/ trace ( #27410 )
...
Closes https://github.com/microsoft/playwright/issues/27409
2023-10-03 13:00:35 -07:00
Dmitry Gozman
55c4bb97af
chore: extract CDPSession on the server side, remove duplicate code ( #27349 )
...
This makes sure that protocol calls after target close are rejected
correctly.
2023-09-29 12:50:02 -07:00
Dmitry Gozman
81694b7401
test: unflake some tests ( #27354 )
2023-09-29 10:45:31 -07:00
Dmitry Gozman
c8143748e6
chore: remove Page._didDisconnect ( #27317 )
...
Instead of having `didClose` based on page creation/destruction and
`didDisconnect` based on session lifetime, we make session lifetime
being managed by the `CRPage`/`FFPage`/`WKPage` instead.
2023-09-27 14:09:56 -07:00
Pavel Feldman
20f20e9fba
chore: use stock image matcher in library tests ( #27319 )
2023-09-26 18:46:21 -07:00
Dmitry Gozman
9a5356f93b
fix(snapshot): invalidate style sheet upon CSSGroupingRule changes ( #27296 )
...
Previously, snapshotter listened to CSSStyleSheet modifications, but one
can also modify the list of rules inside CSSGroupingRule.
Fixes #27288 .
2023-09-25 14:34:17 -07:00
Dmitry Gozman
0f72ef0584
fix(streams): avoid leaking event listeners ( #27291 )
...
Fixes #26998 .
2023-09-25 10:59:14 -07:00
Yury Semikhatsky
0bc55fac91
test: unskip "should capture full viewport" ( #27233 )
...
This is fixed by
https://github.com/microsoft/playwright-browsers/pull/643
Fixes https://github.com/microsoft/playwright-browsers/issues/637
2023-09-21 11:20:18 -07:00
Dmitry Gozman
2af7d672ef
fix(tracing): bump trace version to V5, migrate V4 traces to consoleMessage.args ( #27162 )
...
This moves the fix in #27095 from `modernize` to `appendEvent`. The
reason is that `trace V4` is used both for older traces that do not have
`consoleMessage.args` and the new ones with `args`. Since we do not call
`modernize` for traces of the same version, the original fix does not
help in this case.
Fixes #27144 .
2023-09-19 16:21:09 -07:00
Yury Semikhatsky
88038f1b00
fix: do not throw from fetch when response has invalid cookie ( #27192 )
...
Cookie value is limited by 4096 characters in the browsers. If
setCookies failed we try setting each cookie individually just in case
only some of them are bad.
Fixes https://github.com/microsoft/playwright/issues/27165
2023-09-19 16:18:16 -07:00
Yury Semikhatsky
8964587d18
test: update webkit test expectations after last roll ( #27155 )
...
https://github.com/microsoft/playwright/issues/26992 was fixed by
https://github.com/microsoft/playwright-browsers/pull/635 .
Reference https://github.com/microsoft/playwright-browsers/issues/637
Fixes https://github.com/microsoft/playwright/issues/26992
2023-09-18 09:57:18 -07:00
Pavel Feldman
527d260cbf
chore: hide tracing calls from traces ( #27096 )
2023-09-15 12:55:49 -07:00
Andrey Lushnikov
a34030be80
browser(firefox): support relative paths for firefox videos ( #27099 )
...
Firefox protocol requires absolute paths for video recording.
Fixes https://github.com/microsoft/playwright/issues/27086
2023-09-15 10:26:20 -07:00
Dmitry Gozman
b3edf8e562
fix(har): handle invalid Expires/Max-Age ( #27098 )
...
Fixes #27073 .
2023-09-14 17:06:56 -07:00
Andrey Lushnikov
64bf2a624f
test: fix webkit test on Darwin ( #27029 )
2023-09-12 15:01:44 -07:00
Yury Semikhatsky
700b310150
fix(fetch): restore from empty storage state ( #27025 )
...
Fixes #26833
2023-09-12 13:11:18 -07:00
Dmitry Gozman
d9eabda09d
fix(locators): escape quotes in regular expressions ( #27002 )
...
Fixes #26974 .
2023-09-11 15:49:04 -07:00
Dmitry Gozman
186f86905c
chore: make @playwright/test depend on playwright ( #26946 )
2023-09-08 14:23:35 -07:00
Yury Semikhatsky
0213fef484
test: unskip passing test ( #26960 )
...
The functionality was fixed in
[webkit](https://github.com/microsoft/playwright-browsers/pull/625 ) and
should be available with [recent
roll](https://github.com/microsoft/playwright/pull/26953 ).
Fixes #26876
2023-09-08 12:57:32 -07:00
Yury Semikhatsky
fd28e8d801
test: reset view scale after navigation ( #26939 )
...
Failing test for #26876
2023-09-08 08:58:07 -07:00
Pavel Feldman
167c35ca66
chore: store scroll positions in trace viewer ( #26938 )
2023-09-07 17:14:39 -07:00
Playwright Service
bcf59ed721
feat(webkit): roll to r1905 ( #26909 )
2023-09-07 07:41:46 +02:00
Pavel Feldman
61a1924328
chore: align recorder drawer with trace viewer ( #26922 )
2023-09-06 17:13:25 -07:00
Pavel Feldman
d65da74b8f
fix(trace): allow typing in selector w/ frames ( #26919 )
2023-09-06 16:14:40 -07:00
Max Schmitt
f71df9fb50
chore: introduce sdkLanguage based userDataDir misuse error ( #26894 )
...
Fixes https://github.com/microsoft/playwright-python/issues/2059
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2023-09-06 22:58:44 +02:00
Dmitry Gozman
361038c950
feat: rename PageError to WebError ( #26913 )
2023-09-06 12:40:53 -07:00
Pavel Feldman
b4012df160
fix(trace): make locator picker work for iframes ( #26883 )
...
Fixes https://github.com/microsoft/playwright/issues/26878
2023-09-06 09:44:47 -07:00
Dmitry Gozman
740472ce8f
fix(trace viewer): retain currentSrc of all images ( #26841 )
...
When `<source>` or `srcset=` are involved, the actual image src is
determinted at runtime based on factors like `devicePixelRatio` and
media queries that depend on width/height.
Since these factors may differ in the Trace Viewer itself, we should
preserve the `currentSrc`, use it as an actual `src`, and disable
various `<source>` and `srcset=`.
2023-09-05 12:48:07 -07:00
Pavel Feldman
8c494e2519
chore: add log/error tabs and counters ( #26843 )
2023-09-01 20:12:05 -07:00
Yury Semikhatsky
ce3e0dcf84
test: unskip test in headless ( #26844 )
...
Reference https://github.com/microsoft/playwright/issues/22617
2023-09-01 17:26:23 -07:00
Dmitry Gozman
6d85ba1494
fix: remove connectInsteadOfLaunching ( #26828 )
2023-08-31 15:29:04 -07:00
Dmitry Gozman
741c649d56
fix(trace viewer): make sure target inside shadow dom is highlighted ( #26823 )
...
References #24532 .
2023-08-31 12:46:49 -07:00
Pavel Feldman
c209d7e708
chore: more network panel polish ( #26780 )
2023-08-29 22:20:28 -07:00
Yury Semikhatsky
501ed32856
fix(fetch): update host header on redirect ( #26750 )
...
Fixes https://github.com/microsoft/playwright/issues/26743
2023-08-28 12:42:50 -07:00
Max Schmitt
feac31dbdc
test: mark 'should fire close event' as fixme in MSEdge ( #26712 )
...
https://github.com/microsoft/playwright/issues/26711
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-08-25 23:57:56 +02:00
Max Schmitt
c27317b6e5
feat(webkit): roll to r1893 ( #26596 )
...
This should make it into v1.38 and once its merged one day later it can
be tested in [Playwright
Canary](https://playwright.dev/docs/canary-releases ).
Fixes https://github.com/microsoft/playwright/issues/22569
Fixes https://github.com/microsoft/playwright/issues/23259
2023-08-22 17:57:02 +02:00
Max Schmitt
bb3152738d
test: fix macOS WebKit signals test ( #26603 )
2023-08-22 16:51:34 +02:00
Pavel Feldman
c3c3c7f53c
chore: decorate console message sources ( #26588 )
2023-08-21 16:05:27 -07:00
Max Schmitt
2edecd4244
test: add libsoup3 related tests ( #26572 )
...
https://github.com/microsoft/playwright/issues/22569
https://github.com/microsoft/playwright/issues/23259
2023-08-21 22:12:12 +02:00
Pavel Feldman
8f31191637
chore: pick locator tab ( #26532 )
2023-08-18 17:53:03 -07:00
Yury Semikhatsky
14a57a788b
test: screenshot of css transformation ( #26533 )
...
Failing tests for #26447 .
2023-08-18 14:30:43 -07:00
Vignesh Shanmugam
adc9b2d390
feat: add support for browserContext.on('pageerror') ( #24452 )
...
+ fix #24466
+ Adds support for exposing the `pageerror` events via `browserContext`
API.
+ Helps with capturing the overall exceptions that are thrown outside of
the the current page and also captures the exceptions happens on other
windows/popups.
+ Keeps the API in sync with `context.on('request)',
context.on('console'), etc..`
2023-08-17 09:10:03 -07:00
Pavel Feldman
a705d68c8a
chore: filter actions, console and network based on the timeline window ( #26509 )
2023-08-16 16:30:17 -07:00
Pavel Feldman
576608b69d
chore: revert #24598 ( #26484 )
2023-08-15 11:29:33 -07:00
Playwright Service
96965cfbe9
feat(webkit): roll to r1885 ( #26443 )
...
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-08-12 19:17:07 +02:00
Pavel Feldman
d0fec20fe1
chore: update test certificates ( #26423 )
2023-08-10 17:06:03 -07:00
Pavel Feldman
f6563f1a90
chore: use header for service2 auth ( #26419 )
2023-08-10 13:43:16 -07:00
Andrey Lushnikov
0bb4dac28f
tests: fix race condition in codegen tests ( #26405 )
...
The console message comes in once the page navigates, not in the
`page.setContent()` call below.
2023-08-10 07:51:38 -07:00
Pavel Feldman
08d6abab4a
chore: allow merging defineConfig ( #26390 )
2023-08-09 17:23:34 -07:00
Pavel Feldman
65ac0d5256
chore: add k8s grid deployments ( #26359 )
2023-08-08 18:46:32 -07:00
Dmitry Gozman
9509c300e4
fix(reuse): make sure newly created page is not "server-side-only" ( #26332 )
...
This page is going to be the "page for reuse", so it should not be
marked as "server-side-only" and should issue all required events.
Fixes #24574 .
2023-08-07 16:26:30 -07:00
Pavel Feldman
120de62798
chore(grid): add command line options ( #24802 )
2023-08-04 18:08:50 -07:00
Pavel Feldman
aba6964bd1
chore: add grid tests ( #24617 )
2023-08-04 14:59:48 -07:00
Pavel Feldman
6731f5b6d5
chore: grid placeholder ( #24598 )
2023-08-04 08:38:07 -07:00
Pavel Feldman
744eb6823f
chore: fix s2 mode ( #24525 )
2023-07-31 11:24:04 -07:00
Dmitry Gozman
d92fe16b76
fix(blob report): default location relative to package.json ( #24481 )
...
Also:
- remove `blob-report` directory at the start;
- markdown's `report.md` next to package.json;
- use default location in playwright's workflows.
References #24451 .
2023-07-28 15:49:31 -07:00
Max Schmitt
83a98cccf3
test: skip tracing test on trace mode ( #24483 )
...
Thats like we do it here:
c8f2fc392a/tests/library/tracing.spec.ts (L26)
2023-07-28 18:48:34 +02:00
Pavel Feldman
1277ec9900
chore: fix tracing test in s2 mode ( #24480 )
2023-07-27 20:20:31 -07:00
Dmitry Gozman
6c1723ca3e
test: rebaseline webkit signals.spec ( #24471 )
...
Fixes #22226 .
2023-07-27 13:36:43 -07:00