Commit graph

4424 commits

Author SHA1 Message Date
Max Schmitt f05b4daa2f
fix(clock): under reused context (#31357)
We uninstall all the setInitScript but forgot to mark `installed` as
`false`.

Fixes https://github.com/microsoft/playwright/issues/31353
2024-06-18 18:21:33 +02:00
Yury Semikhatsky 9e6772818e
chore: cache normalized whitespaces in recorder (#31349)
Reference: https://github.com/microsoft/playwright/issues/31254

On the web page from the bug it reduces time to compute selectors by 8x:

**Before:**
<img width="549" alt="before"
src="https://github.com/microsoft/playwright/assets/9798949/f4482860-29d5-4643-92ab-b360a702f232">

**After:**
<img width="580" alt="after"
src="https://github.com/microsoft/playwright/assets/9798949/b6aca6a1-9306-4041-9042-d504dce1c33a">
2024-06-17 18:20:15 -07:00
Yury Semikhatsky 5443b66636
fix(codegen): trim alt selectors to 80 chars (#31346)
Fixes https://github.com/microsoft/playwright/issues/31254
2024-06-17 16:32:22 -07:00
Playwright Service f3f708e01a
feat(firefox-beta): roll to r1454 (#31343)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-17 21:34:24 +02:00
Pavel Feldman 2a7f17d820
chore: fix simulated clock bots (#31301) 2024-06-17 09:17:38 -07:00
Fumiaki MATSUSHIMA 838c572209
fix: select issue in Windows with Edge (#31270) 2024-06-17 10:28:07 +02:00
Dmitry Gozman 32e25a252b
chore: mark v1.46.0-next (#31324) 2024-06-14 18:22:42 -07:00
Dmitry Gozman fce2874796
feat(types): export PageAssertionsToHaveScreenshotOptions type (#31319)
Fixes #31089.
2024-06-14 09:39:21 -07:00
Playwright Service cf85905f44
feat(webkit): roll to r2035 (#31308) 2024-06-14 10:49:50 +02:00
Max Schmitt a9200be0af
fix(screenshotter): only wait for for document.fonts.ready on locator frame / page main frame (#31295)
**Investigation**

~~We use `nonStallingEvaluateInExistingContext` as of today, which does
`eval()` inside (from our utilityScript) which breaks for some sites. It
causes a hang, since the returned `Promise` of `eval()` hangs. We don't
know as of today why this happens. Without wrapping it ini `eval()` it
does not hang.~~

~~Workaround: Do a plain Runtime.evaluate instead.~~

workaround: Only wait on main frame.

Relates https://github.com/microsoft/playwright/issues/28995 (keeping it
open until they confirm that it helps)
2024-06-14 01:22:14 +02:00
Max Schmitt a76e5824c0
docs: examples for file directory upload (#31302) 2024-06-13 23:37:47 +02:00
Dmitry Gozman d0b052e1e0
fix(chromium): pass --enable-gpu when running headless (#30937)
Fixes #30585.
2024-06-13 11:27:17 -07:00
Pavel Feldman 897f7449ef
fix(clock): fix pauseAt to arrive at wall time (#31297) 2024-06-13 10:21:00 -07:00
Playwright Service 8ea663aa64
feat(firefox): roll to r1454 (#31288) 2024-06-13 16:19:09 +02:00
Playwright Service def622b15d
feat(chromium-tip-of-tree): roll to r1231 (#31292)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-13 16:15:49 +02:00
Dmitry Gozman b9106a4c42
fix(test runner): do not use @babel/plugin-transform-dynamic-import (#31285)
Historically, this plugin was important to translate dynamic imports
into require calls so that we can intercept them and transpile.

This is not needed anymore with ESM loader enabled by default, so we can
avoid this transformation and support dynamic imports of ESM-only
packages/files.

Fixes #17075, fixes #23255, fixes #31140, references #23662.
2024-06-13 06:18:44 -07:00
Playwright Service e8285369f5
feat(chromium): roll to r1123 (#31289) 2024-06-13 11:28:56 +02:00
Playwright Service a2a6431efd
feat(webkit): roll to r2033 (#31286)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-13 10:05:49 +02:00
dependabot[bot] f63b0252c9
chore(deps): bump braces from 3.0.2 to 3.0.3 in /packages/playwright/bundles/utils (#31264) 2024-06-12 22:22:35 +02:00
Max Schmitt dcf4e4e054
feat: allow folder uploads (#31165) 2024-06-12 22:20:18 +02:00
Yury Semikhatsky f1475fa644
chore: trim multiline step titles to first line (#31269)
Fixes https://github.com/microsoft/playwright/issues/31266
2024-06-12 08:24:12 -07:00
Playwright Service 6a7bfe63a1
feat(webkit): roll to r2031 (#31272) 2024-06-12 16:06:47 +02:00
Pavel Feldman cf400a6080
Revert "feat(test runner): shuffle order of tests with sharding seed … (#31260)
…(#30817)"
2024-06-11 16:05:35 -07:00
Pavel Feldman 732e7393d3
Revert "feat(test): add URL field to annotations for hyperlink disp… (#31259)
…lay (#30665)"
2024-06-11 16:05:21 -07:00
Playwright Service e07b46883d
feat(webkit): roll to r2029 (#31257) 2024-06-11 22:14:30 +02:00
Pavel Feldman 2b257ea963
chore(clock): introduce pauseAt (#31255) 2024-06-11 12:51:00 -07:00
Playwright Service 8fd0a56427
feat(chromium-tip-of-tree): roll to r1230 (#31251)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-11 18:52:38 +02:00
Pavel Feldman 6399e8de4e
chore: clock api review (#31237) 2024-06-11 09:42:15 -07:00
Yury Semikhatsky c08000b967
feat(chromium): storage-access permission (#31239)
Fixes https://github.com/microsoft/playwright/issues/31227
2024-06-11 09:18:45 -07:00
Sander 664c4dd442
chore(ct): vue update vue-component-type-helpers (#31213)
The `ComponentProps` copied from
[`vue-component-type-helpers`](5c65f102d0/packages/component-type-helpers/index.ts (L6-L9))
was outdated and had an issue accurately inferring generic/functional
Vue components.
2024-06-10 17:22:00 -07:00
Max Schmitt 98637ea5b5
chore: update socks dependencies (fix npm audit for 'ip' package) (#31231)
Fixes https://github.com/microsoft/playwright/security/dependabot/76

Ran `npm audit fix` locally.
2024-06-10 10:28:29 -07:00
Carter Sande 701a405bdf
fix(trace-viewer): Rewrite file URIs in snapshots, like blob URIs. (#31113)
This allows snapshots of file:/// pages with external stylesheets,
images, etc to be rendered correctly in the trace viewer. (Otherwise, it
tries to request the file:/// URIs directly and the requests get blocked
by the browser.)

Fixes #31112.
2024-06-10 11:44:52 +02:00
Lee Byonghun abaddc01c9
fix: throw error when workers option is not number or percentage (#31210) 2024-06-10 11:27:54 +02:00
Pavel Feldman e280d0bd35
chore(clock): split wall and monotonic time (#31198) 2024-06-09 14:50:50 -07:00
Playwright Service 43d6d012d4
feat(firefox-beta): roll to r1453 (#31197) 2024-06-07 09:22:22 +02:00
Playwright Service 05e10a8d0f
feat(firefox): roll to r1453 (#31199)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-07 09:22:08 +02:00
Pavel Feldman dd3a41287e
chore: simplify doTick (#31196) 2024-06-06 19:26:30 -07:00
Pavel Feldman 826343b8a0
chore: rename fakeTimers to clock (#31193) 2024-06-06 15:56:13 -07:00
Playwright Service 8782936a00
feat(webkit): roll to r2022 (#31191)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-06 20:17:17 +02:00
Playwright Service e259f802d6
feat(chromium): roll to r1122 (#31188)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-06 20:02:58 +02:00
Yury Semikhatsky fc6fcc2118
chore: remove same site hack for libsoup on the client (#31192) 2024-06-06 08:55:38 -07:00
Playwright Service c8b7cda514
feat(chromium-tip-of-tree): roll to r1229 (#31187)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-06 16:49:45 +02:00
Pavel Feldman 384eed65ea
chore: organize fake timers (#31156) 2024-06-05 09:25:12 -07:00
Playwright Service f9c268a8e6
feat(webkit): roll to r2019 (#31167)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-05 15:19:32 +02:00
Max Schmitt 9a536b0a56
fix: add libicu74 dependency to webkit Ubuntu 24.04 (#31152) 2024-06-04 21:48:44 +02:00
Darío Kondratiuk 76b25e84cc
docs: Improve clock doc (#31147) 2024-06-04 18:48:56 +02:00
Pavel Feldman c516ba0ec8
api(clock): rework api based on the review (#31137) 2024-06-04 06:51:35 -07:00
Pavel 8d0def190d docs: iterate over the clock (2) 2024-06-03 09:03:43 -07:00
Max Schmitt 2c6fd722dd
feat: support Ubuntu 24.04 (#30826) 2024-06-03 12:47:16 +02:00
Playwright Service 0203fed0c2
feat(webkit): roll to r2017 (#31127)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-03 09:52:26 +02:00
Pavel 8d2f4c1433 docs: iterate over the clock dock 2024-06-01 08:22:36 -07:00
Pavel Feldman fc6c67f5f9
docs: start adding clock docs (#31111) 2024-06-01 07:30:58 -07:00
Playwright Service 4655a30bdd
feat(webkit): roll to r2016 (#31114)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-01 13:48:17 +02:00
Pavel Feldman 8bfd0eb6e4
chore: introduce clock test mode (#31110) 2024-05-31 14:44:26 -07:00
Joe-Hendley afa0bf2247
feat: increase length of printed html tags (#31105)
resolves https://github.com/microsoft/playwright/issues/30977 by
increasing the printed length of HTML tags from 50 -> 500 as suggested
by @dgozman
2024-05-31 10:45:56 -07:00
Pavel Feldman 76e977a934
chore: add clock.next() (#31097) 2024-05-31 08:09:24 -07:00
Playwright Service a617dd0df8
feat(webkit): roll to r2015 (#31103)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-31 14:39:58 +02:00
Pavel Feldman f17d0440a7
chore: attempt at fixing double init scripts (#31096) 2024-05-30 15:38:10 -07:00
Yury Semikhatsky 9a11be3305
chore(trace-viewer): grid view z-index, source column in resource details (#31094)
New look for multiple contexts:

<img width="585" alt="image"
src="https://github.com/microsoft/playwright/assets/9798949/02dc5f54-0946-40a9-9459-942c4362a32e">
2024-05-30 14:45:33 -07:00
Yury Semikhatsky 4c020c9861
chore(trace-viewer): preserve column widths after showing resource details (#31093)
* Column widths are now stored on in the NetworkPanel context, this way
they are not reset after selecting an empty range (and changing position
of the NetworkGridView in the component tree).
* Column widths values are now preserved if column set changes (e.g.
selecting entries from a single context and then from multiple
contexts).
2024-05-30 12:21:32 -07:00
Pavel Feldman f97d87ea5a
docs: fix the api review typos (#31071) 2024-05-30 12:15:52 -07:00
Mathias Leppich 5708148496
fix(merge-reports): only change test ids when needed (#31061)
When merging blob reports test ids are patched to make sure there is no
collision when merging reports that might have overlapping test ids.
However, even if you were merging reports that had no overlapping ids,
all test ids will be modified, which is an undesirable side effect.

This PR only modify test ids when the same test id has already been used
in a previous blob report.

----

This change is also part of
https://github.com/microsoft/playwright/pull/30962
2024-05-30 11:29:20 -07:00
Yury Semikhatsky 6067b78f88
chore: http credentials send immeidately/unauthorized enum (#31076)
Reference https://github.com/microsoft/playwright-internal/issues/205
Reference https://github.com/microsoft/playwright/issues/30534
2024-05-30 10:19:56 -07:00
Pavel Feldman 170c457a61
feat(timers): a stab at fake timers (#31075) 2024-05-30 09:38:27 -07:00
Playwright Service a1db91040e
feat(chromium): roll to r1121 (#31090)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-30 17:50:22 +02:00
Playwright Service cb589d7fa5
feat(chromium-tip-of-tree): roll to r1227 (#31091)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-30 17:49:59 +02:00
Dmitry Gozman ba5b460444
chore: move artifacts recording to TestLifecycleInstrumentation (#30935)
The spirit of this change is reverting #23153. Since that time, we have
moved tracing and `artifactsDir` lifetime into the test runner, so the
reason for revert is mitigated.

Fixes #30287, fixes #30718, fixes #30959.
2024-05-29 18:05:17 -07:00
Yury Semikhatsky f93da40925
feat(webkit): roll to r2014 (#31074)
Closes https://github.com/microsoft/playwright/pull/31059
Closes https://github.com/microsoft/playwright/pull/31012

Reference https://github.com/microsoft/playwright-browsers/issues/795
2024-05-29 17:20:38 -07:00
Mathias Leppich 6e9c31f93b
fix(runner): don't write last run info when listing tests (#31062) 2024-05-29 09:07:40 -07:00
Playwright Service 97a82e6b77
feat(firefox): roll to r1452 (#31068)
Fixes https://github.com/microsoft/playwright/issues/31039
Closes https://github.com/microsoft/playwright/pull/31069
2024-05-29 08:28:26 -07:00
Yury Semikhatsky a11a6d9874
fix(blob): make sure tele reporters do not override ids (#31056)
Fixes https://github.com/microsoft/playwright/issues/31023
2024-05-28 16:37:11 -07:00
Pavel Feldman 6675652269
chore: split client-side instrumentation into sync and async (#31054) 2024-05-28 14:29:57 -07:00
Rui Figueira f254290ab4
fix(trace-viewer): fix snapshot.html (#31033)
Actual path to get trace contexts is /contexts, not /context
2024-05-28 13:14:22 -07:00
Sander e047c478a4
feat(ct): resolve hooksConfig import refs (#31024)
closes https://github.com/microsoft/playwright/issues/30453
2024-05-28 12:29:52 -07:00
Max Schmitt 63fd28e038
docs(grep): contains tags (#31042) 2024-05-28 19:30:47 +02:00
Playwright Service fb8f868128
feat(webkit): roll to r2013 (#31045)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-28 17:20:55 +02:00
Ernst de Jong ef023c4f40
chore(types): fix typo in screenshot mode (#31047) 2024-05-28 16:14:21 +02:00
Playwright Service 6a055434ce
feat(chromium-tip-of-tree): roll to r1226 (#31044)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-28 14:15:32 +02:00
Playwright Service ef65cff2e1
feat(chromium-tip-of-tree): roll to r1225 (#31035)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-27 18:40:06 +02:00
cavivie a7599ad509
feat(api): add host option in launchServer options (#30999) 2024-05-27 11:24:23 +02:00
amankagithub 0e0b426e47
feat(html): filter test cases by annotation text in HTML report (#30751) 2024-05-24 13:12:16 -07:00
Pavel Feldman bff1e41add
chore: do not render post data if there is none (#31008)
Fixes https://github.com/microsoft/playwright/issues/30992
2024-05-24 09:27:49 -07:00
Yury Semikhatsky 9884c851ff
feat(expect): expose expect timeout (#30969)
Fixes https://github.com/microsoft/playwright/issues/30583
2024-05-24 08:56:43 -07:00
Dmitry Gozman c906448fe2
fix(recorder): do not ignore signals except for navigation (#30994)
When a signal arrives late enough, after the last action was committed
in 5 seconds, we should still account for it. This includes downloads,
popups and dialogs, but not navigations.

Exposed by a flaky test "should record open in a new tab with url".
2024-05-23 17:40:39 -07:00
Playwright Service b12cfe457b
feat(webkit): roll to r2012 (#30990)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 23:28:33 +02:00
Yury Semikhatsky 2cbd7b78ea
chore: change expect.getState() return type to unknown (#30989)
Eventually we would like to remove this method altogether.
2024-05-23 14:06:59 -07:00
Yury Semikhatsky f7b0490500
chore: remove references to jest expand (#30988)
Since https://github.com/microsoft/playwright/pull/7722 we always set
expand to false
[here](a106428114/packages/playwright/src/matchers/expect.ts (L176))
and don't expose any means to change that (in jest it's
expect.setState).
2024-05-23 13:44:15 -07:00
Yury Semikhatsky a106428114
feat(config): respectGitIgnore option (#30972)
Fixes https://github.com/microsoft/playwright/issues/30553
2024-05-23 12:05:02 -07:00
Playwright Service 20a23b3485
feat(chromium): roll to r1120 (#30980)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 14:53:48 +02:00
Playwright Service a968b2a5f6
feat(firefox-beta): roll to r1451 (#30958)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 10:30:15 +02:00
Playwright Service 14d98aaaf7
feat(firefox): roll to r1451 (#30950) 2024-05-23 10:30:06 +02:00
Playwright Service 7645d293f0
feat(chromium-tip-of-tree): roll to r1223 (#30966)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 09:29:15 +02:00
Playwright Service 2d448ec2a0
feat(webkit): roll to r2011 (#30971)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 09:24:04 +02:00
Mathias Leppich 825e0e466e
feat(test runner): shuffle order of tests with sharding seed (#30817) 2024-05-22 16:22:09 -07:00
Dmitry Gozman eed6a10f3f
fix(tracing): speed up trace recording (#30946)
This includes two major changes:
- reuse `SerializedFS` for live test runner tracing;
- merge scheduled `appendFile` operations into a single `fs` call.

In some cases, this improves performance of UI mode by 61% and
performance of `trace: on` mode by 38%. Note that performance
improvement on the average test will not be as noticeable.

References #30875, #30635.
2024-05-22 15:19:32 -07:00
Max Schmitt cfc9623a79
fix(vscode): keep config order in vscode extension project dropdown (#30954)
Relates https://github.com/microsoft/playwright/issues/30936
2024-05-22 22:18:03 +02:00
Pavel Feldman 964fe66ccc
chore: hint at unroute for handle errors (#30949) 2024-05-22 08:54:19 -07:00
Olaf Alders 5b00ce1594
docs: fix typo in ConsoleMessage class (#30857) 2024-05-22 13:31:14 +02:00
Pavel Feldman e7a11c0ca2
fix: propagate close reason to api context (#30945) 2024-05-21 18:05:58 -07:00
Pavel Feldman 7b27fc3916
chore: pass outputDir to uimode (#30941)
Fixes https://github.com/microsoft/playwright/issues/30886
2024-05-21 14:36:31 -07:00