Dmitry Gozman
b9b06cb010
chore: mark version 1.44.0-next ( #30129 )
2024-03-26 13:44:10 -07:00
Yury Semikhatsky
021c5c108c
chore: revert support of duplicate form data fields in multipart post data ( #30127 )
...
We want to adopt FormData API for the requests.
This is a revert of 4b3c596874
and
a849ea9741
Reference https://github.com/microsoft/playwright/issues/28070
2024-03-26 12:36:35 -07:00
Dmitry Gozman
e4403dd6c8
fix(chromium): race between requestPaused and requestWillBeSent in workers ( #30125 )
...
Workers use page's session for `Fetch` domain and worker's session for
`Network` domain. Therefore, `CRNetworkManager` should keep track of the
right session for each domain separately.
This is covered by currently flaky tests:
- `should report and intercept network from nested worker`,
- `should intercept network activity from worker`,
- `should intercept network activity from worker 2`.
2024-03-26 11:11:09 -07:00
Dmitry Gozman
dd1eca2a9d
fix(trace viewer): show correct number of pages without screencast ( #30124 )
...
Exposed by the flaky "should open two trace files" test.
2024-03-26 10:25:12 -07:00
Pavel Feldman
0bf635ecce
chore: ensure max failures exit yields erroneous status code ( #30120 )
...
Fixes https://github.com/microsoft/playwright/issues/30118
2024-03-26 09:20:13 -07:00
Pavel Feldman
2de8a6b002
chore: move filter params into the clearCookies ( #30111 )
2024-03-26 08:12:26 -07:00
Playwright Service
1824ba118e
feat(chromium-tip-of-tree): roll to r1205 ( #30119 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-26 15:19:59 +01:00
Max Schmitt
599185dd07
feat(ui-mode): show native tags in test tree ( #30092 )
...
This brings up the question that we would show the tag name twice if its
a tag in a title. This would be aligned to how HTML report is doing it.
Fixes https://github.com/microsoft/playwright/issues/29927
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-03-26 01:06:22 +01:00
Dmitry Gozman
051afb9ce0
fix(test runner): update fixture teardown error message ( #30109 )
...
With the recent change that gave after hooks a separate timeout, fixture
teardown does not imply that "test finished successfully, but fixture
teardown was slow".
2024-03-25 17:04:03 -07:00
Playwright Service
8e27d67ecd
feat(webkit): roll to r1992 ( #30110 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-26 00:06:46 +01:00
Max Schmitt
65d82797f1
fix(ct): ct ID clash on similar imports ( #30108 )
...
This restores the [best
effort](https://github.com/microsoft/playwright/pull/29407/files#diff-8dd3534dc5013c3779edeaded71324b0dd1c1807668f3c6d9e9a1aab1c20ae91L152 )
logic if its a relativ path.
Fixes https://github.com/microsoft/playwright/issues/30085
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2024-03-25 23:50:45 +01:00
Pavel Feldman
7039ad0d11
chore: follow up to the api review for test server ( #30097 )
2024-03-25 15:42:58 -07:00
Yury Semikhatsky
a849ea9741
feat(fetch): multiple fields with the same name in post data ( #30104 )
...
Rerefence https://github.com/microsoft/playwright/issues/28070
2024-03-25 15:39:45 -07:00
Dmitry Gozman
911d8effb9
feat(test runner): do not mock tty in the worker process ( #30107 )
...
This was historically done to make `console.log()` have colors. However,
this makes any other code that checks `process.stdout.isTTY` incorrectly
assume real TTY support.
Node18 and Node20 now respect `FORCE_COLOR=1` in console, so our default
behavior of forcing colors in the worker process just works out of the
box. See https://github.com/nodejs/node/pull/48034 .
2024-03-25 15:31:58 -07:00
Playwright Service
05cbb14d28
feat(firefox): roll to r1447 ( #30080 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-25 19:48:38 +01:00
Max Schmitt
253a2f9a9c
chore: address UI Mode keyboard shortcut feedback ( #30088 )
...
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-03-25 19:48:20 +01:00
Playwright Service
2e8db67f07
feat(firefox-beta): roll to r1447 ( #30100 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-25 19:22:59 +01:00
Max Schmitt
f5823786fd
docs: migrate to newer :::warning syntax ( #30089 )
...
- Migrate from `:::warning` to `:::danger[Warning]`.
- Migrate from `:::caution` to `:::warning`.
- `:::warning` and `:::caution` were the color same before.
- `:::caution` is deprecated and gets removed in v4 of Docusaurus
- Also migrate to the [newer title
syntax](3877c1254f/packages/docusaurus-utils/src/markdownUtils.ts (L86-L91)
)
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-03-25 19:22:15 +01:00
Shriphad Rao
82804cce64
fix: time in ms for skip test ( #30078 )
...
Fixes https://github.com/microsoft/playwright/issues/29861
2024-03-25 08:51:09 -07:00
Dmitry Gozman
95d649b406
feat: address api review feedback for 1.43 ( #30066 )
...
- Update docs for `trace: retain-on-first-failure`.
- Update docs for `devtools` option.
- Rename `Locator.enterFrame()` to `Locator.contentFrame()`.
- Rename `FrameLocator.exitFrame()` to `FrameLocator.owner()`.
2024-03-25 07:42:13 -07:00
Dmitry Gozman
7a3c002944
fix(ct): allow importing json files ( #30067 )
...
While we are not fully resolving imports during compilation, do not
treat `json` as a non-importable asset.
Fixes #29926 .
2024-03-25 07:41:54 -07:00
Pavel Feldman
1539cde034
chore: allow passing path to config to the test server ( #30068 )
2024-03-22 16:04:59 -07:00
Pavel Feldman
ee9432b9da
chore: send test params over the wire in ui mode ( #30046 )
2024-03-22 13:49:28 -07:00
Playwright Service
2443d6560f
feat(firefox-beta): roll to r1446 ( #30062 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-22 21:27:33 +01:00
Dmitry Gozman
c1400a3db5
Revert "feat(codegen): add button to generate toHaveScreenshot statement ( #29996 )" ( #30064 )
...
This reverts commit 1bb463163b
. Decided to
wait for a better VRT story.
References #29250 .
2024-03-22 13:26:22 -07:00
Yury Semikhatsky
a511731f55
fix(html): keep projects from different bots separate ( #30051 )
2024-03-22 10:02:00 -07:00
Playwright Service
9ce83e10f4
feat(firefox): roll to r1446 ( #30053 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-22 13:00:38 +01:00
Playwright Service
b834c0b9ed
feat(webkit): roll to r1991 ( #30049 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-22 13:00:15 +01:00
Playwright Service
63cc132daa
feat(firefox-beta): roll to r1445 ( #30028 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-22 12:59:21 +01:00
Pavel Feldman
a9fc4de37e
chore: queue run and list commands from ui ( #30033 )
2024-03-21 14:28:07 -07:00
Dmitry Gozman
e0588446c0
feat(firefox): roll to 1445 ( #30043 )
2024-03-21 13:26:02 -07:00
Max Schmitt
352cb7fa08
feat(browser): roll Chromium to 1110 ( #30039 )
...
Browser roll bot was broken, got fixed by
3d4e0061bc
.
2024-03-21 14:26:42 +01:00
Playwright Service
86d43131e9
feat(chromium-tip-of-tree): roll to r1204 ( #30038 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-21 14:23:38 +01:00
Pavel Feldman
7ad0a12c23
chore: remove ui mode update globals ( #30031 )
2024-03-20 21:09:49 -07:00
Dmitry Gozman
3e73a6ce69
feat(test runner): show multiple errors, at most one per stage ( #30024 )
...
Previously, there was at most one "hard error", as opposite to multiple
"soft errors". This was done to preserve the historic behavior at the
time of introducing multiple `TestInfo.errors`.
With this change, every user callback that is executed `withRunnable()`
can throw an error and/or timeout, and both of these will end up in
`TestInfo.errors`.
Additionally, there is at most one "unhandled exception" error, to avoid
flooding the report with mass failures.
Drive-by: remove boolean arguments from `_failWithError()`.
Fixes #29876 .
2024-03-20 21:01:30 -07:00
Dmitry Gozman
6f360f7207
feat(trace): do not record events that are not used in the viewer ( #30030 )
...
This is especially useful for network events that are already in the
har, but also get into the trace.
2024-03-20 21:01:17 -07:00
Dmitry Gozman
9d40f619c4
feat: deprecate "devtools" launch option ( #30025 )
...
References #29899 .
2024-03-20 16:48:00 -07:00
Yury Semikhatsky
69e90f38c7
fix(codegen): import re in python ( #30026 )
...
Fixes https://github.com/microsoft/playwright/issues/30019
2024-03-20 16:38:28 -07:00
Pavel Feldman
8a1ff34578
chore: split ui mode view into files ( #30029 )
2024-03-20 16:00:35 -07:00
Pavel Feldman
48ccc9cbcd
chore: prepare to reuse test server from ui mode (6) ( #30008 )
2024-03-20 13:43:26 -07:00
Playwright Service
c712b365ad
feat(chromium-tip-of-tree): roll to r1203 ( #30017 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-20 13:31:12 +01:00
Yury Semikhatsky
da2b099b5c
docs: note on locator handler trigger ( #30004 )
...
Fixes https://github.com/microsoft/playwright/issues/30003
2024-03-19 16:54:49 -07:00
Pavel Feldman
0a22a86e2e
chore: prepare to reuse test server from ui mode (5) ( #30005 )
2024-03-19 14:08:21 -07:00
Dmitry Gozman
1bb463163b
feat(codegen): add button to generate toHaveScreenshot statement ( #29996 )
...
Fixes #29250 .
2024-03-19 14:01:04 -07:00
Pavel Feldman
54aca430b0
chore: prepare to reuse test server from ui mode (4) ( #29995 )
2024-03-19 13:00:49 -07:00
Playwright Service
3ee13cbf2b
feat(webkit): roll to r1990 ( #29999 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-19 14:31:38 +01:00
jonghoonpark
b929c0d8f7
feat(ui-mode): add key shortcuts for playwright uI test runner ( #29868 )
2024-03-19 12:36:42 +01:00
Playwright Service
db7d40e4f2
feat(firefox-beta): roll to r1444 ( #29851 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-19 11:50:19 +01:00
Playwright Service
3c993fbbda
feat(firefox): roll to r1444 ( #29853 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-19 11:50:12 +01:00
Dmitry Gozman
be1af15d57
feat: always enable ESM loader with the new API ( #29991 )
...
It does not require a process restart anymore, so safe to enable.
Fixes #29747 .
2024-03-18 21:54:25 -07:00
Dmitry Gozman
b41b802662
fix(test runner): avoid dependency tracking colliding between esm and cjs ( #29994 )
...
When collecting dependencies both from CJS loader and from ESM loader,
the latter would overwrite the dependencies set instead of appending.
Also make sure cts/cjs/mts/mjs are all supported equally.
References #29747 .
2024-03-18 17:17:58 -07:00
Pavel Feldman
c7b074d39e
chore: prepare to reuse test server from ui mode (3) ( #29989 )
2024-03-18 17:14:21 -07:00
Dmitry Gozman
70e6cdac57
feat: enterFrame/exitFrame ( #29992 )
...
This introduces `Locator.enterFrame()` and `FrameLocator.exitFrame()` to
convert between locator and frame locator.
Fixes #29336 .
2024-03-18 13:42:08 -07:00
Max Schmitt
a6d1fb93de
fix(trace-viewer): encode attachment filenames as UTF-8 ( #29993 )
...
Fixes https://github.com/microsoft/playwright/issues/29967
Tested in Firefox, Chromium, and Safari. This now leads to "good
attachment names" in Chromium and Safari, for Firefox, it won't produce
attachments, it will open them inline, but this is not a regression, was
before like that already.
See here for the spec:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition#filename_2
---------
Signed-off-by: Max Schmitt <max@schmitt.mx>
2024-03-18 21:26:45 +01:00
Yury Semikhatsky
35db70ea1d
chore: trim file names longer than 60 chars (was 100) ( #29725 )
...
Test-specific output dir and snapshot names are trimmed to 60 chars
instead of just 100. The snapshot names are still trimmed at 100 chars
for backwards compatibility.
Reference https://github.com/microsoft/playwright/issues/29719
2024-03-18 12:53:15 -07:00
Pavel Feldman
ef4438ee99
chore: prepare to reuse test server from ui mode (2) ( #29966 )
2024-03-18 09:59:02 -07:00
Pavel Feldman
6faadf5160
chore: prepare to reuse test server from ui mode ( #29965 )
2024-03-18 09:50:11 -07:00
Max Schmitt
0db1d40abc
fix(types): evaluate should not unpack return unions ( #29971 )
2024-03-18 16:42:33 +01:00
Playwright Service
306db80d03
feat(chromium-tip-of-tree): roll to r1202 ( #29963 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-15 20:04:22 +01:00
Max Schmitt
5d0c61fa0c
docs: fix logger API usage ( #29961 )
2024-03-15 19:04:14 +01:00
Max Schmitt
048d6669fd
fix(reuse): reset Origin Private File System API ( #29921 )
...
Fixes https://github.com/microsoft/playwright/issues/29901
This clears the Origin Private File System API when using VSCode
extension.
2024-03-15 17:40:46 +01:00
Max Schmitt
be465c6a1c
fix(trace-viewer): allow Chrome extension fallback in SW ( #29954 )
...
https://github.com/microsoft/playwright/issues/29144
2024-03-15 16:27:07 +01:00
Max Schmitt
5bc6ca6345
fix: allow disposing ElementHandles multiple times ( #29953 )
...
Fixes https://github.com/microsoft/playwright/issues/29945
2024-03-15 16:26:56 +01:00
Max Schmitt
3e78426acc
fix(trace-viewer): report upload error as aria-role=alert ( #29956 )
...
Turns out NVDA and Narrator work differently. This is a follow-up to
https://github.com/microsoft/playwright/pull/29838 which was not working
in NVDA before - looks like a NVDA bug. Using alert instead.
Relates
https://github.com/microsoft/playwright/issues/29095#issuecomment-1999332067
2024-03-15 16:25:36 +01:00
Pavel Feldman
94348bb3c5
chore: align test tree with vscode ( #29864 )
2024-03-14 15:44:35 -07:00
Playwright Service
23bfeec5c7
feat(webkit): roll to r1989 ( #29942 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-14 21:15:08 +01:00
Max Schmitt
7cbef691ae
fix: throw error if setInputFile does not exist ( #29944 )
...
Fixes https://github.com/microsoft/playwright/issues/29941
2024-03-14 20:27:33 +01:00
Max Schmitt
b158e4ef96
fix: postDataJSON without Content-Type header ( #29918 )
...
Regressed after
38fc74db7c
.
Test coverage: Some tests were failing on the flakiness dashboard
2024-03-14 16:48:34 +01:00
Karl Horky
914208c567
chore: fix typo in property name ( #29907 )
2024-03-13 12:22:40 +01:00
Dmitry Gozman
349b25e61a
fix(storageState): try to collect storage state on existing pages first ( #29915 )
...
This helps in a case where navigating to an origin fails for some
reason, for example because a registered service worker loads some
content into the supposedly blank page.
Fixes #29402 .
2024-03-12 19:20:35 -07:00
Dmitry Gozman
2ce421b27a
fix(trace viewer): synchronize monotonic times between context entries ( #29908 )
...
When displaying remote context trace and local test runner trace
together, we should not compare monotonic time between the two.
This change reuses existing logic for merging actions timing to also
update context boundaries and events by the same time delta.
Fixes #29767 .
2024-03-12 16:32:58 -07:00
Yury Semikhatsky
166d2d4fde
chore: separate results for repeated snapshot names ( #29880 )
...
Reference #29719
2024-03-12 16:10:43 -07:00
Dmitry Gozman
78b8aed4bd
docs: mark addLocatorHandler as experimental ( #29909 )
2024-03-12 12:02:25 -07:00
Max Schmitt
38fc74db7c
fix: postDataJSON with application/x-www-form-urlencoded; charset=UTF-8 ( #29889 )
...
Fixes https://github.com/microsoft/playwright/issues/29872
2024-03-12 17:20:39 +01:00
Playwright Service
be325507cb
feat(chromium-tip-of-tree): roll to r1201 ( #29897 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-12 13:47:56 +01:00
Playwright Service
ab23e9139b
feat(chromium-tip-of-tree): roll to r1200 ( #29884 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-12 10:29:36 +01:00
Playwright Service
7840d3e6d9
feat(webkit): roll to r1988 ( #29883 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-12 09:57:32 +01:00
Dmitry Gozman
88e80cf948
chore(test runner): simplify TimeoutManager and TimeoutRunner ( #29863 )
2024-03-11 15:43:50 -07:00
Yury Semikhatsky
59228f19ce
fix: tty.WriteStream method stubs for process.stdout/stderr ( #29865 )
...
Fixes #29839
2024-03-11 10:11:16 -07:00
Yury Semikhatsky
7f6f17d1c3
chore: simplify toMatchSnapshot names calculation ( #29862 )
...
Reference https://github.com/microsoft/playwright/issues/29719
2024-03-10 11:11:35 -07:00
Dmitry Gozman
d214778548
chore(test runner): move timeout handling to the top, stop inheriting runnable ( #29857 )
2024-03-08 15:19:36 -08:00
Playwright Service
8f2c372bd8
feat(webkit): roll to r1987 ( #29856 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-08 10:15:19 +01:00
Dmitry Gozman
875ce1cf09
fix(chromium): use blockedReason as failure reason when available ( #29849 )
...
This covers blocked requests, e.g. mixed-content, that receive
`loadingFailed` with empty `errorText`.
Also, forcefully resolve `allHeaders()` in this case, since we know
there will be no actual network headers.
Fixes #29833 .
2024-03-07 14:07:04 -08:00
Max Schmitt
84d3308969
chore: limit trace-viewer minimum viewport ( #29850 )
...
https://github.com/microsoft/playwright/issues/29100
2024-03-07 22:42:21 +01:00
Max Schmitt
9ca895dea0
fix(trace-viewer): trap focus inside drop-target popup ( #29845 )
...
https://github.com/microsoft/playwright/issues/29099
2024-03-07 22:24:21 +01:00
Max Schmitt
591d327eac
chore: trace-viewer a11y fixes ( #29838 )
2024-03-07 16:02:31 +01:00
Dmitry Gozman
006ee7f3b0
feat: separate timeout for after hooks ( #29828 )
...
Instead of sharing the timeout with the test, and then extending it when
test times out, we give after hooks a separate timeout.
2024-03-06 12:31:54 -08:00
Sarkis Matinyan
0c3f60e95e
fix(ui): show stack frames in ui mode ( #29560 )
...
#29558 , #29500
2024-03-06 12:29:35 -08:00
Lukas Bockstaller
425f737eb6
feat: exposes tags in testInfo ( #29794 )
...
Fixes #29793 .
---------
Signed-off-by: Lukas Bockstaller <lukas.bockstaller@everest-erp.com>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-03-06 08:33:06 -08:00
Dmitry Gozman
1d4bdc6898
chore(test runner): make runAsStage throw and catch errors explicitly ( #29814 )
2024-03-05 16:35:11 -08:00
Dmitry Gozman
a3ed799cd5
fix(tsconfig): when extending, retain pathsBasePath from the original config ( #29822 )
...
This fixes a case where we incorrectly used the final config's base path
when resolving relative path mappings in the absence of the baseUrl.
Fixes #29816 .
2024-03-05 16:34:39 -08:00
Pavel Feldman
8bf8091cb1
chore: extract the tele test tree ( #29824 )
2024-03-05 15:11:56 -08:00
Dmitry Gozman
abfd2c4e66
feat(ui mode): text filter should filter by explicit tags ( #29821 )
...
Fixes #29815 .
2024-03-05 10:58:55 -08:00
Playwright Service
0feb05cf98
feat(chromium-tip-of-tree): roll to r1199 ( #29817 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-05 13:11:37 +01:00
Pavel Feldman
e314b83e56
chore: iterate towards tele reporter reuse in vscode (2) ( #29812 )
2024-03-04 19:52:20 -08:00
Dmitry Gozman
5eb8fea616
chore: rewrite worker main through TestInfoImpl._runAsStage ( #29644 )
2024-03-04 19:36:58 -08:00
Rui Figueira
73ffaf65d7
fix(codegen): fill action prevents omnibox navigation recording ( #29790 )
...
This PR is a fix proposal for a bug when trying to record a omnibox
navigation after a recorded action (e.g., `fill`).
The following test, included in this PR, reproduces the problem:
```ts
test('should record omnibox navigations after recordAction', async ({ page, openRecorder, server }) => {
const recorder = await openRecorder();
await recorder.setContentAndWait(`<textarea></textarea>`);
await Promise.all([
recorder.waitForOutput('JavaScript', 'fill'),
page.locator('textarea').fill('Hello world'),
]);
// for performed actions, 5 seconds is the time needed to ensure they are committed
await page.waitForTimeout(5000);
await page.goto(server.PREFIX + `/empty.html`);
await recorder.waitForOutput('JavaScript', `await page.goto('${server.PREFIX}/empty.html');`);
});
```
After performed actions (e.g., `click`), it successfully records the
navigation as long as there's at least a 5 sec. gap between both
actions. That happens because after that 5 sec. interval the performed
action is automatically commited and therefore the navigation is not
stored as a signal of that action.
The proposed fix for recorded actions also forces that action to be
automatically commited after 5 sec (for testing, I'm using 500ms to
speed up the test execution).
2024-03-04 12:31:03 -08:00
Max Schmitt
ef0a24a1b0
chore: remove chromium-with-symbols build ( #29807 )
2024-03-04 20:12:01 +01:00
Pavel Feldman
743a6ffe1d
chore: iterate towards tele reporter reuse in vscode ( #29803 )
2024-03-04 11:08:40 -08:00
Playwright Service
de73af99fa
feat(firefox): roll to r1443 ( #29801 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-04 18:11:17 +01:00