Commit graph

5291 commits

Author SHA1 Message Date
Max Schmitt 96053ed0b5
Revert "fix(reuse): reset Origin Private File System API (#29921)" (#30342)
This reverts commit 048d6669fd.

This change caused the crash for
https://github.com/microsoft/playwright/issues/30339#issuecomment-2049870789.
If we don't execute this code, it does not crash.

Reverting it for now until the Chromium fix lands in Beta/Stable.
2024-04-11 19:07:15 +02:00
Max Schmitt 15b423106f
fix(ui-mode): do not loose run information after writing into testDir (#30312)
Partially reverts https://github.com/microsoft/playwright/pull/30008
that started to reset all test results upon listing tests, including the
test that did just run and triggered re-listing.

https://github.com/microsoft/playwright/issues/30300.
2024-04-10 19:01:51 +02:00
Max Schmitt b2ded9fed1
fix(expect): throw better received error when no element was found (#29890)
Fixes https://github.com/microsoft/playwright/issues/29873
2024-04-10 10:01:19 +02:00
Playwright Service b5e36583f6
feat(webkit): roll to r1998 (#30310)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-09 16:19:58 +02:00
Playwright Service f9b97fa125
feat(chromium-tip-of-tree): roll to r1210 (#30308)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-09 15:10:26 +02:00
Playwright Service 62ae71f96a
feat(webkit): roll to r1997 (#30295)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-08 19:01:49 +02:00
Playwright Service 8deb44cd37
feat(webkit): roll to r1996 (#30291)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-08 14:16:01 +02:00
Sander 1a34c85886
chore(ct): bump vite to v5.2.8 (#30264) 2024-04-08 09:48:05 +02:00
Dmitry Gozman a6827772a5
fix(esmLoader): unref MessagePort in the main thread (#30271)
This prevents the process from not exiting forever due to an open port.
2024-04-06 14:25:57 -07:00
Yury Semikhatsky 3e03c800df
chore: resolve config location earlier (#30275)
Reference https://github.com/microsoft/playwright/issues/29768
2024-04-05 19:32:56 -07:00
Yury Semikhatsky 9e89f292bf
chore: remove usage of configFile from junit reporter (#30273)
Reference https://github.com/microsoft/playwright/issues/29768
2024-04-05 15:44:00 -07:00
Pavel Feldman 3cea258a9c
chore: expose clear cache to test server (#30268) 2024-04-05 09:31:34 -07:00
Pavel Feldman 5043bd55dc
chore: move dev server to config-based framework extensibility (#30234) 2024-04-05 08:39:51 -07:00
Dmitry Gozman d5907f4b13
feat(junit): includeProjectInTestName option (#30233)
Fixes #30246.
2024-04-04 11:04:51 -07:00
Dmitry Gozman 88f2717e87
docs: hint that popup main request is accessible through BrowserContext (#30249)
Fixes #30229.
2024-04-04 09:23:21 -07:00
Playwright Service 345240b9df
feat(chromium-tip-of-tree): roll to r1209 (#30242)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-04 14:12:57 +02:00
Playwright Service 4d4308e7b3
feat(chromium): roll to r1112 (#30235) 2024-04-04 09:25:57 +02:00
dependabot[bot] 0d5964d3f9
chore(deps): bump vite from 5.0.12 to 5.0.13 (#30227) 2024-04-04 09:25:46 +02:00
Pavel Feldman 8ee286b366
chore: migrate to the testserver.initialize (#30226) 2024-04-03 12:50:56 -07:00
Yury Semikhatsky 5c5f0d77e4
chore: move implementation of Config and Project to TestConfig and TestProject (#30212)
Reference https://github.com/microsoft/playwright/issues/29768
2024-04-03 10:47:32 -07:00
Max Schmitt 43745210a5
fix(trace-viewer): exit if given trace.zip does not exist (#30222) 2024-04-03 18:47:03 +02:00
Max Schmitt 010bc29a3c
chore: harden markdown link validation (#30221) 2024-04-03 17:51:32 +02:00
Playwright Service 0734d1e733
feat(webkit): roll to r1995 (#30218)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-03 14:17:06 +02:00
Yury Semikhatsky 63f876a335
chore: remove overrides for type and status (#30211)
Reference https://github.com/microsoft/playwright/issues/29768
2024-04-02 17:42:13 -07:00
Козынченко Вячеслав e58a33a0ae
feat(expect) - add ignoreCase option for toHaveURL (#30192)
feat(expect): add ignoreCase option for toHaveURL

Fixes #30057
2024-04-02 16:20:46 -07:00
Yury Semikhatsky 81bcf2a53b
docs: document FullReporter API (#30186)
* FullConfig split into FullConfig and ConfigInWorker
* FullProject split into FullProject and ProjectInWorker
* Tests can only access {Config, Project}InWorker, while reporters can
only access Full{Config,Project}. This will allow in the future to
change the reporter API independently from the tests.
* Added documentation for the 4 classes.
2024-04-02 16:15:02 -07:00
Yury Semikhatsky 39b3c93b85
docs: note about sharded projects in the merged config (#30184)
Fixes https://github.com/microsoft/playwright/issues/29841
2024-04-02 14:41:23 -07:00
Playwright Service 4baacba4f9
feat(chromium-tip-of-tree): roll to r1208 (#30207)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-02 16:29:09 +02:00
Dmitry Gozman 6d56b453ff
fix(connect): include websocket close reason in the error message (#30203)
When websocket disconnects during `browserType.connect()` call, the
error looks like this now:

```
browserType.connect: Custom error message received over WebSocket
```

Previously, it was a generic error:
```
browserType.connect: Target page, context or browser has been closed
```
2024-04-01 21:05:33 -07:00
Pavel Feldman 6e799fdfa8
chore: do not run setup tasks on test run via server (#30202) 2024-04-01 15:31:09 -07:00
Peng Xiao cc881fdb1f
fix: content editable retarget (#29792)
If `contenteditable` is wrapped into a button or `[role=button]`,
`element.fill` will incorrectly retarget the closest button element.

fix https://github.com/microsoft/playwright/issues/29813
2024-04-01 13:03:09 -07:00
Playwright Service 7f88c4f482
feat(chromium-tip-of-tree): roll to r1207 (#30190)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-31 22:26:52 +02:00
Pavel Feldman 7afd4170ea
chore: opt into stdio forwarding (#30185) 2024-03-30 18:45:10 -07:00
Hansanto a950a7b86b
feat: Support intervals arg for toPass (#30037)
Fixes #30040

# Context

In the `playwright.config` file, we can custom the default `timeout`
property for `expect.toPass` by the property:

```ts title='playwright.config.ts'
export default defineConfig({
  // ...
  expect: {
    toPass: {
      timeout: 60_000,
    },
  },
});
```

However, we can't customize the `intervals` option. So the default value
is always `[100, 250, 500, 1000]`.

# Goal

Add the possibility to customize the intervals option from the
`playwright.config` file.

```ts title='playwright.config.ts'
export default defineConfig({
  // ...
  expect: {
    toPass: {
      timeout: 60_000,
      intervals: [1000, 2000, 3000]
    },
  },
});
```
2024-03-29 10:17:29 -07:00
Yury Semikhatsky 3001c9ac73
fix: preserve test declaration order in html and merged report (#30159)
* Add `Suite.entries` that returns tests and suites in their declaration
order
* Exposed `Suite.type` and `TestCase.type` for discriminating between
different entry types.
* Blob report format is updated to store entries instead of separate
lists for suites and tests.
* Bumped blob format version to 2, added modernizer.

Fixes https://github.com/microsoft/playwright/issues/29984
2024-03-29 10:12:33 -07:00
Yury Semikhatsky 16318ea715
chore: remove unused botName from types (#30172) 2024-03-28 16:16:15 -07:00
Playwright Service 4d8babb27c
feat(webkit): roll to r1994 (#30171)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-28 21:44:19 +01:00
Pavel Feldman baaf8c8093
chore: hide internal commands (#30170) 2024-03-28 12:19:03 -07:00
Andrey Lushnikov 4781b3c3a8
fix(firefox): disable cache when request interception is enabled (#30113)
Fixes #30000
2024-03-28 10:25:37 -07:00
Playwright Service a440800403
feat(chromium-tip-of-tree): roll to r1206 (#30165)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-28 15:53:12 +01:00
Playwright Service ff6bb7546f
feat(chromium): roll to r1111 (#30164)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-28 15:20:52 +01:00
Max Schmitt ffffb81c3b
fix: UI Mode tags without theme applied (#30138)
Trace Viewer theming is override based. By default you should have
something applied - an optional `dark-mode` class might be there too.
2024-03-27 16:46:26 +01:00
Pavel Feldman 5912362089
chore: export MatcherReturnType type (#30139)
Fixes https://github.com/microsoft/playwright/issues/30131
2024-03-27 08:33:00 -07:00
Playwright Service 352609c44f
feat(webkit): roll to r1993 (#30137)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-27 01:49:24 +01:00
Pavel Feldman d7710f0c3e
chore: do not exit UI mode upon page reload (#30135) 2024-03-26 15:49:44 -07:00
Max Schmitt aeb403f851
feat(webkit): dedicated macOS-14 build (#30079)
Fixes https://github.com/microsoft/playwright/issues/30070
2024-03-26 23:05:14 +01:00
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
Playwright Service a431afb818
feat(webkit): roll to r1986 (#29800)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-04 18:11:04 +01:00
Pavel Feldman 68284b0505
chore: inject string pool into the tele receiver (#29781) 2024-03-04 08:46:32 -08:00
Pavel 04e1747038 chore: follow up to align the tsdoc 2024-03-02 07:32:44 -08:00
PaulTriandafilov 8e48ee714d
feat(playwright-core): add remove cookies api (#29698) 2024-03-02 07:27:01 -08:00
Pavel Feldman ef924c14e7
chore: do not use project id in telereporter (#29776) 2024-03-01 21:44:08 -08:00
Pavel Feldman bbcc3c1238
chore: remove private config usage from telereporter (#29771) 2024-03-01 13:14:12 -08:00
Pavel Feldman d0cc5871d8
chore: remove private suite from tele reporter (#29752) 2024-03-01 11:30:28 -08:00
Dmitry Gozman ba3d887660
docs: improve addLocatorHandler docs (#29770) 2024-03-01 11:19:37 -08:00
Renan Greca 4e0bd6286e
docs: Improved JSDoc for expect.toPass (#29722) 2024-03-01 10:51:23 -08:00
Dmitry Gozman a8c26d235c
Revert "chore(role): cache element list by role (#29130)" (#29765)
This reverts commit 1ce3ca25a2.

Added a regression test.

Fixes #29760.
2024-03-01 09:37:28 -08:00
Pavel Feldman ff16d7960c
fix(tsload): fix tsconfig inheritance resolution (#29766)
Fixes https://github.com/microsoft/playwright/issues/29731
2024-03-01 09:36:04 -08:00
Playwright Service f8e441a521
feat(chromium): roll to r1107 (#29762)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-01 16:38:09 +01:00
Playwright Service ceb1dd01aa
feat(chromium-tip-of-tree): roll to r1198 (#29756)
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>
2024-03-01 14:29:12 +01:00
Playwright Service 8780f7ad46
feat(chromium-tip-of-tree): roll to r1197 (#29753)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-01 09:31:56 +01:00
Pavel Feldman baf2cdf936
fix(ct): stop-gap for shared file import (#29744)
Fixes: https://github.com/microsoft/playwright/issues/29739
2024-02-29 19:13:32 -08:00
Yury Semikhatsky c08a4e72d1
chore: call testInfo.snapshotPath directly (#29755)
Reference https://github.com/microsoft/playwright/issues/29719
2024-02-29 16:59:39 -08:00
Pavel Feldman 989cf8f179
chore: remove pw- binaries from ct (#29754) 2024-02-29 16:50:00 -08:00
Dmitry Gozman 0f30cdab23
feat(firefox): roll ff and ff-beta to 1442 (#29751)
This requires changes in `FFPage`.
Also fixing a new ff-specific test that introduced flakiness on the
bots.

Closes https://github.com/microsoft/playwright/pull/29750
Closes https://github.com/microsoft/playwright/pull/29724
Closes https://github.com/microsoft/playwright/pull/29681
Closes https://github.com/microsoft/playwright/pull/29678
2024-02-29 14:44:45 -08:00
Pavel Feldman 532d8e5500
fix(ct): fix the non-react cli entry points (#29748)
Fixes https://github.com/microsoft/playwright/issues/29746
2024-02-29 12:48:15 -08:00
Pavel Feldman 99744d0683
chore: normalize telereceiver type imports (#29745) 2024-02-29 12:31:07 -08:00
Playwright Service 0da29959fa
feat(chromium-tip-of-tree): roll to r1196 (#29742)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-29 20:10:46 +01:00
Playwright Service 30be5e0d26
feat(webkit): roll to r1985 (#29740)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-29 18:58:37 +01:00
Pavel Feldman d9a00342c8
fix(HEAD): revert GET->HEAD migration, net-effect was negative (#29738)
Fixes: https://github.com/microsoft/playwright/issues/29732
2024-02-29 09:02:05 -08:00
Playwright Service 6bd7665bce
feat(webkit): roll to r1984 (#29736)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-29 15:37:32 +01:00
Dmitry Gozman aedd7ca0be
chore: make CRNetworkManager handle multiple sessions (#29721)
It was already handling worker sessions, but not OOPIFs. As a result,
some functionality was properly implemented only for OOPIFs and not for
workers.

This change removes OOPIFs fanout for network-related calls from CRPage
and moves that to the CRNetworkManager, now also covering workers.
2024-02-28 15:51:27 -08:00
Stevan Freeborn 52b803ecf5
feat(trace mode): add on-first-failure mode for traces (#29647)
Implements the changes suggested in #29531
2024-02-28 14:39:18 -08:00
Pavel Feldman d48aadac7e
fix: point to the right cli program export (#29715)
Fixes: https://github.com/microsoft/playwright/issues/29711
2024-02-28 14:05:42 -08:00
Flo Becker 772345c83c
fit(ct): remove unused type import (#29706)
Signed-off-by: Flo Becker <flo@die-beckerei.de>
2024-02-28 13:31:43 +01:00
Pavel Feldman 8264bec01e
fix(ff): stop gap for setInputFiles race (#29696) 2024-02-27 11:50:24 -08:00
Pavel Feldman 9d0430fa26
chore: strengthen linting (#29669) 2024-02-26 16:52:28 -08:00
Yury Semikhatsky 01846b954d
chore: mark 1.43.0-next (#29670) 2024-02-26 16:45:25 -08:00
Lukas Bockstaller bd8d044433
feat(uimode) uses relative paths to establish websocket connection (#29617) 2024-02-26 15:09:24 -08:00
Sander 015a1bcc1c
feat(ct): double unmounting component throws error (#29650) 2024-02-26 11:16:27 -08:00
Sander 303d7fdac9
chore(ct): vue resolve internal type errors (#29649) 2024-02-26 11:15:55 -08:00
Sander 7e502e91b2
fix(ct): solid pass children when they are defined (#29648) 2024-02-26 11:15:08 -08:00
Pavel Feldman 7eb910a652
chore: enable eslint for js (#29639) 2024-02-26 09:39:21 -08:00
Playwright Service 9a38aedf09
feat(firefox): roll to r1440 (#29643)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-24 09:19:46 +01:00
Pavel Feldman 6b5e273b6d
chore: reuse test server wire for reporter events (#29640) 2024-02-23 15:51:20 -08:00
Dmitry Gozman 8d9c67ac5d
chore(test runner): do not nest fixture setups inside each other, similar to teardown (#29619) 2024-02-23 14:47:13 -08:00
Jeppe Reinhold 4d868f6ba8
fix(ct-react+ct-react17): only pass children to React.createElement when they are defined (#29592) 2024-02-23 12:30:42 -08:00
Playwright Service 034b550810
feat(firefox-beta): roll to r1440 (#29637)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-23 21:03:38 +01:00
Pavel Feldman a3aea813bc
chore: implement server-based list files (#29633) 2024-02-23 08:29:44 -08:00
Pavel Feldman 2ca45ff948
chore: use test server as a singleton (#29630) 2024-02-22 15:56:38 -08:00
Pavel Feldman ee93136132
chore: streamline config loader (#29627) 2024-02-22 15:14:13 -08:00
Pavel Feldman ac0787d0c8
chore: expose find related files over test server (#29604) 2024-02-22 13:37:24 -08:00
Playwright Service 50e7d8ca7a
feat(chromium-tip-of-tree): roll to r1195 (#29588)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-22 17:28:09 +01:00
Playwright Service 85df43520e
feat(chromium): roll to r1105 (#29613)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-22 17:27:59 +01:00
Playwright Service fde5db4eb8
feat(webkit): roll to r1983 (#29615)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-22 16:56:42 +01:00
Yury Semikhatsky 5ca8e17a2d
fix: resend overridden headers on redirect without merging (#29605)
Reference https://github.com/microsoft/playwright/issues/13106
2024-02-22 07:44:14 -08:00
Pavel Feldman 82b17bdda1
chore: mark server-related fixture options as such (#29602) 2024-02-21 17:04:36 -08:00
Pavel Feldman ba72f7e429
chore: an iteration on test server (#29589) 2024-02-21 09:27:48 -08:00
Playwright Service 7c9ca0c7ef
feat(chromium): roll to r1104 (#29595)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-21 16:25:15 +01:00
Pavel Feldman a023cd1f57
fix(output): clear output before global setup (#29584) 2024-02-20 14:24:59 -08:00
Dmitry Gozman f9aebda5db
fix(fixtures): attribute teardown step to the right TestInfo instance (#29523) 2024-02-20 12:35:43 -08:00
dependabot[bot] 6c8d81d957
chore(deps): bump ip from 2.0.0 to 2.0.1 in /packages/playwright-core/bundles/utils (#29583) 2024-02-20 20:36:42 +01:00
Jean-François Greffier 6494bb30a0
JUnit codegen (#29424)
Codegen for JUnit

Fixes https://github.com/microsoft/playwright-java/issues/1039

Following JUnit5 integration
https://github.com/microsoft/playwright-java/issues/1369
2024-02-20 11:08:53 -08:00
David 593feea166
fix: use addEventListener instead of onmessage in portTransport.ts (#29581) 2024-02-20 10:04:26 -08:00
Pavel Feldman d573c515a3
chore: add test server stub (#29568) 2024-02-20 09:56:33 -08:00
Max Schmitt 84fefdaac6
fix(console-api): locator filter with hasText (#29563)
Relates https://github.com/microsoft/playwright/issues/29546
2024-02-20 17:35:11 +01:00
Playwright Service 023ef97c49
feat(webkit): roll to r1982 (#29570)
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>
2024-02-20 09:24:50 +01:00
Playwright Service e06f7a881d
feat(webkit): roll to r1981 (#29567)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-19 23:06:00 +01:00
Pavel Feldman a99652b0d9
chore: remove clearCompilationCache, do not push cache it into loader… (#29548) 2024-02-19 10:21:05 -08:00
Playwright Service ce8cda006e
feat(webkit): roll to r1980 (#29540)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-19 09:31:03 +01:00
Dmitry Gozman f414227ed8
chore(test runner): make FixturePool.registrations private (#29539)
This way everyone resolves through a public function instead of a map
lookup, which is sometimes wrong.
2024-02-16 20:29:33 -08:00
Yury Semikhatsky f3fde992eb
chore: remove --project-grep, add wildcard support (#29537)
Reference #15128
2024-02-16 19:18:00 -08:00
Pavel Feldman 043c5aaffb
chore: follow up to web socket util extraction (#29536) 2024-02-16 18:16:45 -08:00
Pavel Feldman 4f1d8cdd63
chore: hide test server related cli commands (#29532) 2024-02-16 14:32:44 -08:00
Dmitry Gozman 269a293ba1
chore(test runner): allow TestInfoImpl without a TestCase (#29534)
This will be useful to run `beforeAll`/`afterAll` hooks with a separate
`TestInfo` instance, as well as run use helpers like
`_runAndFailOnError()` during scope teardown.
2024-02-16 12:43:13 -08:00
Dmitry Gozman dbf0b25146
chore(test runner): do not rely on zones for fixture steps (#29519) 2024-02-16 10:51:45 -08:00
Dmitry Gozman dc9cddde95
chore: do not rely on zones for predefined steps (#29485)
This fixes some edge cases where fixtures and steps inside them were
attached to the wrong parent (see the new test).
This will also allow to replace some `runAsStep` calls with a flat list
of tasks to do that do not rely on lexical scope.
2024-02-15 12:49:08 -08:00
Dmitry Gozman 08afb34c14
chore(test runner): make timeout error an Error (#29515) 2024-02-15 11:38:13 -08:00
Dmitry Gozman bd5403dcad
chore: remove --tag and tagFilter (#29468)
This makes new tags filtered by the `grep`. New `TestCase.tags` API now
includes both old and new tags.
2024-02-15 11:37:16 -08:00
Sylvain Finot b11b118e02
feat(chromium): expose parameters to generate outline / tagged PDF (#29494)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2024-02-15 17:28:04 +01:00
Playwright Service a3d62acbdd
feat(chromium): roll to r1103 (#29506)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-15 17:03:00 +01:00
Playwright Service 2be5e97a29
feat(chromium-tip-of-tree): roll to r1194 (#29507)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-15 17:02:47 +01:00
Max Schmitt ce5d970929
docs: make sure to await route.* methods (#29489)
Fixes https://github.com/microsoft/playwright/issues/29471
Follow-up on https://github.com/microsoft/playwright/pull/28745.
2024-02-14 17:57:12 +01:00
Playwright Service 593bf35eb7
feat(webkit): roll to r1979 (#29493)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-14 16:10:57 +01:00
Pavel Feldman 217c0618df
chore: rename find-related-tests to find-related-test-files (#29483) 2024-02-13 15:40:49 -08:00
Yury Semikhatsky 2693614c7a
Revert "fix(chromium): best effort 304 status on reload (#29373)" (#29481)
This reverts commit 17bc8f9a15.

Reference https://github.com/microsoft/playwright/issues/28779
Fixes https://github.com/microsoft/playwright/issues/29441
2024-02-13 11:43:04 -08:00
Pavel Feldman 7aef5249d8
chore: pass the private data to the runner via config (#29467) 2024-02-13 09:34:03 -08:00
Playwright Service ff4191335d
feat(chromium-tip-of-tree): roll to r1193 (#29473)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-13 14:55:03 +01:00
Sander e14ded7af3
fix(ct): svelte export MountResult (#29385)
related to https://github.com/microsoft/playwright/pull/29375
2024-02-13 12:18:43 +01:00
Max Schmitt 30557ed28c
fix(electron): stalling on delayed process close (#29431) 2024-02-13 10:25:46 +01:00
Dmitry Gozman f605a5009b
fix(esmLoader): do not serialize the whole compilation cache after each import (#29464)
Instead, send the newly created cache entry only.

References #29418.
2024-02-12 16:39:53 -08:00
Max Schmitt b947639d3a
fix(ct): fix component.d.ts core types (#29463)
Fixes https://github.com/microsoft/playwright/issues/29461
2024-02-12 22:37:31 +01:00
Max Schmitt fe81790221
fix(accessibility): firefox with aria-invalid element (#29462)
Fixes https://github.com/microsoft/playwright/issues/29459
2024-02-12 12:12:31 -08:00
Max Schmitt 498b8bb269
fix(tracing): do not serialise out-of-process Buffers (#29425) 2024-02-12 21:03:38 +01:00
Yury Semikhatsky 7834beb932
chore: extract --project-grep option for matching with regex (#29445)
Reference https://github.com/microsoft/playwright/issues/15128
2024-02-10 11:19:00 -08:00
Pavel Feldman 586d14f02c
chore: add find-related-tests command (#29439) 2024-02-09 19:02:42 -08:00
Dmitry Gozman f0244b8a76
chore: rename handleLocator to addLocatorHandler (#29443) 2024-02-09 15:18:50 -08:00
Max Schmitt 61b88a851d
fix(merge): blobs before tags API (#29438)
Fixes https://github.com/microsoft/playwright/issues/29434
2024-02-09 20:47:38 +01:00
Yury Semikhatsky 7a86bf4af6
chore: delete store.ts (#29423) 2024-02-08 12:55:18 -08:00
Pavel Feldman 7f81c6e138
feat(ct): allow clearing cached build and test transformations (#29410) 2024-02-08 10:24:01 -08:00
Playwright Service 32a1d49729
feat(webkit): roll to r1978 (#29421)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-08 19:19:30 +01:00
Dmitry Gozman 61955e55b1
fix(handleLocator): address API review feedback (#29412)
- docs improvements;
- `force: true` ignores `handleLocator`;
- wrapping an internal call;
- more test cases;
- `pw:api` log entries for this API.
2024-02-08 07:39:05 -08:00
Playwright Service a131843c59
feat(chromium-tip-of-tree): roll to r1192 (#29416)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-08 15:41:53 +01:00
Playwright Service 03659e1d2d
feat(chromium): roll to r1102 (#29415)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-08 14:00:50 +01:00
Pavel Feldman 84dea09cb9
fix(ct): resolve components used in tests during the vite build (#29407) 2024-02-07 20:39:45 -08:00
Dmitry Gozman 3abd7c808e
fix(connectOverCDP): send custom headers in /json/version request (#29408)
Fixes #29403.
2024-02-07 17:41:21 -08:00
Dmitry Gozman 6b37a706db
chore(codegen): disable multiple locators choice in UI (#29409)
This feature needs more polish to be released.
2024-02-07 17:08:04 -08:00
Dmitry Gozman 3331a40647
feat(test runner): tags/annotations (#29248)
API changes:
- `test(title, details, body)` where details contain `tag` and
`annotation`.
- similar `details` property added to `test.skip`, `test.fail`,
`test.fixme`, `test.only`, `test.describe` and other `test.describe.*`
variations.
- `TestProject.tagFilter`/`TestConfig.tagFilter` that supports logical
tag expressions with `(`, `)`, `and`, `or` and `not`.
- `--tag` CLI option to filter by tags.
- New annotations are available in `TestInfo.annotations` and
`TestCase.annotations`.
- New tags are available in `TestCase.tags`.
    
Reporter changes:
- `json` reporter includes new tags in addition to old `@smoke`-style
tags. **Breaking**: tags are now listed with the leading `@` symbol.
- `html` reporter filters by old and new tags with the same `@smoke`
token.

Fixes #29229, fixes #23180.
2024-02-07 16:31:25 -08:00
Playwright Service 58f580dbde
feat(chromium-tip-of-tree): roll to r1191 (#29401)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-07 19:28:54 +01:00
Yury Semikhatsky 721d84f17a
fix(har): do not throw on -1 status code (#29371)
Fixes https://github.com/microsoft/playwright/issues/29311
2024-02-06 10:17:29 -08:00
Dmitry Gozman 18ce0fa370
fix(trace viewer): replace blue dot with red dot+warning (#29380)
Also how the explanation on hover.

Fixes #29263.
2024-02-06 08:27:45 -08:00
Playwright Service cfefac74ab
feat(webkit): roll to r1977 (#29377) 2024-02-06 09:18:46 +01:00
Pavel Feldman 20699c36ba
chore: simplify types handling in toHaveScreenshot (#29374) 2024-02-05 19:07:30 -08:00
Dmitry Gozman fb29d90052
docs: remove overloads from test.* APIs (#29376) 2024-02-05 19:03:04 -08:00
Pavel Feldman 286adf3af3
chore(ct): export MountResult (#29375)
Fixes https://github.com/microsoft/playwright/issues/27509
2024-02-05 17:19:39 -08:00
Yury Semikhatsky 17bc8f9a15
fix(chromium): best effort 304 status on reload (#29373)
Reference https://github.com/microsoft/playwright/issues/28779
2024-02-05 16:56:42 -08:00
Pavel Feldman 5f5e058e96
fix(fixtures): tear down base fixture after error in derived (#29337)
Fixes https://github.com/microsoft/playwright/issues/29325
2024-02-05 16:47:15 -08:00
Max Schmitt 8c007fd3fc
fix(toHaveScreenshot): stylePath as first arg (#29372) 2024-02-05 22:52:16 +01:00
Max Schmitt 47f8ba2a04
feat(electron): expose ElectronApplication console events (#29322)
Fixes https://github.com/microsoft/playwright/issues/5905
2024-02-05 21:30:54 +01:00
Yury Semikhatsky 79e379fc11
chore: do not set metadata.error for expect failure results (#29310)
The metadata.error change was brought back in
https://github.com/microsoft/playwright/pull/29271and it broke java port
as we could have error and result set simulteniously. This PR moves the
logic to the trace recorder instead and keeps the protocol contract
clear that either error or result is present, but not both.
2024-02-02 16:41:08 -08:00
Pavel Feldman dd0ef72cd8
feat(tsconfig): respect tsconfig references (#29330)
Fixes https://github.com/microsoft/playwright/issues/29256
2024-02-02 16:18:44 -08:00
Dmitry Gozman b9565ea26e
chore(test runner): refactor beforeAll/afterAll hooks and modifiers (#29309)
- Modifiers that only depend on the worker fixtures are implemented as
`beforeAll` hooks.
- Modifiers that depend on test fixtures are implemented as `beforeEach`
hooks.
- Pushed `_runAndFailOnError` down the stack, wrapping individual hooks
instead of the whole "before hooks" section.
- Reused the same code to run `beforeAll` and `afterAll` hooks and
modifiers.

**Behavior change**: `test.skip()` inside a `beforeAll` now skips the
hook and all tests in the suite.
2024-02-02 14:25:46 -08:00
Max Schmitt a6e0af6767
feat: parse projects option as RegExp (#29327)
Fixes https://github.com/microsoft/playwright/issues/15128
Relates https://github.com/microsoft/playwright/pull/17244

---------

Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Yury Semikhatsky <yurys@chromium.org>
2024-02-02 23:05:20 +01:00
Playwright Service 9e383c8b19
feat(webkit): roll to r1976 (#29326)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-02 18:26:51 +01:00
Max Schmitt 7d64ca4c54
fix(trace viewer): correctly trim locations on Windows (#29321)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-02-02 18:18:34 +01:00
Playwright Service ab95aabec5
feat(webkit): roll to r1975 (#29320)
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>
2024-02-02 16:00:51 +01:00
Playwright Service 9ed344a765
feat(webkit): roll to r1974 (#29319)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-02 16:00:14 +01:00
Pavel Feldman fcd3c7b523
Revert "fix(ct): resolve paths before detecting JS" (#29312)
Reverts microsoft/playwright#29308
2024-02-01 21:11:30 -08:00
Pavel Feldman eb8cbbbf62
fix(ct): resolve paths before detecting JS (#29308) 2024-02-01 21:06:31 -08:00
Ian Macalinao 08729cd2e6
fix(recorder): reference Language enum for recorderTypes (#29294) 2024-02-01 13:48:30 -08:00
Rui Figueira b88a008a87
feat(codegen): slider support (#29087) 2024-02-01 13:45:19 -08:00
Pavel Feldman 020a39860d
chore: polish network panel highlight (#29299)
Fixes https://github.com/microsoft/playwright/issues/29287
2024-02-01 13:44:26 -08:00
Pavel Feldman 4784139bb0
fix(test): do not allow mixing tests from different types (#29284)
Fixes https://github.com/microsoft/playwright/issues/29282
2024-02-01 11:59:56 -08:00
Dmitry Gozman cf6549687c
fix(trace viewer): reveal error location when it comes from the test (#29268)
Errors coming from the test runner do not have an associated `action`,
but have a `stack` that we can reveal.
2024-02-01 08:23:07 -08:00
Playwright Service 80189c9daf
feat(chromium-tip-of-tree): roll to r1190 (#29291)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-01 14:42:55 +01:00
Playwright Service b32a539470
feat(chromium): roll to r1101 (#29290)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-01 14:23:40 +01:00
Dmitry Gozman 7cb886ce07
fix(codegen): refresh overlay listeners upon documentElement change (#29277)
This is similar to other listeners that we refresh upon
`onGlobalListenersRemoved`. Covered by sometimes flaky codegen tests.
2024-01-31 17:08:15 -08:00
Yury Semikhatsky b5082e10fd
fix: do not retry missing snapshot errors (#29272)
When `updateSnapshots === 'missing'` we generate new expectations on the
first attempt and don't retry the test afterwards instead of trying it
retries-1 times and only writing new expectation on the last attempt.
This logic infects all serial mode suites that contain the test with
missing expectations, so they also will not be retried.

Reference https://github.com/microsoft/playwright/issues/29073
2024-01-31 15:33:38 -08:00
Playwright Service ad0be80717
feat(webkit): roll to r1973 (#29274)
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>
2024-02-01 00:31:13 +01:00
Max Schmitt 622153db18
Revert "chore: remove fake error from expect calls (#28112)" (#29271)
This reverts commit 2c3955a28c.

Relates https://github.com/microsoft/playwright-python/issues/2258
2024-01-31 23:43:37 +01:00
Playwright Service 15a20259b9
feat(webkit): roll to r1972 (#29269)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-31 23:43:26 +01:00
Pavel Feldman aff6cf3c83
chore: extract ws server util (#29247) 2024-01-30 14:36:51 -08:00
Dmitry Gozman aeafd44726
chore: strip Authorization header on ws redirect (#29246) 2024-01-30 14:26:25 -08:00
Playwright Service 4c0db7ba78
feat(firefox-beta): roll to r1439 (#29243)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-30 19:44:36 +01:00
Playwright Service 7b440d48f7
feat(chromium-tip-of-tree): roll to r1189 (#29244)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-30 19:43:44 +01:00
Playwright Service 082d4d5552
feat(firefox): roll to r1439 (#29242)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-30 19:05:18 +01:00
Yury Semikhatsky 13550b7329
fix: add new line before sourceURL (#29199)
Reference https://github.com/microsoft/playwright/issues/29116
2024-01-29 15:00:42 -08:00
Yury Semikhatsky ad6e40538a
fix(electron): make sure user arguments go first (#29204) 2024-01-29 15:00:12 -08:00
Pavel Feldman c85308d717
chore: remove deprecated debug controller events (#29203) 2024-01-29 14:58:29 -08:00
Tanay Vardhan e9a8fc944c
fix: Add support for exif jpeg file formats (#29208) 2024-01-29 14:58:13 -08:00
Bruno Mańczak 3e2d5b2800
docs: add an example of how to use "+" key as part of a shortcut (#29221) 2024-01-29 14:57:10 -08:00
Max Schmitt 4df4054f19
feat(driver): add option to strip out lone surrogates (#29179)
https://github.com/microsoft/playwright-dotnet/issues/2819
2024-01-29 22:14:55 +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
Max Schmitt 36ebdfb441
fix: provisional fix for Trace Viewer source 404 (#29192)
Motivation: Sometimes the files are not available anymore on the Service
Worker side. The Trace Viewer frontend then falls back to `file?path=`
and uses its response, no matter what the response status is.

This patch checks for the response status code before using its
response.

e.g. https://github.com/microsoft/playwright-dotnet/issues/2775 after
some time / and some other reports.

---------

Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-01-27 14:05:15 +01:00
Dmitry Gozman 5ee7179b13
fix(test runner): make TestTracing responsible for trace management (#29181)
... instead of a fixture.

Fixes #29133, fixes #28733, fixes #28476.
2024-01-26 15:52:25 -08:00
Yury Semikhatsky 82981a8091
fix: interception id not found error in route.continue (#29180)
We stopped catching all exceptions in
https://github.com/microsoft/playwright/pull/28539 in hope that we'll
get loadingFailed even before Fetch.continue/fulfill command's error.
Turns out this is racy and may fail if the test cancels the request
while we are continuing it. The following test could in theory reproduce
it if stars align and the timing is good:

```js
it('page.continue on canceled request', async ({ page }) => {
  let resolveRoute;
  const routePromise = new Promise<Route>(f => resolveRoute = f);
  await page.route('http://test.com/x', resolveRoute);

  const evalPromise = page.evaluate(async () => {
    const abortController = new AbortController();
    (window as any).abortController = abortController;
    return fetch('http://test.com/x', { signal: abortController.signal }).catch(e => 'cancelled');
  });
  const route = await routePromise;
  void page.evaluate(() => (window as any).abortController.abort());
  await new Promise(f => setTimeout(f, 10));
  await route.continue();
  const req = await evalPromise;
  expect(req).toBe('cancelled');
});
```

Fixes https://github.com/microsoft/playwright/issues/29123
2024-01-25 16:54:42 -08:00
Yury Semikhatsky 0113e8455b
fix: make TeleSuite.project work for all suites (#29177)
Fixes https://github.com/microsoft/playwright/issues/29173
2024-01-25 13:44:08 -08:00
Max Schmitt 4c4789c740
chore: validate deps during install (#28932)
Motivation: On Windows we call around 50 times `PrintDeps.exe` which
takes on a very fast machine 500+ms. On Linux we do it around 120 times
(`ldd`) which takes around 150ms.

This change validates the dependencies once on browser install (`npx
playwright install`). In case its failing, it will emit a warning, in
case of a success, it will create a marker file that the binary has been
validated. For future `launch()` calls, we'll read this file and if
exists, we'll not validate again. Otherwise we'll validate again.

Note: If the marker file is older than 30 days, the browser will be
validated again.
2024-01-25 20:55:53 +01:00
Pavel Feldman 6a14b1dc51
chore: automatically detect the dev server (#29176) 2024-01-25 11:46:47 -08:00
Pavel Feldman 24ff2e2bad
chore: provisional fix for win install test failure (#29175) 2024-01-25 11:46:30 -08:00
Pavel Feldman b5e175e6e2
fix: tolerate wrongly-typed annotations (#29162)
Fixes https://github.com/microsoft/playwright/issues/29149
2024-01-25 11:35:17 -08:00
Pavel Feldman f7fb1e4d4e
chore(ct): use sticky test server if available (#29136) 2024-01-25 08:36:13 -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
Playwright Service 129f5bfdbe
feat(chromium): roll to r1100 (#29167)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-25 15:24:49 +01:00
Playwright Service 6a04ed6a1e
feat(chromium-tip-of-tree): roll to r1188 (#29169)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-25 15:24:33 +01:00
Playwright Service 86c881f206
feat(chromium-tip-of-tree): roll to r1187 (#29153)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-24 18:36:00 +01:00
Max Schmitt ba8d141de8
chore: drop Ubuntu 18.04 (#29145)
This will now yield:

```
root@a85fb37f0c96:/work# npx playwright install
Failed to install browsers
Error: ERROR: Playwright does not support chromium on ubuntu18.04-x64
```

On Ubuntu 18.04.
2024-01-24 17:46:20 +01:00
Pavel Feldman cec2ff1772
chore: split cli processing into cli endpoint and program (#29131) 2024-01-23 15:22:09 -08:00
Dmitry Gozman 1ce3ca25a2
chore(role): cache element list by role (#29130) 2024-01-23 13:45:26 -08:00
Pavel Feldman 8898a537e0
chore: extract a dev variation of the ct plugin (#29126) 2024-01-23 12:55:28 -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
Dmitry Gozman 5bc5056a1f
chore(role): cache pseudo content calculation (#29115) 2024-01-23 10:09:23 -08:00
Pavel Feldman 41c15cb176
chore: move vite root dir into template folder (#29081) 2024-01-23 09:40:05 -08:00
Max Schmitt d89ed88679
docs: do not recommend PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD anymore (#29121) 2024-01-23 09:12:47 -08:00
Playwright Service 3e2d7fe7e7
feat(chromium): roll to r1099 (#29120)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-23 13:34:59 +01:00
Dmitry Gozman 9b974e0026
chore: speedup frequent element text normalization (#29113)
We cache `ElementText` for frequent operations, but then call
`normalizeWhitespace` on it every time which burns a lot of CPU.
2024-01-22 21:33:56 -08:00
Yury Semikhatsky fbf87ef904
fix: test.fail wrapper method (#29112)
Fixes https://github.com/microsoft/playwright/issues/29104
2024-01-22 19:47:27 -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 db00aa7305
fix: remove unused TestInfo.stdout/stderr (#29076)
https://github.com/microsoft/playwright/issues/29062
2024-01-22 19:22:31 +01:00
Playwright Service 4e877f270d
feat(webkit): roll to r1970 (#29103)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-22 19:22:11 +01:00
Max Schmitt c3566d259f
chore: better error messages when stable channel installations fail on Windows (#29077)
https://github.com/microsoft/playwright/issues/29004
2024-01-22 18:15:35 +01:00
dependabot[bot] c635fc9a19
chore(deps): bump vite from 5.0.11 to 5.0.12 (#29078) 2024-01-19 17:23:07 -08:00
Yury Semikhatsky d7958ba4ad
chore: quote path only if contains whitespaces (#29079)
Otherwise we always quote as `trace.zip` matches \W.

This is a follow-up to 674988c633
Reference https://github.com/microsoft/playwright/issues/29039
2024-01-19 16:52:39 -08:00
Pavel Feldman d61f99034a
fix(ct-react): do not reset mount hooks upon update (#29072)
Fixes https://github.com/microsoft/playwright/issues/29058
2024-01-19 12:55:36 -08:00
Dmitry Gozman f3fac6f4e9
feat: page.handleLocator that closes any interstitial pages/dialogs (#29029) 2024-01-19 12:35:00 -08:00
Pavel Feldman 71a48c2562
chore: migrate ct to vite5 (#29033)
Closes https://github.com/microsoft/playwright/issues/28607
2024-01-19 11:13:03 -08:00
Sander 54c57fdebe
chore(ct): revert export mount result (#29070) 2024-01-19 11:11:23 -08:00
Max Schmitt e551506c9e
Revert "feat(codegen): add range input recording support (#28767)" (#29069) 2024-01-19 19:47:59 +01:00
Yury Semikhatsky 674988c633
chore: add quotes to the path only when necessary (#29057)
This is a follow-up to c76f5294ce
Reference https://github.com/microsoft/playwright/issues/29039
2024-01-19 10:27:15 -08:00
Playwright Service 057b0dd0ab
feat(firefox-beta): roll to r1438 (#29063)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-19 13:27:53 +01:00
Pavel Feldman 4010940315
chore: move off babel proposals to plugins (#29053) 2024-01-18 17:50:52 -08:00
Dmitry Gozman b7d22b64e8
feat(merge): prepend bot name to global errors (#29055)
This way one can figure out where does the error come from.

An example merged report that exhibits the issue:
https://mspwblobreport.z1.web.core.windows.net/run-7563628632-1-2328b83af75801ab76bb06c214fee483cf5bc07c/index.html#?q=s%3Afailed%20s%3Aflaky
2024-01-18 15:11:32 -08:00
Yury Semikhatsky c76f5294ce
fix: quote trace file path when printing error message (#29052)
Fixes https://github.com/microsoft/playwright/issues/29039
2024-01-18 14:23:12 -08:00
Max Schmitt 4a45724633
fix: open 0.0.0.0 as localhost (#29054)
Fixes https://github.com/microsoft/playwright/issues/29047
2024-01-18 22:21:49 +01:00
Playwright Service 84cf633c92
feat(chromium-tip-of-tree): roll to r1186 (#29044)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-18 21:24:28 +01:00
Playwright Service 7d7198c055
feat(webkit): roll to r1969 (#29050)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-18 11:36:43 -08:00
Pavel Feldman 03815b9eb1
chore: migrate to Node 18 lockFileVersion 3 (#29051) 2024-01-18 11:33:23 -08:00
Pavel Feldman ee3960529e
fix(ct): allow passing date, url, bigint as properties (#29031)
Closes: https://github.com/microsoft/playwright/issues/29028,
https://github.com/microsoft/playwright/issues/29027
2024-01-17 20:43:28 -08:00
Dmitry Gozman 300a0127de
Revert "feat(trace): allow Trace Viewer to include credentials when fetching traces cross-origin (#28502)" (#29024)
This reverts commit 3f3f332060.

References #29019.
2024-01-17 10:40:58 -08:00
Pavel Feldman 1db18711a2
fix(ct): move import list into the compilation cache data (#28986) 2024-01-16 19:31:19 -08:00
Dmitry Gozman e6d51cf7bd
chore: refactor actionability check to go through node-side retry (#28982)
This allows to inject a checkpoint in between the actionability checks.

Drive-by: cleanup `InjectedScriptPoll`-related code.
2024-01-16 19:11:41 -08: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 775ef30e43
fix(test runner): make TestCase.id not depend on the path separator (#29010)
Fixes #28991.
2024-01-16 13:32:47 -08:00
Playwright Service ab7d1b5e53
feat(webkit): roll to r1968 (#29009)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-16 20:26:36 +01:00
Playwright Service 25ec071277
feat(chromium-tip-of-tree): roll to r1185 (#29003)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-16 17:35:21 +01:00
jonghoonpark 4c0a972b69
feat(expect): Make toPass's option configurable by TestConfig (#28231)
Co-authored-by: jonghoon.park <jonghoon.park@lucentblock.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2024-01-16 12:28:38 +01:00
Pavel Feldman bbe26dbdbb
chore: build import registry source (#28978) 2024-01-14 08:41:40 -08:00
Pavel Feldman 92ad1b385c
chore: refactor import processing in ct (#28975) 2024-01-12 20:02:27 -08:00
Max Schmitt f2ebc53f18
chore: mark version 1.42.0-next (#28973) 2024-01-13 00:20:27 +01: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
Max Schmitt 7670fd21e2
fix(esm): >= Node.js 21 globalPreload -> initialize (#28526)
https://github.com/microsoft/playwright/issues/28524
https://github.com/microsoft/playwright/issues/28732


https://nodejs.org/en/blog/announcements/v21-release-announce#module-customization-hook-globalpreload-removed-use-register-and-initialize-instead
2024-01-12 09:51:45 -08:00
Dmitry Gozman 90665ef056
docs: update auto-waiting doc (#28960)
- Replace action names with links to `Locator.click`.
- Remove "Attached" check in favor of "locator resolves to a single
element".
- Replace getter methods in assertion section with auto-retriying
assertions.
- Add missing actions.

---

<img width="837" alt="Screenshot 2024-01-11 at 1 02 34 PM"
src="https://github.com/microsoft/playwright/assets/9881434/1946678d-6a7e-45cf-a299-2f18cb3fb5a5">
2024-01-12 09:33:42 -08:00
Max Schmitt 808359ba6c
fix(driver): add external commands only for JS binding (#28968)
Motivation: Before this change if a language binding invoked the CLI
with `--help` or without any arguments (which will also show the help
text) it was suggesting that test/merge-reports/show-report is something
we support. After this change this does not get shown anymore.
2024-01-12 18:26:00 +01:00
Yury Semikhatsky 8936885a67
fix(chromium): preserve header overrides in redirects (#28962)
Reference https://github.com/microsoft/playwright/issues/28758
2024-01-12 08:55:20 -08:00
Playwright Service 69c9e985bf
feat(webkit): roll to r1967 (#28952)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-12 15:01:47 +01:00
Playwright Service 229ec522ac
feat(chromium-tip-of-tree): roll to r1184 (#28950)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-11 14:38:26 +01:00
Playwright Service 3ace946fc2
feat(chromium): roll to r1097 (#28949)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-11 14:38:16 +01:00
Pavel Feldman 38822d1014
chore: remove manual __esModule override (#28935) 2024-01-10 16:28:08 -08:00
Pavel Feldman a0750b7854
chore: network panel polish (#28924) 2024-01-10 15:28:33 -08:00
Yury Semikhatsky 19a4f15eb6
chore: remove redundant checks from network interception (#28922)
We only intercept requests in Playwright so these fields are always
undefined.
2024-01-09 13:35:51 -08:00
Max Schmitt 2ddf3a45f9
chore(firefox): rewrite error message for $HOME directory ownership mismatch (#28921)
Fixes https://github.com/microsoft/playwright/issues/28896
2024-01-09 20:40:39 +01:00
Playwright Service 4b99d21dbd
feat(chromium-tip-of-tree): roll to r1183 (#28913)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-09 14:39:59 +01:00
Playwright Service a519af6830
feat(webkit): roll to r1966 (#28911)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-09 11:03:40 +01:00
Max Schmitt feece0f569
fix(deps): check only .dll/.exe files on Windows (#28901)
Fixes https://github.com/microsoft/playwright/issues/28846
2024-01-08 21:53:18 +01:00
Sander 28875fa608
chore(ct): dedupe types (#28816) 2024-01-07 19:45:42 -08:00
Playwright Service 76ab990208
feat(firefox-beta): roll to r1437 (#28888)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-07 20:23:06 +01:00
Playwright Service f428f0793f
feat(firefox): roll to r1438 (#28882)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-05 21:11:34 +01:00
geke-scottlogic 6bd61cd8c6
docs: Improve clarity on toHaveText and toContainText assertions (#28623)
This closes https://github.com/microsoft/playwright/issues/28058.
2024-01-05 09:20:50 -08:00
Playwright Service 572e656be0
feat(chromium): roll to r1096 (#28878)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-05 13:21:50 +01:00
Playwright Service ce2ffd90f5
feat(firefox-beta): roll to r1436 (#28876)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-05 11:17:44 +01:00
Playwright Service 76cd76ff1c
feat(webkit): roll to r1965 (#28868)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-04 20:49:05 +01:00
Playwright Service edf369ea3c
feat(chromium-tip-of-tree): roll to r1182 (#28864)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-04 17:19:56 +01:00
Sander eebb69121e
fix(ct): vue update slots (#28835)
Due to [Vue 3.4](https://blog.vuejs.org/posts/vue-3-4): _"refactored
reactivity system that makes effect triggering more accurate and
efficient"_

closes: https://github.com/microsoft/playwright/issues/28830
2024-01-03 20:48:41 +01: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
Playwright Service 620c82af48
feat(webkit): roll to r1964 (#28839) 2024-01-03 09:06:59 +01:00
Playwright Service 3dfd7edf99
feat(chromium-tip-of-tree): roll to r1181 (#28831)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-02 14:35:15 +01:00
Playwright Service a7c9060731
feat(webkit): roll to r1963 (#28820)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-01-02 09:37:18 +01:00
Rui Figueira 778828cc43
feat(codegen): add range input recording support (#28767) 2023-12-30 17:22:57 -08:00
Playwright Service 214b3733b2
feat(webkit): roll to r1962 (#28803) 2023-12-28 15:18:18 +01:00
Playwright Service 19b309f80b
feat(chromium-tip-of-tree): roll to r1180 (#28804) 2023-12-28 15:17:53 +01:00
Playwright Service 2d5488d8e3
feat(chromium-tip-of-tree): roll to r1179 (#28787)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-26 21:00:39 +01:00
Playwright Service 39abc6386f
feat(webkit): roll to r1961 (#28776)
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-12-23 09:25:07 +01:00
Playwright Service b06b772ae7
feat(webkit): roll to r1960 (#28777) 2023-12-23 09:23:37 +01:00
Sander 4d62784eeb
feat(ct): react component as props (#28382)
closes: https://github.com/microsoft/playwright/issues/28367#issuecomment-1830298864
2023-12-22 20:51:59 -08:00
Pavel Feldman afb2582eaa
chore: render only react child (#28775)
Fixes https://github.com/microsoft/playwright/issues/28410
2023-12-22 17:15:49 -08:00
Pavel Feldman fc5f34369a
chore: only highlight uncaught errors in source (#28772) 2023-12-22 14:19:53 -08:00
Playwright Service 9219a0eb90
feat(webkit): roll to r1959 (#28761) 2023-12-22 22:09:37 +01:00
Pavel Feldman eeb9e06d5e
chore: box step w/o modifying runtime errors (#28762) 2023-12-22 12:00:17 -08:00
Yury Semikhatsky 5f14d42723
Revert "fix: respect .only in --list mode" (#28770)
This reverts commit 9a5bfc54e5.

As it breaks extension.

Reference #28709
2023-12-22 11:03:30 -08:00
Playwright Service b62317c056
feat(webkit): roll to r1958 (#28760)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-22 20:03:07 +01:00
Pavel Feldman f5c57d0e98
chore: reuse image diff component in trace/html (#28727)
Fixes https://github.com/microsoft/playwright/issues/28685
2023-12-22 10:17:35 -08:00
Yury Semikhatsky ff99aa33b0
fix: input events triggered by playwright actions should have composed=true (#28730)
Fixes https://github.com/microsoft/playwright/issues/28726
2023-12-21 15:25:16 -08:00
Yury Semikhatsky 207585ef63
docs: clarify tracing name parameter semantics (#28759)
Fixes https://github.com/microsoft/playwright/issues/28751
2023-12-21 15:24:54 -08:00
Pavel Feldman 5d9e08ac61
chore: box soft steps (#28749)
Fixes https://github.com/microsoft/playwright/issues/28259
2023-12-21 12:16:03 -08:00
Playwright Service ef81b05237
feat(chromium-tip-of-tree): roll to r1178 (#28756) 2023-12-21 19:58:08 +01:00
Yury Semikhatsky db703a98ea
docs: no floating promises in route handlers (#28745)
Fixes https://github.com/microsoft/playwright/issues/28737
2023-12-21 09:57:35 -08:00
Playwright Service 8161a7401f
feat(webkit): roll to r1957 (#28752)
Fixes https://github.com/microsoft/playwright/issues/28643

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-21 10:45:14 +01:00
Playwright Service e95b424b83
feat(firefox-beta): roll to r1435 (#28740)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-20 17:23:33 +01:00
Playwright Service a827011c3b
feat(firefox): roll to r1435 (#28739)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-20 15:46:47 +01:00
Yury Semikhatsky 6d583a2dbe
fix: exit from merge-reports in type: "module" projects (#28725)
Fixes https://github.com/microsoft/playwright/issues/28699
2023-12-19 16:49:25 -08:00
Max Schmitt b88b194e9f
feat(run-server): expose --host (#28723) 2023-12-19 23:19:46 +01:00
Yury Semikhatsky dcaa5758f0
fix: respect .only in --list mode (#28721)
Fixes https://github.com/microsoft/playwright/issues/28709
2023-12-19 12:24:54 -08:00
George Griffiths 4c848c0daf
feat(expect): Allow expect timeout to be configured outside of the runner (#28716)
Fixes #28702
2023-12-19 10:55:05 -08:00
Ben McCann bbf588a992
feat(ct): upgrade to vite-plugin-svelte 3 (#28624) 2023-12-19 19:48:37 +01:00
Yury Semikhatsky afc1ac7063
fix: errors in evaluate should be JavaScriptErrorInEvaluate (#28706)
Fixes https://github.com/microsoft/playwright/issues/28690
2023-12-19 10:47:43 -08:00
Playwright Service b33a04bc88
feat(chromium-tip-of-tree): roll to r1177 (#28712)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-19 16:35:02 +01:00
Dmitry Gozman 6b178d22e2
fix: do not produce TargetClosedError: <message> errors (#28704) 2023-12-18 12:34:43 -08:00
Max Schmitt 696237205a
fix(ui-mode): disconnected error styling (#28681)
Fixes https://github.com/microsoft/playwright/issues/28679
Fixes https://github.com/microsoft/playwright/issues/28680
2023-12-18 17:32:57 +01:00
Playwright Service 54e2ecc45b
feat(webkit): roll to r1956 (#28678)
Fixes https://github.com/microsoft/playwright/issues/28567.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-15 15:54:05 -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 f88288d71d

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
Playwright Service c36c2ecf7e
feat(firefox): roll to r1434 (#28660)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-15 08:36:52 -08:00
Max Schmitt 256b287649
docs: note that custom args are on your own risk (#28656)
https://github.com/microsoft/playwright/issues/28537
2023-12-14 14:37:31 -08:00
Yury Semikhatsky f8d0204d2f
chore: provide better message for unhandled internal server errors (#28653)
This changes error message from `Error: ` to `Error: Protocol error
(Fetch.continueRequest): Internal server error, session closed.` when
running `npm run ctest -- --repeat-each 100 -x --headed --timeout 3000
--workers 1 library/browsercontext-route.spec.ts:172` prior to
9d91b7caf5.
2023-12-14 13:49:11 -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
Playwright Service d9ab83c5f7
feat(webkit): roll to r1955 (#28652)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-14 11:10:54 -08:00
Dmitry Gozman 35e8c440c2
fix(dispatchers): separate gc bucket for main frame, increased limit (#28629)
- Keep main frames in a separate bucket, so that page methods that
redirect to the main frame continue to work.
- Increase default dispatchers limit to `10_000`.
- Increase dispatchers limit for `JSHandle`/`ElementHandle` to
`100_000`.

Fixes #28320, #28503.
2023-12-14 10:42:08 -08:00
Matt Jennings 3f3f332060
feat(trace): allow Trace Viewer to include credentials when fetching traces cross-origin (#28502)
Add the `'credentials': include` option on the trace fetch so the
browser can include cookies when fetching from a different origin,
assuming the origin returns the correct Access-Control-Allow-Origin and
Access-Control-Allow-Credentials headers.

Fixes #28501
2023-12-14 10:41:01 -08:00
Playwright Service 1101b46037
feat(chromium-tip-of-tree): roll to r1176 (#28650) 2023-12-14 08:59:16 -08:00
Playwright Service d4c66a6295
feat(chromium): roll to r1095 (#28649) 2023-12-14 08:58:59 -08:00
Pavel Feldman d242ff67ef
chore: follow up to the stylePath review (#28636) 2023-12-14 08:19:24 -08:00
Max Schmitt e8c8852c00
chore: discourage methods on ElementHandle (#28637)
Mirrors the deprecations from page.* over to ElementHandle.
2023-12-13 20:06:01 -08:00
Yury Semikhatsky e31e5b1b7c
fix: use blob fileName as is without adding shard suffix (#28634)
Fixes https://github.com/microsoft/playwright/issues/27284
2023-12-13 18:47:13 -08:00
Max Schmitt 9b2585cd4e
fix: 'should collect trace with resources, but no js' test in service mode (#28628) 2023-12-13 11:42:29 -08:00
Yury Semikhatsky 9d91b7caf5
fix(route): silently catch errors when handling route on server (#28612)
This is a follow-up to 119afdf788 Since
continue/fulfill/abort now may throw on the server after page has been
closed, we need to catch the errors manually. On the client it's fixed
by the original change.

This fixes errors in the existing tests:
```
  1) [chromium] › library/browsercontext-route.spec.ts:172:3 › should support Set-Cookie header ────

    Error: 

       at ../packages/playwright-core/src/server/chromium/crConnection.ts:147

      145 |     const id = this._connection._rawSend(this._sessionId, method, params);
      146 |     return new Promise((resolve, reject) => {
    > 147 |       this._callbacks.set(id, { resolve, reject, error: new ProtocolError('error', method) });
          |                                                         ^
      148 |     });
      149 |   }
      150 |

        at /Users/yurys/playwright/packages/playwright-core/src/server/chromium/crConnection.ts:147:57
        at new Promise (<anonymous>)
        at CRSession.send (/Users/yurys/playwright/packages/playwright-core/src/server/chromium/crConnection.ts:146:12)
        at RouteImpl.continue (/Users/yurys/playwright/packages/playwright-core/src/server/chromium/crNetworkManager.ts:566:25)
        at FrameManager.requestStarted (/Users/yurys/playwright/packages/playwright-core/src/server/frames.ts:299:23)
        at CRNetworkManager._onRequest (/Users/yurys/playwright/packages/playwright-core/src/server/chromium/crNetworkManager.ts:314:57)
        at CRNetworkManager._onRequestPaused (/Users/yurys/playwright/packages/playwright-core/src/server/chromium/crNetworkManager.ts:202:12)
        at CRSession.emit (node:events:517:28)
        at /Users/yurys/playwright/packages/playwright-core/src/server/chromium/crConnection.ts:172:14
        at runNextTicks (node:internal/process/task_queues:60:5)
        at processImmediate (node:internal/timers:447:9)
```


![image](https://github.com/microsoft/playwright/assets/9798949/1c436dc2-f113-4ba6-952c-dca5a8c5fa62)

Reference https://github.com/microsoft/playwright/issues/28490
2023-12-13 09:34:20 -08:00
Pavel Feldman afe90d648e
fix: do not generate api call steps inside named expects (#28609)
Fixes: https://github.com/microsoft/playwright/issues/28528
2023-12-13 09:06:02 -08:00
Max Schmitt 297cfdfc5f
chore: use ReadonlyArray for input parameters (#28564) 2023-12-12 16:22:48 -08:00
Dmitry Gozman d2dc8eb1e3
fix(components): make sure defineConfig(c1, c2) works (#28608) 2023-12-12 14:01:01 -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
Playwright Service af5a23e55f
feat(chromium-tip-of-tree): roll to r1175 (#28605)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-12 11:27:51 -08:00
Dmitry Gozman 10dda30c7f
fix(reporters): carefully handle empty lines (#28591)
In some circumstances, like "No tests found" error, reporters produce a
lot of unnecessary empty lines:

```
$ npx playwright test
Error: No tests found




$ <next command>
```

Also, `line` reporter removes the `npx playwright test` command entirely
when `onError` happens before `onBegin`.
2023-12-11 21:18:48 -08:00
Playwright Service d20a20b9b6
feat(webkit): roll to r1954 (#28592)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-11 18:42:34 -08:00
Pavel Feldman 76ace0fc09
chore: workaround webkit screenshot animation issue (#28582) 2023-12-11 18:20:24 -08:00
Dmitry Gozman ac3600ec96
feat: explain that argument is a regex (#28590)
- in docs;
- in the error message.

Terminal output:

```
$ npx playwright test foobar
Error: No tests found.
Make sure that arguments are regular expressions matching test files.
You may need to escape symbols like "$" or "*" and quote the arguments.
```

References #28551.
2023-12-11 17:35:39 -08:00
Dmitry Gozman ee9a7dad12
docs: emphasize that has is a relative locator (#28588)
References #28556.
2023-12-11 17:35:29 -08:00
Playwright Service 23415da3db
feat(webkit): roll to r1953 (#28574)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-11 09:30:11 -08:00
Playwright Service 7827838d22
feat(chromium): roll to r1094 (#28560)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-08 14:59:38 -08:00
Playwright Service a01ef0e9ce
feat(chromium-tip-of-tree): roll to r1174 (#28559)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-08 14:58:03 -08:00
Andrey Lushnikov 8d3a931377
feat(firefox): roll FF Stable & Beta to 1433 (#28543)
Fixes #28495
2023-12-08 10:48:44 -08:00
Max Schmitt 736c0efd43
chore: use more explicit awaits when returning in client (#28443) 2023-12-07 20:13:35 -08:00
Yury Semikhatsky 119afdf788
fix: throw if fuliflled with unsupported status code (#28539)
If request gets cancelled by the page before we fulfill it, we receive
`loadingFailed` event. In that case we'll ignore interception error if
any, otherwise the error will be propagated to the caller.

Fixes https://github.com/microsoft/playwright/issues/28490
2023-12-07 16:57:39 -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
Yury Semikhatsky f88288d71d
feat: config.botName for describing environment in the reports (#28507)
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-06 13:34:16 -08:00
Playwright Service 29a0ea35d0
feat(firefox-beta): roll to r1430 (#28509) 2023-12-05 22:30:37 -08:00
dependabot[bot] 6838484ab5
chore(deps): bump vite from 4.4.10 to 4.4.12 (#28505) 2023-12-05 16:52:41 -08:00
Playwright Service 4b968412c9
feat(firefox): roll to r1430 (#28489)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-05 13:00:30 -08:00
Max Schmitt 524ed3e269
fix(electron): after v28.0 (#28499)
Fixes https://github.com/microsoft/playwright/issues/28048
Relates https://github.com/electron/electron/issues/40501
2023-12-05 12:46:28 -08:00
Playwright Service aadc9345fa
feat(webkit): roll to r1951 (#28498)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-12-05 12:28:24 -08:00
Yury Semikhatsky 8f056fbbce
chore: do not wait for route on close if route.continue() threw an error (#28487)
Reference https://github.com/microsoft/playwright/issues/23781
2023-12-05 10:26:17 -08:00
Dmitry Gozman c7018951e5
fix(trace): title should not wrap over to the timeline (#28496) 2023-12-05 09:21:51 -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
Yury Semikhatsky ab68d7b9de
fix(webkit): delay request event until requestIntercepted is received (#28484)
Previously we were wrongly firing `route` event for the request which
are not in fact intercepted (e.g. requests from service worker).

Related https://github.com/microsoft/playwright/pull/28414
Reference https://github.com/microsoft/playwright/issues/23781
2023-12-04 13:02:00 -08:00
Yury Semikhatsky 9a95d9a60c
chore: remove unused request._redirectedFrom (#28485) 2023-12-04 12:38:07 -08:00
Pavel Feldman facec88c99
fix: speed up caret hiding while screenshotting (#28460)
Fixes #28375
2023-12-03 21:06:40 -08:00
Playwright Service ea7fe340c1
feat(webkit): roll to r1950 (#28469) 2023-12-03 04:54:45 -08:00
Yury Semikhatsky 607a243380
chore: remove unused fields from wk network (#28455) 2023-12-01 14:51:41 -08:00
Yury Semikhatsky b166189247
fix: disable memory cache when intercepting in webkit (#28458) 2023-12-01 14:49:27 -08:00
Max Schmitt f44ef81af7
fix(snapshot): broken snapshot after use of setInputFiles (#28444) 2023-12-01 09:38:50 -08:00
Pavel Feldman 0a7a10d0f6
feat(vrt): allow providing screenshot style (#28229) 2023-11-30 17:42:45 -08:00
Max Schmitt 8efa8dbc1d
fix(ui-mode): make UI Mode projects scrollable (#28438)
Fixes https://github.com/microsoft/playwright/issues/28393



https://github.com/microsoft/playwright/assets/17984549/5791e422-f4e6-4202-b66c-b77bbb476c04
2023-11-30 13:26:03 -08:00
Playwright Service f21455017e
feat(chromium-tip-of-tree): roll to r1173 (#28422) 2023-11-30 05:41:58 -08:00
Playwright Service b06f9ab055
feat(chromium): roll to r1093 (#28421) 2023-11-30 05:41:23 -08:00
Pavel Feldman 92a0d24069
fix: restore timeout error name (#28408)
Fixes https://github.com/microsoft/playwright/issues/28404
2023-11-29 17:28:17 -08:00
Max Schmitt c137b23a6c
fix(trace-viewer): scroll over multiple pages (#28316)
Fixes https://github.com/microsoft/playwright/issues/28208
2023-11-29 11:27:19 -08:00
Playwright Service 1901a1a155
feat(chromium-tip-of-tree): roll to r1172 (#28374)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-28 19:45:12 -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
Yury Semikhatsky 2e762fd3d2
fix: parse report.jsonl without creating large string (#28366)
Reference https://github.com/microsoft/playwright/issues/28362
2023-11-28 08:47:44 -08:00
Pavel Feldman 022b36332d
chore: do not add to the internal action logs (#28365)
Fixes https://github.com/microsoft/playwright/issues/28319
2023-11-27 16:43:47 -08:00
Yury Semikhatsky cea28b2df9
docs: clarify beforeAll execution on exception (#28361)
Reference https://github.com/microsoft/playwright/issues/28285
2023-11-27 16:37:30 -08:00
Dmitry Gozman f61e445f2b
Revert "chore(test runner): remove fake skipped test results (#27762)" (#28360)
This reverts commit 210168e36d.

Fixes #28321.
2023-11-27 16:08:20 -08:00
Sander f58c1f37eb
fix(ct): empty slots or children (#28225)
closes: https://github.com/microsoft/playwright/issues/28212
2023-11-27 15:53:50 -08:00
Playwright Service 96ce1a8f88
feat(webkit): roll to r1949 (#28358)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-27 21:51:30 +01:00
Alexander Kachkaev 41728e7098
chore(install): Improve ECONNRESET handling in downloadFile (#28344)
See
https://github.com/microsoft/playwright/issues/28329#issuecomment-1826753106
for context
2023-11-27 21:44:24 +01:00
Yury Semikhatsky dc8ecc3ca4
fix(merge): normalize path separators when merging across platforms (#28227) 2023-11-27 12:43:56 -08:00
Playwright Service 888f4965bf
feat(webkit): roll to r1948 (#28323)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-24 09:33:53 +01:00
Playwright Service 7dd121c784
feat(chromium): roll to r1092 (#28312)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-23 16:04:35 +01:00
Playwright Service 4faa0bcbb8
feat(chromium-tip-of-tree): roll to r1171 (#28313)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-23 16:04:04 +01:00
Yury Semikhatsky 82f970e5c1
chore: print more accurate MiB instead of Mb when downloading browsers (#28304)
Fixes https://github.com/microsoft/playwright/issues/28283
2023-11-23 11:09:38 +01:00
Max Schmitt 2f1b0d6ff7
fix(install): hang on server side connection close (#28278) 2023-11-22 20:26:21 +01:00
Playwright Service 91c5bac52b
feat(chromium-tip-of-tree): roll to r1170 (#28277)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-22 10:15:24 +01:00
Playwright Service 7caa212a1f
feat(webkit): roll to r1947 (#28270)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-21 21:47:26 +01:00
itchyny 440f5e5d2b
fix: collect all errors in removeFolders (#28239)
This PR fixes
https://github.com/microsoft/playwright/pull/27790#pullrequestreview-1738958803.
Previously this function returns only the first error when some of the
promises fail. But the type annotation suggests that the original
intention was to collect all the errors. This commit fixes the error
values, and unexpected `TypeError: object is not iterable`.
2023-11-20 10:58:10 +01:00
Pavel Feldman 3f55587dd8
feat(vrt): bring back wait for font loading (#28226) 2023-11-17 17:16:32 -08:00
Yury Semikhatsky 34c8516d09
fix: correctly print number of interrupted tests in markdown (#28228) 2023-11-17 16:53:36 -08:00
Dmitry Gozman 62d4c3fe02
fix(defineConfig): do not add an empty project list to project-less configs (#28224)
Otherwise, merging two configs without `projects` property will create a
config with an empty project list, which is semantically different and
always leads to "No tests found".
2023-11-17 13:36:50 -08:00
Dmitry Gozman 5488c03d7f
chore: make asLocator() always safe (#28207) 2023-11-16 16:31:34 -08:00
Dmitry Gozman 738155d85d
fix(dispatcher): only remove stale dispatcher after sending "create" (#28176)
Otherwise, we might dispose objects referenced in the initializer of the
new object being created, which triggers an exception on the client.
2023-11-16 15:07:43 -08:00
Dmitry Gozman 61c089fcbd
feat(recorder): UX updates for assertion tools (#28198)
- No locator editor.
- No value editor for `toHaveValue`.
- Visual feedback for `toBeVisible`/`toHaveValue`.
- UI tweaks.
2023-11-16 13:19:36 -08:00
Dmitry Gozman da6707f785
fix(chromium): properly detect session closed errors for oopifs (#28197)
Exposed by the flaky test `should not throw on exposeFunction when oopif
detaches`.
2023-11-16 11:44:10 -08:00
Pavel Feldman 2bd7d67adc
chore: render testInfo errors in the Errors tab (#28179)
Fixes https://github.com/microsoft/playwright/issues/28056
2023-11-16 11:37:57 -08:00
Playwright Service 3cc1dacd5c
feat(chromium-tip-of-tree): roll to r1169 (#28184)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-16 13:48:03 +01:00
Dmitry Gozman 8150b27413
chore: mark version 1.41.0-next (#28180) 2023-11-15 20:05:36 -08:00
Pavel Feldman 25b9c4eb4a
chore: do not lose error name for js errors (#28177) 2023-11-15 18:27:32 -08:00
Siddharth Singha Roy 4575c9a182
chore(logs): Add new log level to capture client-server message's metadata information (#28141)
Goal - Capture minimal diagnostic information for each message being
sent between the playwright client and server.

---------

Co-authored-by: Siddharth Singha Roy <ssingharoy@microsoft.com>
2023-11-15 15:37:14 -08:00
Max Schmitt 80bab8afae
fix(electron/android): re-add Element.prototype.checkVisibility check (#28173)
Regressed in https://github.com/microsoft/playwright/pull/28148.
2023-11-15 15:10:13 -08:00
Playwright Service 0867c3ce5b
feat(chromium): roll to r1091 (#28171)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-15 21:31:01 +01:00
Daniel 1c8ceb0a02
fix(html-reporter): Include specified host and port in the logged instructions to launch the HTML report (#28144)
Signed-off-by: Daniel <3473356+D4N14L@users.noreply.github.com>
2023-11-15 21:25:03 +01:00
Max Schmitt 611badcf74
fix: setInputFiles test in driver mode (#28166)
https://github.com/microsoft/playwright/pull/28156
2023-11-15 20:09:36 +01:00
Max Schmitt 84d1260d1a
fix(recorder): inspect element when starting typing in locator editor (#28134) 2023-11-15 19:40:10 +01:00
Playwright Service bb241abaff
feat(webkit): roll to r1944 (#28148)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-11-15 19:34:53 +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 557f3afd74
feat(recorder): assert value as a separate tool (#28145) 2023-11-14 15:17:42 -08:00
Dmitry Gozman 0a052cb4d6
feat(recorder): assert visibility tool (#28142) 2023-11-14 12:55:34 -08:00
Yury Semikhatsky ec2c7024b6
docs: fix ignoreCase description (#28121) 2023-11-14 10:18:04 -08:00
Max Schmitt 2ac1cde879
fix(recorder): resize of assert overlay textarea (#28137) 2023-11-14 18:07:27 +01:00
Pavel Feldman 60a37f37ef
chore: allow tabbing from codemirror locator editor (#28116) 2023-11-14 08:13:29 -08:00
Playwright Service 78293053b4
feat(chromium-tip-of-tree): roll to r1168 (#28128)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-14 14:18:05 +01:00
Dmitry Gozman bf4c315b09
fix(types): explicit ExpectMatcherState type, optional Expect arg (#28119)
Fixes #28035.
2023-11-13 18:37:50 -08: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
Dmitry Gozman 36b99c3437
chore(recorder): standby mode, expose setModeRequested in DebugController (#28117) 2023-11-13 16:39:14 -08:00
Dmitry Gozman 2c3955a28c
chore: remove fake error from expect calls (#28112)
We used to have a fake `error` property, so that trace viewer shows
failed expectes as such. Today, we have a step for each expect that
contains a proper error. Sending the fake error to the client confuses
language ports.
2023-11-13 16:39:05 -08:00
Dmitry Gozman ec4893d235
docs: update phrasing for 1.40 features (#28113) 2023-11-13 15:56:50 -08:00
Pavel Feldman b0f75a6a3a
chore: allow editing locator while matching text (#28115) 2023-11-13 15:42:46 -08:00
Pavel Feldman ae5cdf16f0
chore: allow asserting substring (#28111) 2023-11-13 14:38:04 -08:00
Max Schmitt 8b1c637c16
fix(codegen): generate expect import for library (#28107) 2023-11-13 21:54:30 +01:00
Yury Semikhatsky 35aeace476
docs(assertions): note on whitespace normalization (#28110)
Fixes https://github.com/microsoft/playwright-java/issues/1419
2023-11-13 12:28:50 -08:00
Pavel Feldman cd70d51aa8
chore: remove redundant check for highlight liveness (#28108)
Closes https://github.com/microsoft/playwright/issues/28002
2023-11-13 11:44:25 -08:00
Pavel Feldman db38f0d2df
chore: flag text mismatch when editing (#28106) 2023-11-13 11:44:06 -08: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
faulpeltz d9ccc80d0c
fix: ubuntu version detection for linux mint (#28085) 2023-11-13 18:02:10 +01:00
Mattias Wallander c6d154f9c4
feat: Add support for dispatching device motion events (#28067)
References #27887.
2023-11-13 08:58:46 -08:00
Playwright Service d94c3e04e8
feat(webkit): roll to r1943 (#28089)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-13 11:19:39 +01:00
Pavel Feldman 1b3349d091
chore: use codemirror in the on-hover locator editor (#28090) 2023-11-10 22:00:28 -08:00
Yury Semikhatsky fae5dd898a
chore: remove from client check if browser is co-located with server (#28071)
Reference https://github.com/microsoft/playwright/issues/27792
2023-11-10 15:24:31 -08:00
Playwright Service 1b22c43c35
feat(webkit): roll to r1942 (#28073) 2023-11-10 09:31:18 +01:00
Playwright Service 9b1b1e02ed
feat(webkit): roll to r1941 (#28069)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-09 22:45:04 +01:00
Dmitry Gozman 62b6af3a7f
fix(android): respect recordHar option (#28046)
Fixes #28015.
2023-11-09 08:36:05 -08:00
Playwright Service 6c2abf016e
feat(chromium-tip-of-tree): roll to r1167 (#28053)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-09 15:16:43 +01:00
Playwright Service 93d202c480
feat(chromium): roll to r1090 (#28052)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-09 15:16:20 +01:00
Pavel Feldman b004c1a0a7
chore: rework assert dialog (#28043) 2023-11-08 20:09:58 -08:00
Max Schmitt 5f527fedb1
fix: JSHandle preview text for non-ascii attributes/children (#28038)
This surfaced in .NET that the string in the driver got incorrectly cut,
then transferred to .NET as an invalid UTF8 character
[`\ud835`](https://charbase.com/d835-unicode-invalid-character) which
.NET wasn't able to parse and threw an error.

Drive-by: Move similar function from
`packages/playwright-core/src/client/page.ts` into isomorphic
`stringUtils`.

https://github.com/microsoft/playwright-dotnet/issues/2748
2023-11-09 00:11:01 +01:00
Mattias Wallander 5a9fa69c6d
feat: Add support for dispatching device orientation events (#27960)
Fixes #27887
2023-11-08 09:50:25 -08:00
Pavel Feldman 061ded19b6
chore: place overlay inside the glass pane (#28026) 2023-11-07 19:36:12 -08:00
Playwright Service 1a8b61199f
feat(firefox-beta): roll to r1429 (#28024)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-08 04:22:34 +01:00
Max Schmitt e788c711c6
fix: electron video tests (#28004) 2023-11-07 23:42:17 +01:00
Pavel Feldman cb14de7a5b
chore: do not use ansi outsite of TTY (#27979)
Fixes https://github.com/microsoft/playwright/issues/27891
2023-11-07 14:09:40 -08:00
Playwright Service b9aaa38d3b
feat(firefox): roll to r1429 (#28020)
Fixes https://github.com/microsoft/playwright/issues/27682

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-07 22:20:55 +01:00
Pavel Feldman eeda25c47f
chore(recorder): glue the overlay to the top (#28021) 2023-11-07 12:58:41 -08:00
Playwright Service a9c4406439
feat(chromium-tip-of-tree): roll to r1166 (#28009)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-07 19:27:33 +01:00
Dmitry Gozman 810382c074
chore(recorder): more UX fixes for text assertions (#27995) 2023-11-06 16:40:33 -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 ffd2e02aa3
feat(recorder): various UX fixes (#27967) 2023-11-04 21:18:27 -07:00
Yury Semikhatsky 53a78a315e
fix(merge): preserve original "rootDir" by default (#27963)
Fixes https://github.com/microsoft/playwright/issues/27877
2023-11-03 13:49:47 -07:00
Dmitry Gozman f401a482d2
fix(codegen): consume pointer events alongside mouse events (#27949)
Fixes #27926.
2023-11-03 13:41:51 -07:00
Max Schmitt 326c9785b4
fix(trace-viewer): keep searchParams on / redirect (#27956)
Relates to https://github.com/microsoft/playwright/issues/27952.

Might help future users too.
2023-11-03 17:38:55 +01:00
Pavel Feldman a55fe8fd1f
chore: reset preserveOutput in ui mode (#27944)
Fixes https://github.com/microsoft/playwright/issues/27892
2023-11-02 20:50:23 -07:00
Pavel Feldman e84dd4d708
fix(ui): do not fail on clashing groups (#27943)
Fixes https://github.com/microsoft/playwright/issues/27929
2023-11-02 20:50:08 -07:00
Max Schmitt f9c4955fe8
fix(msedge): install with multiple artifacts (#27939)
The API response looked like this:

<img width="1584" alt="image"
src="https://github.com/microsoft/playwright/assets/17984549/89d32ad4-8770-48c3-b562-231ae7b9ef3b">

-> multiple entries for `Windows` and `X64`, but some without artifacts.
-> We filter now for `artifacts.length > 0` which seems like a healthy
change.

Fixes https://github.com/microsoft/playwright/issues/22841
2023-11-02 15:30:40 -07:00
Dmitry Gozman a7fd515626
chore(recorder): use designMode for text selection tool (#27936)
This allows us to barely support shadow dom, compared to no support at
all.
2023-11-02 13:47:53 -07:00
Ben Scott c59483c5fb
fix(tsconfig): handle tsconfig paths without a baseUrl (#27846) 2023-11-02 11:27:49 -07:00
Playwright Service bc1b59042c
feat(chromium-tip-of-tree): roll to r1165 (#27928)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-02 18:00:14 +01:00
Playwright Service 059c865689
feat(chromium): roll to r1089 (#27925)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-02 15:16:43 +01:00
Playwright Service 50342a0c9d
feat(firefox-beta): roll to r1428 (#27923)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-02 10:47:48 +01:00
Playwright Service 0fda074183
feat(firefox): roll to r1428 (#27912)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-02 10:47:35 +01:00
Dmitry Gozman 07da88dcf1
feat(recorder): generate toHaveValue/toBeEmpty/toBeChecked (#27913) 2023-11-01 21:17:25 -07:00
Pavel Feldman 0f2de59b7c
chore: remove graceful browser.close cleanup (#27916) 2023-11-01 20:17:10 -07:00
Pavel Feldman 817a130cdc
chore: dispose-based callback termination (#27911) 2023-11-01 16:36:39 -07:00
Dmitry Gozman 3dedbced13
feat(recorder): in-page overlay (#27904) 2023-11-01 15:56:49 -07: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
Playwright Service 38115d121b
feat(chromium): roll to r1088 (#27897)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-11-01 13:52:00 +01:00
Playwright Service 0c4de1f4ce
feat(webkit): roll to r1932 (#27884)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-31 19:39:23 +01:00
Max Schmitt 38a0921845
fix: Google Chrome Beta/Stable install on macOS (#27880) 2023-10-31 16:49:13 +01:00
Max Schmitt 08b8181632
chore: make Trace Viewer start page AAA compliant (#27879) 2023-10-31 16:35:13 +01:00
Playwright Service d38eab0df1
feat(chromium-tip-of-tree): roll to r1164 (#27881)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-31 14:11:12 +01:00
Max Schmitt cff9ac04e4
fix: cross-origin Page.goto referer (#27859)
Fixes https://github.com/microsoft/playwright/issues/27765
2023-10-31 11:10:15 +01:00
Playwright Service c3b533d834
feat(firefox): roll to r1427 (#27871)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-30 23:23:39 +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
Playwright Service afa5cdc53f
feat(firefox-beta): roll to r1427 (#27866)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-30 22:02:27 +01: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
Luigi Colombi 3127765bde
chore: add curly space to fix eslint run (#27858) 2023-10-30 12:05:48 +01:00
Sander 1a34b6d211
fix(ct): solid render array as child (#27849)
closes:
https://github.com/microsoft/playwright/issues/27587#issuecomment-1762133376

related: https://github.com/microsoft/playwright/pull/27692

CC @dgozman

Co-authored-by: sand4rt <mbr@mbrs-MacBook-Air.local>
2023-10-28 11:22:10 -07:00
Sander 96787d2626
fix(ct): vue render array as slot (#27851)
partial fix for:
https://github.com/microsoft/playwright/issues/27587#issuecomment-1762133376

related: https://github.com/microsoft/playwright/pull/27692

CC @dgozman

Co-authored-by: sand4rt <mbr@mbrs-MacBook-Air.local>
2023-10-28 11:21:37 -07:00
Sander 3313381040
fix(ct): react render array as child (#27692)
Signed-off-by: Sander <info@mesander.com>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
Co-authored-by: mbr <mbr@mbrs-MacBook-Air.local>
2023-10-28 10:36:48 -07:00
Pavel Feldman 462e70ab82
chore: render sidebar tab selector as drop down (#27844) 2023-10-27 15:31:31 -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 100d3b2601
fix(css parser): support nested builtin functions (#27841)
Things like `:nth-child(1 of :has(span:nth-last-child(3)))`.

Fixes #27743.
2023-10-27 13:16:12 -07:00
Dmitry Gozman 88f30d1ce2
feat: support firefoxUserPrefs in launchPersistentContext (#27840)
Fixes #27773.
2023-10-27 09:24:41 -07:00
Playwright Service 49b662c22c
feat(chromium): roll to r1087 (#27834)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-27 14:19:42 +02:00
Dmitry Gozman 4d8dd55b90
chore: refactor Recorder, introduce RecorderTool (#27826) 2023-10-26 19:42:03 -07:00
Dmitry Gozman 24deac458b
feat(expect): generate toHaveText (#27824) 2023-10-26 18:49:14 -07:00
Sander 54ebee79f7
chore(ct): resolve internal type errors (#26779) 2023-10-26 14:57:49 -07:00
Pavel Feldman ff206bd9c1
chore: render time in the trace viewer log (#27825) 2023-10-26 14:45:15 -07:00
Pavel Feldman 778047facc
chore: stream trace viewer logs (#27807) 2023-10-26 11:15:43 -07:00
Max Schmitt 5f366088be
chore: get rid of rimraf package (#27790)
This seems more reliable nowadays as rimraf.

https://github.com/microsoft/playwright/issues/27712

---------

Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-10-26 19:41:00 +02:00
Yury Semikhatsky 86c78c1e0f
fix(html): do not update total time when filtering tests (#27808)
![image](https://github.com/microsoft/playwright/assets/9798949/491ef34d-6674-4242-a6f4-dcef048a18f5)


Fixes #27758
2023-10-26 08:20:14 -07:00
Playwright Service 37ab6832ab
feat(chromium-tip-of-tree): roll to r1163 (#27817)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-26 15:49:25 +02:00
Yury Semikhatsky 0ade5aa9ad
fix: ignoreCase in toHaveAttribute (#27809)
Fixes #27795
2023-10-25 19:22:13 -07:00
Pavel Feldman 47733b04fb
chore: do not select after hooks automatically (#27805) 2023-10-25 17:05:06 -07:00
Max Schmitt 54235120a0
fix: npx playwright install on Ubuntu 18.04 (#27791) 2023-10-25 23:13:58 +02:00
Playwright Service 1afeff5be0
feat(firefox-beta): roll to r1426 (#27793)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-25 12:32:35 +02:00
Playwright Service 60f2de77da
feat(firefox): roll to r1426 (#27794)
Fixes https://github.com/microsoft/playwright/issues/27741

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-25 12:32:19 +02:00
Pavel Feldman 0bb9f7cdf7
feat(ui): show test status in trace view (#27785) 2023-10-24 16:41:40 -07: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
Dmitry Gozman c8134bca5d
feat(html): show top-level errors (#27763)
Drive-by:
- extract `TestErrorView`;
- replace `data-test-id` with `data-testid` and `getByTestId()`.

---

<img width="1001" alt="top-level errors in html report"
src="https://github.com/microsoft/playwright/assets/9881434/2d6c0c52-8df1-46a9-b3fd-06ddc6f16796">
2023-10-24 09:35:07 -07:00
Dmitry Gozman 210168e36d
chore(test runner): remove fake skipped test results (#27762)
Fixes #27455.
2023-10-24 09:31:30 -07:00
Playwright Service c33b41df77
feat(chromium-tip-of-tree): roll to r1162 (#27774)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-24 15:43:13 +02:00
Max Schmitt fe7847b126
fix: require JSX inside PWT with pnpm (#27744)
Fixes https://github.com/microsoft/playwright/issues/27285
2023-10-23 22:48:12 +02:00
Yury Semikhatsky 5e51a734e7
fix: interrupt request.allHeaders()/response() on page.close() (#27695)
Reference https://github.com/microsoft/playwright/issues/27227
2023-10-23 12:45:35 -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
Playwright Service 9af667be26
feat(webkit): roll to r1928 (#27755)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-23 18:22:49 +02:00
Max Schmitt 5fe77f9a6f
chore: better error for trace viewer over http:// (#27722)
We saw in the past a lot of users reporting issues like this. Maybe a
more readable error helps.

Before they just saw:

```
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'register')
  at index.38834ec3.js:1:3775
  at index.38834ec3.js:1:4006
```

Fixes https://github.com/microsoft/playwright/issues/27655
2023-10-23 18:21:19 +02:00
Dmitry Gozman b8678ef902
chore(test runner): simplify some dispatcher logic (#27732)
- remove `onlyStartedTests` in favor of explicit branch with comments;
- produce one "test not found" error per test instead of a single large
error;
- extract `_failTestWithErrors` from `_massSkipTestsFromRemaining`.
2023-10-23 09:15:13 -07:00
Dmitry Gozman 85112be25c
fix(test runner): properly handle uncaught errors in test.fail() (#27734)
Before this fix, unhandled error during test.fail():
- marks this test as "interrupted";
- fails next test in the file with "fatal error".

After this fix:
- marks this test as "failed as expected";
- restarts worker for the next test.
2023-10-23 09:14:31 -07:00
Michaël Vanderheyden 0a0878d567
feat: add pixel 7 device with android 14 (#27700) 2023-10-23 12:59:42 +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 d67515f6c1
chore(test runner): do not produce some of the fake skipped test results (#27730) 2023-10-20 17:01:46 -07:00
Sander 27daa5e7b1
fix(ct): solid render array as child (#27715) 2023-10-20 11:44:30 -07:00
Dmitry Gozman 6fe31ab52c
feat: support alternative quotes in js parseLocator() (#27718)
Fixes #27707.
2023-10-20 08:42:29 -07:00
Pavel Feldman f46c889449
chore: fix total progress reporting w/ deps (#27716) 2023-10-19 20:07:47 -07:00
Pavel Feldman d003945a7b
chore(ui): do not watch output folders (#27694) 2023-10-19 15:53:57 -07:00
Dmitry Gozman 6e62a11643
fix(trace): EPERM on windows (#27693)
When merging trace files, we sometimes left open read streams from the
zip, which prevents it from being removed.

Fixes #27286.
2023-10-19 11:14:17 -07:00
Max Schmitt b1325c9208
fix(keyboard): event order for Escape key (#27711)
This test was failing in Chromium before this change.

Caused by
40d5e3a3c9/packages/playwright-core/src/server/chromium/crInput.ts (L54-L55)

which messes up the order of the protocol calls.

Fixes https://github.com/microsoft/playwright/issues/27709.
2023-10-19 18:18:29 +02:00
Playwright Service 6ba2eaf24a
feat(chromium-tip-of-tree): roll to r1161 (#27705)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-19 16:44:36 +02:00
Playwright Service 920f8766f0
feat(chromium): roll to r1086 (#27703)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-19 16:15:22 +02:00
Yury Semikhatsky bd58c0d5d2
fix: preserve lastModified timestamp in setInputFiles (#27671)
Fixes #27452
2023-10-18 14:05:09 -07:00
Sander 562938b271
fix(ct): baseURL playwright config (#27689)
closes: https://github.com/microsoft/playwright/issues/27627
2023-10-18 13:53:58 -07:00
Dmitry Gozman fd82b2b3fa
feat(json report): add expected/unexpected/skipped/flaky stats (#27685)
Fixes #27498.
2023-10-18 12:55:31 -07:00
Pavel Feldman 3aa147914c
chore: split error to client and server sides (#27672) 2023-10-17 21:34:02 -07:00
Playwright Service 8eab375c1d
feat(chromium-tip-of-tree): roll to r1160 (#27657) 2023-10-18 02:28:31 +02:00
Pavel Feldman 091f6883f5
chore: remove the usages of raw target closed message constant (#27669) 2023-10-17 15:35:41 -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
Josh Lee 08bc4fd801
fix(registry): don't download x64 binaries on other platforms (#27462)
On Linux platforms, specifically check that process.arch is x64, rather
than treating it as 'not arm64'.

Treat Raspbian's /etc/os-release file as Debian.

Document the supported platforms somewhat.

Fixes #27453
2023-10-17 12:54:20 -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
Pavel Feldman a54dbfdadf
chore: plumb the target close reason when test fails (#27640) 2023-10-16 20:32:13 -07: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
Max Schmitt fd2fbe9d2f
fix: merge{Tests,Expects} via ESM imports (#27630)
Backport to 1.39.X?

Fixes https://github.com/microsoft/playwright/issues/27617
2023-10-17 00:09:44 +02:00
Playwright Service f8277ca99c
feat(webkit): roll to r1927 (#27639)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-16 23:27:15 +02:00
Pavel Feldman b0c73b72f1
chore: push protocol error conversion to dispatcher (#27608) 2023-10-16 13:13:00 -07:00
Dmitry Gozman d83d9ce268
chore: make sure that we print warning for unsupported OS (#27610)
Also, fix some missing paths in download lists.
2023-10-16 10:49:57 -07:00
Max Schmitt 6b31b30df9
chore: allow a script to generate release-notes for GitHub (#27596)
`node utils/render_release_notes.mjs js 1.39`
2023-10-16 11:23:22 +02:00
Playwright Service b3bcf1c75a
feat(chromium): roll to r1085 (#27604)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-14 16:17:50 +02:00
Dmitry Gozman fc32ca676b
feat: check client version on the server (#27585) 2023-10-13 21:02:30 -07:00
Dmitry Gozman f0167091e6
fix(test runner): rework compilation cache logic (#27607)
- Do not write from workers.
- Remove marker files.
- Always try/catch reading from fs.

This mostly reverts https://github.com/microsoft/playwright/pull/26830
and https://github.com/microsoft/playwright/pull/26353.

Fixes #27592.
2023-10-13 21:01:40 -07:00
Playwright Service 3e4a1e89a1
feat(webkit): roll to r1926 (#27609) 2023-10-13 17:09:38 -07:00
Playwright Service 6400e5c564
feat(webkit): roll to r1925 (#27588) 2023-10-13 09:23:47 -07:00
Yury Semikhatsky bc59565d77
fix(webkit): support clipboard.readText (#27581)
Reference #27475
2023-10-13 09:10:35 -07:00
Pavel Feldman f8a30fb726 chore: follow up to target close message 2023-10-12 14:58:19 -07:00
Playwright Service 7b4a9d967a
feat(webkit): roll to r1923 (#27571) 2023-10-12 11:18:48 -07:00
Pavel Feldman f212fd1a83
chore: unify target closed errors (#27540) 2023-10-12 11:05:34 -07:00
Dmitry Gozman 823b104a9e
feat(html): "copy to clipboard" for text attachments (#27556)
Mostly copied from trace viewer. Not reused due to different
colors/icons.

Screenshot:

<img width="999" alt="copy-to-clipboard"
src="https://github.com/microsoft/playwright/assets/9881434/2bb38442-3b8d-42ba-a3ed-4b9052b22854">
2023-10-11 17:56:05 -07:00
Pavel Feldman 393bd36e0a
chore: composed->merge (#27555) 2023-10-11 13:56:27 -07:00
Dmitry Gozman 7aee202aef
chore: mark 1.40.0-next (#27538) 2023-10-10 16:10:28 -07:00
Dmitry Gozman 4f9b285c07
chore: update WebKit version to 17.4 (#27536) 2023-10-10 14:49:49 -07:00
Dmitry Gozman d11380e911
docs: improve test.step documentation (#27535) 2023-10-10 14:48:44 -07:00
Playwright Service 9edb811434
feat(chromium-tip-of-tree): roll to r1158 (#27533)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-10 21:32:47 +02:00
Dmitry Gozman 2407041090
fix(chromium): avoid premature continue of redirects (#27520)
This has recently regressed in #27429.

We now continue requests that are paused for the second time. However,
redirects share `networkId` with the original request, so we may confuse
paused redirect with a second pause for the original request.

This is covered by the flaky test `page-route.spec.ts:392 > should work
with redirects for subresources`
References #27294.
2023-10-09 20:08:35 -07:00
Pavel Feldman fd6bf8aa2c
chrome: improve error messages on vscode side (#27521) 2023-10-09 19:55:24 -07:00
Pavel Feldman 11a4b3f7f5
chore: remove parsed stack trace (#27496) 2023-10-09 17:04:16 -07:00
Playwright Service 036a018351
feat(webkit): roll to r1921 (#27512) 2023-10-09 10:56:04 -07:00
Playwright Service 9062dd0139
feat(chromium): roll to r1084 (#27497) 2023-10-07 10:48:51 +00:00
Pavel Feldman b807c974c3
chore: allow passing path to property in toHaveJSProperty (#27495)
Fixes https://github.com/microsoft/playwright/issues/27487
2023-10-06 15:47:07 -07:00
Playwright Service 7381099ad1
feat(webkit): roll to r1920 (#27493) 2023-10-06 22:11:26 +00:00
Dmitry Gozman ae5610f5c1
chore: include full messages into pw:channel logs (#27488)
Currently, we pass an object to the logger and it seems to use default
Node's `util.inspect()` which does not print properties at 3+ depth.
2023-10-06 11:04:33 -07:00
Playwright Service cf29d1baa9
feat(webkit): roll to r1919 (#27472) 2023-10-06 07:15:56 +00:00
Max Schmitt f856e3e4bc
chore: run 'npm pkg fix' (#27470)
As per

```
npm WARN publish npm auto-corrected some errors in your package.json when publishing.  Please run "npm pkg fix" to address these errors.
npm WARN publish errors corrected:
npm WARN publish Removed invalid "scripts"
npm WARN publish "bin[playwright-core]" script name was cleaned
npm WARN publish "repository.url" was normalized to "git+https://github.com/microsoft/playwright.git
```

works now as per
https://www.npmjs.com/package/@playwright/test/v/1.39.0-alpha-1696547902000
when you scroll down.

https://github.com/microsoft/playwright/issues/22555
2023-10-05 23:42:27 +00:00
Max Schmitt 10e7654fd9
chore: update repository.url in package.json (#27469)
As per
https://github.com/microsoft/playwright/actions/runs/6425074868/job/17446981722#step:7:168.

e.g. here:
2e4b4ad8be/package.json (L28-L31)
docs:
https://docs.npmjs.com/cli/v10/configuring-npm/package-json#repository

https://github.com/microsoft/playwright/issues/22555
2023-10-05 23:18:22 +00:00
Playwright Service ece6e70076
feat(webkit): roll to r1918 (#27466)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-05 23:00:46 +00:00
Max Schmitt ce928cd12f
fix: make processRunner nullable (#27468)
This fixes:
```
D:\a\playwright\playwright\packages\playwright\lib\common\process.js:119
  await processRunner.gracefullyClose().catch(() => {});
                      ^

TypeError: Cannot read properties of undefined (reading 'gracefullyClose')
    at gracefullyCloseAndExit (D:\a\playwright\playwright\packages\playwright\lib\common\process.js:119:23)
    at process.<anonymous> (D:\a\playwright\playwright\packages\playwright\lib\common\process.js:81:11)
    at process.emit (node:events:513:28)
    at emit (node:internal/child_process:946:14)
    at processTicksAndRejections (node:internal/process/task_queues:84:21)
```

from
[here](https://github.com/microsoft/playwright/actions/runs/6424299724/job/17444659548#step:7:2936).

`gracefullyCloseAndExit` gets called via `__stop__` and wants to use
`processRunner` var which gets created during `__init__`. So its
`undefined` when `__stop__` gets called.
2023-10-05 22:59:20 +00:00
Pavel Feldman 70dbb9d83a
feat(trace): allow navigating from error to source (#27464) 2023-10-05 14:59:59 -07:00
Dmitry Gozman cba2fc0752
chore: align FFConnection with CRConnection (#27450) 2023-10-05 13:46:41 -07:00
Playwright Service 5e2b9f158c
feat(webkit): roll to r1917 (#27444)
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-10-05 19:21:21 +00:00
Playwright Service 3f6b419fee
feat(chromium-tip-of-tree): roll to r1157 (#27454)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-05 18:38:36 +00:00
Playwright Service d877f15902
feat(webkit): roll to r1916 (#27447)
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-10-05 17:32:21 +00:00
Playwright Service 2ea28c9732
feat(webkit): roll to r1915 (#27443)
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-10-05 17:31:40 +00:00
Playwright Service b3897b209e
feat(chromium): roll to r1083 (#27445)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-05 16:52:10 +00:00
Pavel Feldman 89e1f69738 chore: regenerate types after spell check 2023-10-04 19:57:36 -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
Dmitry Gozman 045e8aa368
chore: move devices from Playwright to LocalUtils (#27437)
Also, do not create `LocalUtils` for remote connections. This avoids
sending device on every remote connect.
2023-10-04 16:48:54 -07:00
Playwright Service b584a86a8b
feat(chromium-tip-of-tree): roll to r1156 (#27433)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-04 23:06:50 +00:00
Dmitry Gozman daba77644c
feat: composedExpect (#27432)
Allows to merge multiple expects with custom matchers added by
`expect.extend()`.
2023-10-04 15:01:25 -07:00
Dmitry Gozman d426f2fd4e
fix(chromium): continue requests paused for the second time (#27429)
Sometimes Chromium restarts requests. This leads to multiple
`Fetch.requestPaused` for a single `Network.requestWillBeSent`.

Fixes #27294.
2023-10-04 11:18:06 -07:00
Playwright Service 7dcba6f5f0
feat(firefox): roll to r1425 (#27427)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-04 11:00:50 -07:00
Yury Semikhatsky ac48a47d33
feat: toHaveAttribute without value (#27418)
This time not doing it in other languages due to unjustified generator
complexity.

Fixes #27341
2023-10-04 09:27:28 -07:00
Pavel Feldman 5a7b405bdb
chore: add console icon titles (#27416)
Fixes https://github.com/microsoft/playwright/issues/27411
2023-10-03 15:52:37 -07:00
Pavel Feldman c226d97b87
chore: bump vite to 4.4.10 (#27417) 2023-10-03 14:59:13 -07:00
Dmitry Gozman 65ce4cd213
feat: expose composedTest() instead of test._extendTest() (#27414) 2023-10-03 13:26:30 -07:00
Pavel Feldman 47b0255b89
chore: instrument nested workers (#27400)
Ref: https://github.com/microsoft/playwright/issues/27376
2023-10-03 13:08:15 -07:00
Pavel Feldman ae08d03d75
fix(role): compute <output> accessible name from labels (#27415)
Fixes: https://github.com/microsoft/playwright/issues/27403
2023-10-03 13:01:13 -07:00
mash-graz 2c56af3a3b
fix: use most recent stable debian release browser binaries in case of debian testing and unstable (#27397)
Fixes: #27398
2023-10-03 12:35:21 -07:00
Yury Semikhatsky 567386c23f
fix(webkit): add libnghttp2 to the deps on older distros (#27399)
`bin/WPENetworkProcess` depends on `libsoup-3.0.so.0` which we bundle
with the browser on Ubuntu 20 and Debian 11, but soup3 depends on
`libnghttp2.so` which is expected to be installed on the host.

Fixes https://github.com/microsoft/playwright/issues/27255
2023-10-02 18:06:28 -07:00
Dmitry Gozman 2aca7fdcc2
fix(chromium): scroll into view elements inside iframes before waiting (#27394)
This forces iframes to be visible, so that `rAF`s always run.

Fixes #27196.
2023-10-02 17:21:06 -07:00
Playwright Service 1bed74bc8b
feat(webkit): roll to r1914 (#27279) 2023-10-02 11:36:23 -07:00
Andrey Lushnikov 471d12ac7b
chore: keep linux browser deps script up-to-date (#27309)
References https://github.com/microsoft/playwright/issues/27255
2023-10-02 11:34:49 -07:00
Yury Semikhatsky bb8a102164
chore(types): add blob reporter to the known reporter types (#27371)
Closes https://github.com/microsoft/playwright/issues/27357
2023-09-29 15:15:18 -07:00
Dmitry Gozman 5deea65bf2
fix(test runner): move removing artifacts dir from stop() to onExit (#27364)
Fixes #27326.
2023-09-29 14:57:32 -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 2a8d6a8207
docs: encourage using expect() instead of getters like textContent() (#27362) 2023-09-29 10:52:20 -07:00
Dmitry Gozman 81694b7401
test: unflake some tests (#27354) 2023-09-29 10:45:31 -07:00
Pavel Feldman d136b0aeb6
feat(step): allow boxing steps (#27334) 2023-09-29 09:44:00 -07:00
Yury Semikhatsky 0f14446518
chore: log formatting for single state (#27351)
Fixes formatting for "waiting for element to be  and stable".
2023-09-29 09:14:26 -07:00
Dmitry Gozman 08e71fec5d
test: add installation tests for supposed plugin story (#27331) 2023-09-28 17:18:22 -07:00
Pavel Feldman 4fd2b4adef
chore: bump the babel (#27348) 2023-09-28 17:12:57 -07:00
Pavel Feldman 2892467839
chore: delete temporary artifacts after test (#27332) 2023-09-27 16:29:21 -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
Sander 2032b64ee6
feat(ct): allow baseUrl and host config (#27295)
closes: https://github.com/microsoft/playwright/issues/27283
2023-09-26 16:32:51 -07:00
Pavel Feldman ffd20f43f8
chore: dispose stale handles to prevent oom, 1000 of a kind max (#27315)
https://github.com/microsoft/playwright/issues/6319
2023-09-26 15:54:33 -07:00
Yury Semikhatsky d198784f1a
fix(blob): use reporters from the merge config (#27301)
Fixes https://github.com/microsoft/playwright/issues/27281
2023-09-26 11:41:17 -07:00
Pavel Feldman 07e794eb83
chore: follow up to runnable change (#27300) 2023-09-26 08:57:14 -07:00
Dmitry Gozman c0dc2328aa
chore: use JobDispatcher helper in one more place (#27299) 2023-09-25 20:08:22 -07:00
Pavel Feldman aed86c98a8
chore(ct): allow using component as a property (#27272) 2023-09-25 17:00:52 -07:00
Pavel Feldman 4e62468aee
chore: use closures to set current runnable (#27293) 2023-09-25 15:22:25 -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
wodyjowski 522782cce6
fix: desiredCapabilities removed (#27275)
DesiredCapabilities field was removed in selenium grid > 4.8.2
Without this field removed it's impossible to connect to grid.
Grid throws exception on POST /session
[stackoverflow issue](https://stackoverflow.com/a/76695833)

Fixes #27276
2023-09-25 13:52:16 -07:00
Dmitry Gozman 32a50e2d90
chore(test runner): use helper method in JobDispatcher (#27278) 2023-09-25 11:05:49 -07:00
Dmitry Gozman 7bd8032439
docs: mention Locator.first in toBeVisible (#27292)
Fixes #26842.
2023-09-25 10:59:39 -07:00
Dmitry Gozman 0f72ef0584
fix(streams): avoid leaking event listeners (#27291)
Fixes #26998.
2023-09-25 10:59:14 -07:00
Dmitry Gozman 66eb3043f5
feat(json report): expose startTime and duration (#27290)
Fixes #27183.
2023-09-25 10:58:55 -07:00
Pavel Feldman d6ec1ae399
chore: document chaining expect.extend (#27262)
Fixes https://github.com/microsoft/playwright/issues/15951
2023-09-22 13:56:59 -07:00
Pavel Feldman a6a0257c88
feat(expect): allow chaining expects (#27248) 2023-09-22 12:12:17 -07:00
Dmitry Gozman 49fd9500fe
fix: handle worker process start failure (#27249)
Worker process start failure is reported as a test error and skips other
tests from the group.
If happened during stop (e.g. from a Ctrl+C) before worker has fully
initialized, this error is ignored.

Drive-by: send SIGINT in tests to the whole tree, to better emulate
Ctrl+C behavior.
2023-09-22 10:57:35 -07:00
Pavel Feldman c7d9ae1c8b
ui(trace): make drawer appear under action list (#27260) 2023-09-22 10:43:44 -07:00
Dmitry Gozman ccaec034d8
chore(test runner): extract JobDispatcher (#26776) 2023-09-21 17:13:00 -07:00
Pavel Feldman 51a774f8a3
chore: include log in matcherResult (#27164) 2023-09-21 16:23:46 -07:00
Pavel Feldman 287d720b8e
chore: remove dedicated console channel (#27234) 2023-09-21 16:16:43 -07:00
Playwright Service 4bf5af6d86
feat(webkit): roll to r1912 (#27242) 2023-09-21 15:23:14 -07:00
Dmitry Gozman 1857a3fb56
fix(evaluate): make sure to try/catch toJSON access (#27238) 2023-09-21 13:31:28 -07:00
Playwright Service 1d6ec0923c
feat(webkit): roll to r1911 (#27226) 2023-09-21 09:33:12 -07:00
Dmitry Gozman b9509b3ec6
Revert "feat(evaluate): serialize map and set (#26730)" (#27219)
This reverts commit ee203b782c.

References #24040.
Fixes #27181.
2023-09-20 18:31:09 -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
Dmitry Gozman bb4268d165
fix(locators): do not escape regular expressions with u or v flag (#27188)
Fixes #27163.
2023-09-19 13:16:50 -07:00
Playwright Service ddcc52bfcc
feat(chromium-tip-of-tree): roll to r1152 (#27182)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-19 18:29:17 +02:00
Playwright Service f064fb6840
feat(firefox-beta): roll to r1425 (#27128)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2023-09-19 00:31:58 -07:00
Andrey Lushnikov 94e272ba0f
fix(firefox): properly handle navigations (#27132)
In firefox, the `frameRequestedNavigation` is coming from renderer and
thus can happen **after** the `Network.requestWillBeSent`, which is
dispatched from the browser process.

Fixes https://github.com/microsoft/playwright/issues/24132
2023-09-18 17:01:19 -07:00
Pavel Feldman 6b36a50969
chore: simplify expect zone wrapper (#27145) 2023-09-18 15:02:50 -07:00
Pavel Feldman 955be6bd61
chore: populate matcherResult for toHaveScreenshot (#27136)
Ref #26929
2023-09-18 09:12:23 -07:00
Playwright Service 3b4e21dd99
feat(webkit): roll to r1910 (#27134) 2023-09-18 08:57:34 -07:00
Pavel Feldman 9fe037fb63
chore: populate matcherResult in web assertions (#27133)
Ref https://github.com/microsoft/playwright/issues/26929
2023-09-16 14:24:10 -07:00
Dmitry Gozman 3bcf9687e6
fix(test runner): make sure auto worker fixtures run before auto test fixtures (#27131)
Fixes #27114.
2023-09-15 14:51:31 -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
Pavel Feldman c914d62c69
chore: nicer network grid header (#27102) 2023-09-15 09:16:29 -07:00
Max Schmitt 0d44405762
fix: custom expect matchers on Locator/Page/APIResponse instance (#27117)
Fixes https://github.com/microsoft/playwright/issues/27113
2023-09-15 18:05:44 +02:00
Yury Semikhatsky ebf6a08290
fix: list tests only once (#27103)
Fixes #27087
2023-09-14 20:00:30 -07:00
Pavel Feldman 699e790f69
chore: fit body in the network panel (#27100) 2023-09-14 17:15:24 -07:00
Dmitry Gozman a26f568b36
fix(tracing): support old traces with consoleMessage.args (#27095)
Fixes #27072.
2023-09-14 17:07:29 -07:00
Dmitry Gozman b3edf8e562
fix(har): handle invalid Expires/Max-Age (#27098)
Fixes #27073.
2023-09-14 17:06:56 -07:00
Pavel Feldman c6510ac000
chore: align select options docs (#27097)
Fixes: https://github.com/microsoft/playwright/issues/27094
2023-09-14 16:41:36 -07:00
David Paquette 3170963f42
fix: render JUnit attachment paths relative to outputFile (#27024) 2023-09-14 12:58:09 -07:00
Dmitry Gozman 603861c48d
fix: revert toMatchSnapshot deprecation (#27089)
- This reverts commit
8348f66107
landed in #26718.
- Update docs to point towards `toHaveScreenshot`.
2023-09-14 12:52:41 -07:00
Max Schmitt 4431a8366d
fix: collect stdio from forked processes (#27074)
A summary about the attempts we tried in
https://github.com/microsoft/playwright/pull/26931 for
https://github.com/microsoft/playwright/issues/26859 and
https://github.com/microsoft/playwright/issues/24591.

1. attempt: collect all the stdio from the worker host.
- this made it hard to capture the live console logs for the live trace
2. attempt: collect all the stdio from the worker host, but keep
proxying `process.{stdout,stderr}.write`.
- this solved the live console logs problem, since we could still listen
on them
- we found out about a race that the stdout/stderr streams can still
buffer data while the test already had finished
- we created a best effort flush implementation but didn't like the
complexity it introduced to the project
3. attempt: keep things like they are but also listen to stdio from the
worker host
- this solves the race of console.log in the test (things stay like they
are)
    - this keeps live trace working (things stay like they are)
- a known pitfall is that it could result in logs which don't end up in
the reporter onStdOut/onStdErr, but it is already a significant
improvement over how it was before.
      - before: they were not getting displayed
- after: they are getting displayed and there is a low likelihood that
they don't end up in the reporter API if the write happens slightly
before a test finished.

Closes #26931
Fixes #26859
Fixes #24591
2023-09-14 18:34:26 +02:00
Playwright Service 57e5183809
feat(chromium): roll to r1081 (#27080)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-14 16:00:21 +02:00
Playwright Service 3b16bbd04a
feat(chromium-tip-of-tree): roll to r1151 (#27081)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-14 16:00:06 +02:00
Dmitry Gozman f9298cfff6
fix(tracing): unclash trace names between test and hooks (#27063)
Fixes #27048.
2023-09-13 19:56:40 -07:00
Max Schmitt ce43ea7d99
chore: roll @zip.js/zip.js to 2.7.29 (#27047) 2023-09-13 18:39:10 +02:00
Max Schmitt c06ed8c0bc
chore: add --disable-search-engine-choice-screen flag to Chromium (#27038)
As per `https://github.com/puppeteer/puppeteer/pull/10880`
2023-09-13 18:06:50 +02:00
Playwright Service bf35390c8d
feat(webkit): roll to r1908 (#27049) 2023-09-13 17:40:18 +02:00
Playwright Service 00b74a4aae
feat(chromium): roll to r1080 (#27041)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-13 14:12:45 +02:00
Playwright Service 3203b6c31f
feat(chromium-tip-of-tree): roll to r1150 (#27031)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-13 08:59:12 +02:00
Yury Semikhatsky fac4560a82
chore(types): host, port in html reporter config (#27027) 2023-09-12 13:38:10 -07:00
Pavel Feldman 02c72e545b
feat(onEnd): allow overriding the exit code (#27010)
Fixes: https://github.com/microsoft/playwright/issues/26858
2023-09-12 13:37:30 -07:00
Max Schmitt d0945192a4
feat: make it possible to filter by column in HTML report (#27020) 2023-09-12 22:13:15 +02:00
Yury Semikhatsky 700b310150
fix(fetch): restore from empty storage state (#27025)
Fixes #26833
2023-09-12 13:11:18 -07:00
Pavel Feldman 97b3625049
chore: polish ui mode for better mac appearance (#27008) 2023-09-11 19:01:00 -07:00
Pavel Feldman 91478ea316
chore: document new onEnd params (#27006) 2023-09-11 18:17:49 -07:00
Andrey Lushnikov 41cd9e183a
chore: cut 1.38.0 branch (#27004) 2023-09-11 18:16:16 -07:00
Pavel Feldman 7c838653d6
chore: fix the split view, reset window on timeline click (#27007) 2023-09-11 18:16:02 -07:00
Dmitry Gozman d9eabda09d
fix(locators): escape quotes in regular expressions (#27002)
Fixes #26974.
2023-09-11 15:49:04 -07:00
Max Schmitt 6bbc09c96c
chore: show channel name in trace viewer metadata (#26987)
Fixes https://github.com/microsoft/playwright/issues/26986
2023-09-11 23:06:56 +02:00
Max Schmitt c327d5af5b
chore: roll TypeScript to 5.2.2 (#26977) 2023-09-11 18:18:19 +02:00
Max Schmitt 54f36bee93
chore: make html report image attachment clickable (#26978) 2023-09-11 08:44:00 +02:00
Pavel Feldman 80b9e02837
fix(trace): do not attach screenshots twice (#26971) 2023-09-08 18:00:12 -07:00
Yury Semikhatsky 2feae015aa
chore: remove details from markdown reports (#26961)
- remove error details from the reports
- collapse flaky tests by default
- limit comment to 65365 character

GitHub API has comment length limit 65536 chars:
```
Unhandled error: HttpError: Validation Failed: {"resource":"IssueComment","code":"unprocessable","field":"data","message":"Body is too long (maximum is 65536 characters)"}
```
2023-09-08 17:49:34 -07:00
Pavel Feldman c3f5486dab
chore: group attachments across actions in trace (#26969) 2023-09-08 16:47:45 -07:00
Dmitry Gozman 186f86905c
chore: make @playwright/test depend on playwright (#26946) 2023-09-08 14:23:35 -07:00
Pavel Feldman 8ba8c9385d
chore: keep split positions when zooming (#26942) 2023-09-08 12:30:08 -07:00
Playwright Service f5e6f2e6d2
feat(webkit): roll to r1907 (#26953) 2023-09-08 09:03:51 -07:00
Pavel Feldman 99047cba03
chore: add install browsers dialog (#26940) 2023-09-07 18:34:59 -07:00
Pavel Feldman 167c35ca66
chore: store scroll positions in trace viewer (#26938) 2023-09-07 17:14:39 -07:00
Playwright Service aa3f4f208e
feat(chromium): roll to r1079 (#26934) 2023-09-07 18:48:50 +02:00
Playwright Service e814657a38
feat(chromium-tip-of-tree): roll to r1149 (#26933)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-07 17:51:47 +02:00
Playwright Service bf1f2d2c81
feat(firefox): roll to r1424 (#26915)
Fixes https://github.com/microsoft/playwright/issues/26463

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-06 23:02:52 -07:00
Playwright Service bcf59ed721
feat(webkit): roll to r1905 (#26909) 2023-09-07 07:41:46 +02:00
Pavel Feldman 7fa16d2230
chore: pick frame selectors in recorder (#26923) 2023-09-06 18:35:32 -07: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
Pavel Feldman ea4974ce36
chore: allow resetting the time filter (#26920) 2023-09-06 16:14:26 -07:00
Dmitry Gozman cb8656f24f
chore: remove @types/node from deps (#26918)
This effectively reverts #14230. We will install `@types/node` in `npm
init playwright` instead.
2023-09-06 16:09:35 -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
Max Schmitt d79dad09e8
fix(ui-mode/tv): do not open new tab on macOS (#26877)
Fixes https://github.com/microsoft/playwright/issues/9434
2023-09-06 22:57:29 +02:00
Dmitry Gozman abea8f4d1c
docs: update deprecation messages for type() methods (#26912) 2023-09-06 12:41:12 -07:00
Dmitry Gozman 361038c950
feat: rename PageError to WebError (#26913) 2023-09-06 12:40:53 -07:00
Andrey Lushnikov 9105a20ac4
fix: remove window.stop() from page.setContent() implementation (#26886)
The call was added back in 2019 to stop network loading. See commit:
56a48559c2

However, there's no evidence that this call is needed any more:
- all the tests pass without it
- `window.stop()` behavior is poorly defined, so relying on it is
unfortunate.

The `window.stop()` call, however, causes trouble while rolling firefox:
under certain condititions, the call prevents document from firing the
`load` event in the `document.open().write(..).close()` sequence that
comes immediately after the call. While this does look like a bug in
Firefox itself, we failed to reproduce it in isolation.

For the reference, the following tests fail with the Firefox 116 (using
`PWTEST_TRACE=1` triggers the race condition somewhere):

```bash
PWTEST_TRACE=1 npm run ftest cli-codegen
```
2023-09-06 11:02:38 -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
Playwright Service 500821d1bd
feat(chromium-tip-of-tree): roll to r1148 (#26904)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-06 18:15:32 +02:00
Pavel Feldman e0db46ae14
chore: highlight ansi in browser messages as well (#26881) 2023-09-05 17:29:07 -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
Playwright Service 94c1b749b2
feat(webkit): roll to r1904 (#26855)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-04 16:08:23 +02:00
Pavel Feldman 8c494e2519
chore: add log/error tabs and counters (#26843) 2023-09-01 20:12:05 -07:00
Pavel Feldman 1c5f53f216
chore: show innermost error in ui mode (#26840) 2023-09-01 13:48:15 -07:00
Pavel Feldman a339bead09
chore: implement faster ansi2html format for console (#26826) 2023-09-01 09:09:47 -07:00
Andrey Lushnikov 54e4e5caca
fix: implement atomic append for compilation cache (#26830)
Note: this reverts commit ffd6cf60eb.

Fixes #26769
2023-08-31 17:55:13 -07:00
Pavel Feldman 4948920437
fix(ui): do not log from beforeAll twice (#26799)
Fixes https://github.com/microsoft/playwright/issues/26790
2023-08-31 17:34:15 -07:00
Dmitry Gozman f3c02a5b4f
fix(trace viewer): make red dot to the center of the target element (#26825)
Also make sure red dot is visible in the popout tab.

Fixes #24532.
2023-08-31 16:52:54 -07:00
Dmitry Gozman fa286de0b3
fix(test runner): extract FailureTracker helper (#26757)
This way we can reuse it for:
- tracking `maxFailures` across phases;
- tracking failures for runner;
- tracking failures for `runJob` helper class later on.

Fixes #26344.
2023-08-31 15:32:29 -07:00
Dmitry Gozman 6d85ba1494
fix: remove connectInsteadOfLaunching (#26828) 2023-08-31 15:29:04 -07:00
Max Schmitt b387249e45
chore: enhance download/install logic of branded browsers (#26806)
- Remove the check for 32 vs. 64 bit, since we only support 64 Windows
since a while
- Introduce `$ErrorActionPreference = 'Stop'` which is a best practice
otherwise the code would have continued running even a statement/line
was failing. E.g. download failed, it would still try to install
- `$ms.DownloadFile` checks for the status code internally, so we are
safe regarding this, it will throw otherwise.

This won't fix https://github.com/microsoft/playwright/issues/26591 but
makes the code more safe and might be related.
2023-08-31 22:48:07 +02: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
Max Schmitt cb67427d56
chore: fix html-reporter/trace-viewer TSC errors (#26813) 2023-08-31 18:08:38 +02:00
Playwright Service 6629b31a97
feat(webkit): roll to r1902 (#26812)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-31 17:31:13 +02:00
Playwright Service 51792c1417
feat(chromium-tip-of-tree): roll to r1147 (#26815)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-31 17:16:31 +02:00
Playwright Service 60e70c187d
feat(chromium): roll to r1078 (#26811)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-31 16:03:16 +02:00
Pavel Feldman 123ee9ddc1
chore: trace timeline ux (#26797) 2023-08-30 15:48:51 -07:00
Pavel Feldman fd31f5bc50
chore: fix har date types (#26783) 2023-08-30 12:40:46 -07:00
Pavel Feldman a34deffa43
chore: highlight actions and har entries in timeline (#26781) 2023-08-29 22:23:08 -07:00
Pavel Feldman c209d7e708
chore: more network panel polish (#26780) 2023-08-29 22:20:28 -07:00
Pavel Feldman 34c6197f9e
chore: include start/endTime and duration in onEnd report callback (#26760)
Fixes https://github.com/microsoft/playwright/issues/23637
2023-08-29 10:56:21 -07:00
Max Schmitt a9bc1a1707
fix(trace-viewer): SVG images were not loading (#26755)
Fixes https://github.com/microsoft/playwright/issues/26745

Drive-by: make Codemirror read-only.
2023-08-29 18:05:01 +02:00
Playwright Service f3ece09063
feat(chromium-tip-of-tree): roll to r1146 (#26770)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-29 16:42:49 +02:00
Pavel Feldman 99b8ca2be2
chore: flush har when recording tracing (#26746) 2023-08-28 17:44:48 -07:00
Dmitry Gozman 4bbd16d316
chore(test runner): decouple runJob from the Dispacther (#26756)
In preparation to extracting a class for it.
2023-08-28 15:41:14 -07:00
Pavel Feldman 38f1e62642
chore: use custom expect message in trace step (#26752) 2023-08-28 14:48:24 -07:00
Sander ee203b782c
feat(evaluate): serialize map and set (#26730)
closes: https://github.com/microsoft/playwright/issues/24040
2023-08-28 14:32:41 -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 5c72cbdb23
feat(webkit): roll WebKit to r1898 (#26738) 2023-08-28 19:44:52 +02:00
Max Schmitt 39f8f2ed8d
fix(trace-viewer): use sdkLanguage for Pick Locator (#26737)
Fixes https://github.com/microsoft/playwright/issues/26736
2023-08-28 17:39:02 +02:00
Dmitry Gozman 36347e7fea
feat: make playwright package not install browsers automatically (#26672)
Additionally introduce `@playwright/browser-<browser>` packages that
just download the respective browser, but do not export anything.

References #26614.
2023-08-27 07:24:35 -07:00
Playwright Service 72aef6bc1d
feat(chromium-tip-of-tree): roll to r1145 (#26726)
Fixes https://github.com/microsoft/playwright/issues/26713

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-26 12:36:05 +02:00
Max Schmitt 1b30347ae5
fix: maxFailures reached follow-up (#26717) 2023-08-26 08:10:42 +02:00
Pavel Feldman eb9ef64e7d
fix(android): use domain socket suffix chrome can discover (#26724)
Fixes: https://github.com/microsoft/playwright/issues/26721
2023-08-25 19:30:09 -07:00
Pavel Feldman ee86b9bc94
chore: network panel ui polish (#26722) 2023-08-25 19:20:36 -07:00
Dmitry Gozman 8348f66107
feat: deprecate toMatchSnapshot for buffers (#26718)
These are usually used for screenshots instead of toHaveScreenshot.
String-based snapshots are left as is.

<img width="836" alt="deprecated"
src="https://github.com/microsoft/playwright/assets/9881434/d02818da-7eea-47fc-8ea8-4104b0dd49b5">

---

Also deemphasized toMatchSnapshot throughout all docs.

Fixes #26612.
2023-08-25 18:20:01 -07:00
Pavel Feldman bc1f6272d8
chore: deflate large web socket messages (#26720) 2023-08-25 16:13:46 -07:00
Pavel Feldman 0ecd561db2
chore: improve network panel rendering (#26708) 2023-08-25 12:10:28 -07:00
Playwright Service ce446437fb
feat(chromium): roll to r1077 (#26709)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-25 19:31:19 +02:00
Max Schmitt 9ae77a71fd
feat: print message if maxFailures has reached (#26322)
Fixes https://github.com/microsoft/playwright/issues/24239
2023-08-25 19:06:49 +02:00
Max Schmitt 70dcaabdee
fix: pass sdkLanguage to service server (#26702) 2023-08-25 17:40:26 +02:00
Pavel Feldman e7bd1864a8
chore: do not add plugins to config twice (#26670) 2023-08-24 16:19:57 -07:00
Yury Semikhatsky 39a6b23309
devops: create blob reports for all "tests 1" (#26694) 2023-08-24 16:06:41 -07:00
Dmitry Gozman c970179551
fix(resolver): allow importing packages with non-index main script (#26692)
Regressed in https://github.com/microsoft/playwright/pull/23254.

Fixes #26650.
2023-08-24 14:09:00 -07:00
Dmitry Gozman 0ecc13038f
fix(textContent): make it work for ShadowRoot (#26690)
It used to work, but regressed in v1.36.

Fixes #26636.
2023-08-24 12:59:42 -07:00
Pavel Feldman 6d4f937674
chore: fix installation tests (#26691) 2023-08-24 12:48:39 -07:00
Dmitry Gozman c90c943154
fix(test.fail): expect() failure should not skip future tests (#26663)
We used to stop the worker that would skip future tests. Regressed in
https://github.com/microsoft/playwright/pull/11850.

Fixes #26435.
2023-08-24 08:32:14 -07:00
Pavel Feldman 0406e45cf3
chore: render download progress in the host process (#26666) 2023-08-24 07:33:32 -07:00
Dmitry Gozman 81cc39ea6e
feat(expect): narrow down available assertions for Page/Locator/APIResponse (#26658)
Fixes #26381.
2023-08-23 13:14:39 -07:00
Pavel Feldman 197f79c933
chore: show action on hover even if there is no film (#26655) 2023-08-23 12:55:01 -07:00
Dmitry Gozman 44d3770559
fix(selector generator): escape all tag names in css selectors (#26659)
Fixes #26657.
2023-08-23 12:32:08 -07:00
Pavel Feldman 46e33cd384
feat: allow installing browsers from ui (#26628) 2023-08-23 12:26:11 -07:00
Max Schmitt f41c862ac6
fix: process host early exit crash (#26642) 2023-08-23 18:03:24 +02:00
Dmitry Gozman 218955c155
fix(test runner): make sure static annotations are reported for skipped tests (#26634)
Fixes #26397.
2023-08-23 08:40:12 -07:00
Pavel Feldman f4f9e526a2
chore: tolerate css imports (#26626)
Fixes https://github.com/microsoft/playwright/issues/24580
2023-08-23 08:32:23 -07:00
Pavel Feldman 91b784e15e
chore: update icon font (#26627) 2023-08-23 08:31:43 -07:00
Pavel Feldman 00e6540799
feat(ui): show test trace events live (#26619) 2023-08-22 15:46:41 -07:00
Dmitry Gozman c4e79eb6ed
feat: replace Locator.type with Locator.pressSequentially (#26624)
Also deprecate `Locator.type`, `Frame.type`, `Page.type` and
`ElementHandle.type`, but not `Keyboard.type`.

References #24614.
2023-08-22 15:21:00 -07:00
Pavel Feldman 65aa062ea1
fix(console): make format console message w/o args (#26620)
Fixes https://github.com/microsoft/playwright/issues/26600
2023-08-22 14:29:35 -07:00
Dmitry Gozman 5646875e5c
fix: make Request.frame throw when page is not ready yet (#26616)
Suggest to check `request.isNavigationRequest()` beforehand.

Fixes #24603.
2023-08-22 14:06:21 -07:00
Pavel Feldman afc5ebe075
chore: give more time to polling matchers to print friendly error (#26595) 2023-08-22 09:01:42 -07: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 18e03da445
docs: use absolute paths for file uploads (#26611)
Fixes https://github.com/microsoft/playwright/issues/26536

This makes it a bit harder for MJS customers, but I guess they know that
they can do

    const dirname = path.dirname(url.fileURLToPath(import.meta.url));
2023-08-22 17:38:23 +02:00
Max Schmitt 399f5383bc
chore: fix installation tests (#26602) 2023-08-22 16:48:52 +02:00
Max Schmitt e4366e59e2
chore: fix docs & lint check (#26598)
This broke after https://github.com/microsoft/playwright/pull/26594.
2023-08-22 16:45:41 +02:00
Pavel Feldman 1ceaa923ea
chore: create artifacts dir in the test runner (#26594) 2023-08-21 19:41:10 -07:00
Pavel Feldman fe7b956c3b
chore: allow toggling sidebar location (#26589) 2023-08-21 19:40:44 -07:00
Dmitry Gozman 72bdd43e69
fix(route): make sure Route.fetch works for popup main request (#26590)
References #24603.
2023-08-21 16:48:51 -07: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 2b16860e06
chore: locator tab polish (#26568) 2023-08-21 10:59:49 -07:00
Pavel Feldman f83d81956d
chore: make console stream live in ui mode (#26562) 2023-08-21 10:59:37 -07:00
Dmitry Gozman 32a309ccb8
chore: install source map support lazily (#26445)
This way we allow importing from `@playwright/test` without affecting
stack traces.

Fixes #26346.
2023-08-21 10:54:42 -07:00
Richard Blažo bcc30bc71e
feat: add title for before and after hooks (#26523) 2023-08-21 09:50:22 -07:00
Max Schmitt 2f6148bcd1
chore: use SVG icons for web apps (#26564)
Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-08-21 18:33:02 +02:00
Tmk fbe3ef92e5
feat: allow absolute ctTemplateDir (#26526) 2023-08-21 09:30:56 -07:00
Kevin Centeno ba4c242a82
docs(assertions): remove unneeded await in generic assertions example (#26569) 2023-08-21 18:13:25 +02:00
Sander 06d2e7d480
fix(ct): vue jsx mount options type (#26566) 2023-08-21 08:48:03 -07:00
Pavel Feldman 41c312cd04
chore: fix ui mode to show screenshots (#26563) 2023-08-20 14:47:18 -07:00
Max Schmitt 3ac61f5c49
feat(chromium-tip-of-tree): roll to r1144 (#26565)
Note: r1143 got skipped due to a Windows build failure.
2023-08-20 14:08:45 +02:00
Sander e2a11bed19
feat(ct): svelte vite context (#26554) 2023-08-19 16:26:06 -07:00
Marcin Strzyz 192b697488
chore: remove old webpack folder structure (#26560) 2023-08-19 16:16:44 -07:00
Pavel Feldman 09bb866333
chore: format console message from page (#26555) 2023-08-19 16:13:42 -07:00
Pavel Feldman 8f31191637
chore: pick locator tab (#26532) 2023-08-18 17:53:03 -07:00
Max Schmitt 22dacdb75f
fix: component testing types with moduleresolution: bundler (#26551)
Fixes https://github.com/microsoft/playwright/issues/24581
2023-08-18 22:44:05 +02:00
Max Schmitt 29fbcbee69
fix: warn if PWT commands get executed without PWT (#26542)
Fixes https://github.com/microsoft/playwright/issues/26541
2023-08-18 18:26:34 +02:00
Max Schmitt 703f590146
feat(webkit): roll to r1887 (#26528) 2023-08-17 22:17:28 +02:00
Marcin Strzyz 6b2d93a890
chore: error on unused eslint disables (#26510) 2023-08-17 20:53:36 +02:00
Pavel Feldman 049f839b30
chore: use glass pane for dragging (#26513) 2023-08-17 09:36:59 -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
Jean-François Greffier dcab22c307
feat: display package manager in CLI help and tips (#26450)
Display `npx playwright`, `yarn playwright` or `pnpm exec playwright` in
CLI

Fixes #21425
2023-08-17 08:53:08 -07:00
Jonah 0c3703fda1
feat: add iPhone 14 family (#24570)
Fixes #24214
2023-08-17 11:05:40 +02:00
Max Schmitt 75ed251c9e
fix: download of attachments in UI Mode (#26407)
Fixes https://github.com/microsoft/playwright/issues/26326.
2023-08-17 10:57:28 +02:00
Marcin Strzyz 0e6deb7c8d
chore: Update to latest version of TS Eslint to get TS 5.1 support. (#26511)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-08-17 10:57:13 +02:00
Marcin Strzyz 42543a48a7
fix: fixed PW_TEST_HTML_REPORT_OPEN + more type safe + doc (#24571)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-08-17 09:48:59 +02:00
Pavel Feldman a705d68c8a
chore: filter actions, console and network based on the timeline window (#26509) 2023-08-16 16:30:17 -07:00
ggorlen 0149c7d56c
docs: fix typo in Reporter.onEnd (#26486)
Signed-off-by: ggorlen <gsgorlen@gmail.com>
2023-08-17 00:40:14 +02:00
Pavel Feldman 929a849265
chore: fix .only in dependent tests (#26503)
Fixes https://github.com/microsoft/playwright/issues/26492
2023-08-16 13:39:08 -07:00
Max Schmitt 1a1ff6c671
chore: move launchApp into separate function (#26499)
https://github.com/microsoft/playwright/pull/26407#discussion_r1290727547
2023-08-16 18:13:40 +02:00
Max Schmitt 4c4525c9e0
chore: make html report produce named attachments (#26421)
https://github.com/microsoft/playwright/issues/26326
2023-08-16 18:06:04 +02:00
Max Schmitt d2165f3e2d
feat(webkit): roll to 1886 (#26490) 2023-08-16 10:10:14 +02:00
Pavel Feldman 576608b69d
chore: revert #24598 (#26484) 2023-08-15 11:29:33 -07:00
Max Schmitt 2deabefa71
fix: Locator.evaluateHandle types (#26469)
Fixes https://github.com/microsoft/playwright/issues/26449
2023-08-14 18:27:25 +02:00
Playwright Service 04b71bf660
feat(chromium-tip-of-tree): roll to r1142 (#26441) 2023-08-12 20:00:16 +02: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
Max Schmitt bd988b34a7
chore: allow calling spawnSync on Node.js file inside test (#26429)
Fixes https://github.com/microsoft/playwright/issues/24516

Relates https://github.com/microsoft/playwright/pull/16733
2023-08-11 18:37:14 +02:00
Dmitry Gozman b899d61a51
docs: examples that save download with suggested filename (#26425)
Fixes #26341.
2023-08-10 17:20:39 -07:00
Pavel Feldman d0fec20fe1
chore: update test certificates (#26423) 2023-08-10 17:06:03 -07:00
Dmitry Gozman 050f26764e
docs: explain how to reset storage state (#26422)
References #26374.
2023-08-10 16:32:45 -07:00
Dmitry Gozman c37dfb379b
docs: make sure usage comes after description when templating (#26420) 2023-08-10 14:48:26 -07:00
Yury Semikhatsky 00c8dd7ecc
chore(html): remove unused map (#26415) 2023-08-10 13:02:35 -07:00
Yury Semikhatsky ad9d20311a
fix(merge): allow reports with same name as input (#26413) 2023-08-10 12:47:31 -07:00
Playwright Service ca06aca161
feat(webkit): roll to r1884 (#26406)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-10 17:44:19 +02:00
Playwright Service 167165d179
feat(chromium): roll to r1076 (#26400)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-10 15:16:10 +02:00
Yury Semikhatsky d44a127014
chore: delete raw reporter (#26391)
Build HTML reporter using TeleReceiver's structures directly, this saves
us unnecessary memory allocation for the intermediate structures.
2023-08-09 22:01:44 -07:00
Pavel Feldman 7a250a960b
chore: roll grid deps for socks proxy (#26392) 2023-08-09 21:18:36 -07:00
Pavel Feldman 08d6abab4a
chore: allow merging defineConfig (#26390) 2023-08-09 17:23:34 -07:00
Dmitry Gozman cadc3153f7
fix(test runner): failed + skipped = flaky (#26385)
Fixes #17652.
2023-08-09 16:35:14 -07:00
Andrey Lushnikov a61431f6bb
chore: cut 1.37.0 branch (#26357) 2023-08-09 01:46:29 -07:00
Pavel Feldman 65ac0d5256
chore: add k8s grid deployments (#26359) 2023-08-08 18:46:32 -07:00
Andrey Lushnikov ffd6cf60eb
fix: eliminate race in compilation cache (#26353)
Fixes https://github.com/microsoft/playwright/issues/24569
2023-08-08 15:09:20 -07:00
Yury Semikhatsky bc2c7946bb
fix: do not throw when merging into blob report (#26355)
We cannot import a Symbol to isomorphic code from config. Instead,
__projectId property is used.
2023-08-08 14:47:12 -07:00
Yury Semikhatsky 8fcb6383ce
chore(blob): store playwright user agent (#26337) 2023-08-08 10:39:48 -07:00
Yury Semikhatsky 0e20d352cf
chore(merge): read test events from one file at a time (#26333)
Reference https://github.com/microsoft/playwright/issues/24451
2023-08-07 17:39:32 -07:00
Yury Semikhatsky 7f1f62795d
chore(blob): add dash to report name (#26335)
This regressed in #25017
2023-08-07 17:22:31 -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
Dmitry Gozman 90c765d31c
chore(blob): split onBegin into multiple onProject events (#26329) 2023-08-07 14:33:18 -07:00
Dmitry Gozman 27c15b705d
fix(blob): replace projectSuffix with reportName (#25017)
Always ensure unique project/test ids across blobs.
Show `reportName` as a label in the html report.

References #24451.
2023-08-07 13:38:09 -07:00
Max Schmitt 1383844af8
docs: make --grep more clear (#26324)
Fixes https://github.com/microsoft/playwright/issues/24604
2023-08-07 17:40:30 +02:00
Playwright Service bddd4eadad
feat(webkit): roll to r1883 (#26318)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-07 16:09:37 +02:00
Andrey Lushnikov fa8f3f6454
fix: use snapshotPath instead of expectedPath for image diffs (#24567)
This opens a road to the "accept new screenshot" button in
Playwright tools.

References https://github.com/microsoft/playwright/issues/24310
2023-08-07 04:42:35 -07:00
Marcin Strzyz 53fd4bedb4
chore: ensure the file operations are async in the junit reporter (#24577) 2023-08-07 10:03:01 +02:00
Yury Semikhatsky f1f43c9ad1
chore(merger): internalize json strings after parse (#25801)
Reference: https://github.com/microsoft/playwright/issues/24451
2023-08-05 13:17:39 -07:00
Pavel Feldman 414a4c3ef0
chore: pass color through in web server commands (#24619) 2023-08-05 09:01:27 -07:00
Pavel Feldman 120de62798
chore(grid): add command line options (#24802) 2023-08-04 18:08:50 -07:00
Yury Semikhatsky 6c3142959d
fix(blob): store startTime as a number (#24620)
Turns out the Date objects have noticeable footprint on large suites and
storing them as umber is much cheaper, e.g.:


![image](https://github.com/microsoft/playwright/assets/9798949/539028d0-3ef8-46f7-be2b-752f24604d18)
2023-08-04 16:06:23 -07:00
Dmitry Gozman 1d4919cea4
docs: encourage using fill instead of type (#24616)
References #24614.
2023-08-04 14:19:57 -07:00
Yury Semikhatsky d62493f925
chore: intern test ids and abs paths (#24618)
Created named classes for TeleTestStep and TeleTestResult which makes it
easier to analyze in heap snapshot. Also changing `titlePath` from a
closure to a method on TeleTestStep saved ~100Mb out of 2300Mb.

Intern test ids and absolute paths which showed up a lot of duplicate
strings in heap snapshot.

Clear stepMap after processing onTestEnd.
2023-08-04 14:10:06 -07:00
Ben McCann 6ebee33857
chore: prefer import over require (#24568) 2023-08-04 13:21:41 -07:00
Pavel Feldman 8fde110c61
chore: allow web server w/o waiting (#24609) 2023-08-04 12:05:16 -07:00
Pavel Feldman b3ce913551
Revert "chore: allow calling spawnSync on Node.js file inside test" (#24611)
Reverts microsoft/playwright#24539
2023-08-04 09:01:38 -07:00
Pavel Feldman 6731f5b6d5
chore: grid placeholder (#24598) 2023-08-04 08:38:07 -07:00
Playwright Service dfea18b588
feat(chromium): roll to r1075 (#24605)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-04 15:20:52 +02:00
Yury Semikhatsky 9575867f1c
fix(blob): throw if blob report has newer version than the merger (#24593) 2023-08-03 15:11:34 -07:00
Max Schmitt 2193903d03
chore: allow calling spawnSync on Node.js file inside test (#24539)
Fixes https://github.com/microsoft/playwright/issues/24516 

Relates https://github.com/microsoft/playwright/pull/16733
2023-08-04 00:03:14 +02:00
Yury Semikhatsky 8e2f33673b
chore(blob): change file name to report{-suffix}{-shard}.zip (#24592) 2023-08-03 13:23:30 -07:00
Playwright Service b4c9f5ab89
feat(webkit): roll to r1882 (#24584)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-03 17:40:54 +02:00
Yury Semikhatsky a867e738db
chore(merge): console status updates (#24559) 2023-08-02 14:49:06 -07:00
Max Schmitt b0473b71cd
chore: limit docs snippet length to 100 (#24563) 2023-08-02 11:23:47 +02:00
Yury Semikhatsky f5d069541d
chore(blob): add version to metadata (#24556) 2023-08-01 16:06:06 -07:00
Yury Semikhatsky 8da37b364b
chore(blob): zip output directory by default (#24536)
Changed the logic to add attachment to the zip in onEnd rather than
onTestEnd because attachment files can be deleted if e.g. preserveOutput
option is specified. Instead we add files once all workers have been
shut down. On a simple run with 1000 tests each adding 1Mb attachment
the overall time difference is 49s (streaming attachments) v 1m9s
(attachments added in the end).
2023-08-01 15:21:23 -07:00
Yury Semikhatsky ce341ae5b5
docs: clarify setContent semantics (#24553)
Fixes https://github.com/microsoft/playwright/issues/24503
2023-08-01 11:45:58 -07:00
Playwright Service 9d5d2c60bb
feat(firefox-beta): roll to r1422 (#24533)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-01 04:28:30 -07:00
Sander 7c5d73a3c3
feat(ct): vue type safe mount props (#23151) 2023-07-31 17:45:34 -07:00
Sander 98cba15938
feat(ct): vue2 type safe mount props (#23194) 2023-07-31 17:44:43 -07:00
Playwright Service dc5e201611
feat(firefox): roll to r1422 (#24531)
Fixes https://github.com/microsoft/playwright/issues/24132

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-31 17:10:22 -07:00
Pavel Feldman 009f9994df
fix(html): mobile layout for filters (#24506) 2023-07-31 16:54:07 -07:00
Playwright Service 77b1ec4a53
feat(webkit): roll to r1881 (#24521)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-31 23:31:35 +02:00
Andrey Lushnikov f135b5f7a8
fix: make sure monotonicTime() value is reasonable (#24518)
https://github.com/microsoft/playwright/issues/24432
2023-07-31 09:42:08 -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
Dmitry Gozman a74101d98f
docs: document expect's asymmetric matchers (#24498)
References #24460, #24417.
2023-07-28 14:04:01 -07:00
Playwright Service 947637d19f
feat(webkit): roll to r1880 (#24496) 2023-07-28 21:26:43 +02:00
Pavel Feldman b5d49d0849
chore: do not pass access-key header into the redirects (#24478) 2023-07-27 19:03:14 -07:00
Dmitry Gozman 9c70a75d48
fix(merge): make sure testId from different blobs are unique (#24475)
Fixes a scenario where each shard runs the same setup project.

References #24451.
2023-07-27 18:54:00 -07:00
Dmitry Gozman 1754755684
fix(tracing): make sure resetForReuse does not throw (#24415)
When trace chunk recording is in progress, calling `stop()` throws
`Error: Must stop trace file before stopping tracing`.
2023-07-27 08:06:42 -07:00
Dmitry Gozman 1b233a5ae2
fix(trace viewer): do not serve 304 responses (#24435)
These do not have any content, and we should server the original
response that was cached by the browser.

Fixes #24255.
2023-07-27 08:06:00 -07:00
Playwright Service 9b364f072d
feat(chromium-tip-of-tree): roll to r1136 (#24463)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-27 15:46:16 +02:00
Playwright Service b1ea9507a8
feat(chromium): roll to r1074 (#24461)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-27 15:02:40 +02:00
Playwright Service 7524894512
feat(firefox-beta): roll to r1421 (#24439)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-27 01:29:38 -07:00
Playwright Service 682a7f0227
feat(firefox): roll to r1421 (#24433)
Fixes https://github.com/microsoft/playwright/issues/22590

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-27 01:29:17 -07:00
Dmitry Gozman c8f2fc392a
chore: move fs operation in trace recorder to a separate class (#24383) 2023-07-26 17:31:00 -07:00
Dmitry Gozman ea6d127f28
feat(connect): exposeNetwork option (#24436) 2023-07-26 17:29:31 -07:00
Dmitry Gozman e0cbb0882b
fix(launch): default to non-zero launch timeout (#24440)
When not specified, launch timeout is 3 minutes, taken from the
`DEFAULT_LAUNCH_TIMEOUT` constant.
Also, use the default launch timeout for `electron.launch()` instead of
default regular timeout.
2023-07-26 16:16:00 -07:00
Dmitry Gozman c8b45aa844
chore: validate markdown links in doclint (#24444)
Fixes #24421.
2023-07-26 16:15:07 -07:00
Dmitry Gozman 4be1e479ea
fix(artifacts): only attach screenshot when it succeeds (#24406)
Fixes #24378.
2023-07-26 15:22:04 -07:00
Pavel Feldman 4949cef09c
chore: save chrome trace on the client side (#24414) 2023-07-26 14:11:26 -07:00
Dmitry Gozman ed99ac7395
fix(sigint): make sure we do not add handler twice (#24413)
In the following scenario, we were adding SIGINT handler twice, but
removing it just once:
- Task runner starts testing, creates SigIntWatcher, installs SIGINT
handler.
- Press Ctrl+C, task runner interrupts, disarms SigIntWatcher, SIGINT
handler is not removed due to 1000ms cooldown.
- Task runner starts cleanup, creates SigIntWatcher, installs another
SIGINT handler.
- Cleanup finishes, SigIntWatcher disarms, could remove or not remove
SIGINT handler based on timing (same 1000ms cooldown). In any case, we
have one or two SIGINT handlers still on.
- HTML reporter hangs in onExit, while we still have SIGINT handler up,
so Ctrl+C does not exit.

Regressed in #24265.
2023-07-25 18:35:38 -07:00
Pavel Feldman b39fd7283f
chore: skip tests that fail in cross-machine service mode (#24412) 2023-07-25 16:47:04 -07:00
Dmitry Gozman 9d0bba9c99
fix(tracing): do not throw on missing attachments (#24409)
Fixes #24378.
2023-07-25 14:32:56 -07:00
Pavel Feldman 33d62d9a97
chore: do not use relative xpath when querying from document (#24405)
Fixes https://github.com/microsoft/playwright/issues/24399
2023-07-25 12:55:35 -07:00
Playwright Service afd6f7d342
feat(chromium-tip-of-tree): roll to r1135 (#24393)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-25 15:05:56 +02:00
Max Schmitt 5c41c6e799
chore: allow installing Google Chrome on Debian (#24386)
Fixes https://github.com/microsoft/playwright/issues/24357
2023-07-25 00:52:19 +02:00
Dmitry Gozman 4c8912f74e
chore: remove separate process that cleans up directories (#24376)
A separate process is `spawnSync`'ed on process exit to cleanup
temporary directories, introduced in #13769 that followed up after
#13343.

A separate process might stall for various fs-related issues, which
prevents the original process from exiting.

With the recent changes, we always gracefully close and cleanup after
all launched executables before calling `process.exit()`, and so it
should only be possible to leave temp directories when using Playwright
and calling `process.exit()` programmatically without closing browsers.

We can now drop the extra process and rely on `rimraf.sync` for
last-resort cleanup in these rare circumstances.
2023-07-24 15:24:29 -07:00
Sander 1abff78de2
fix(ct): remove json typechecking (#24114) 2023-07-24 15:22:20 -07:00
Marcin Strzyz 78a2b7237e
feat: add screen definitions for ipad gen 5 (#24355) 2023-07-24 14:57:12 -07:00
Pavel Feldman 4ba6d789bc
Revert "chore: refactor timeout manager to use scopes (1) (#24315)" (#24382)
This reverts commit f5df0940c9.
2023-07-24 14:09:20 -07:00
Playwright Service d144c5e6e3
feat(webkit): roll to r1879 (#24380)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-24 22:40:54 +02:00
Andrey Lushnikov fee08a6d3b
fix: properly handle character sets in globs (#24371)
https://github.com/microsoft/playwright/issues/24316
2023-07-24 09:49:05 -07:00
Dmitry Gozman b4c412eb1f
chore: replace process.exit with graceful closure (#24242)
Everywhere we call `process.exit()`, we might actually need to
gracefully close all browsers.
2023-07-24 08:29:29 -07:00
Alex Ravenna b93b2a7155
docs: fix minor grammar and text issues (#24331) 2023-07-24 14:59:15 +02:00
Dmitry Gozman 2cb0622c39
chore: rename ScopedRace to LongStandingScope, preserve Error instance in reject() (#24361) 2023-07-23 21:00:07 -07:00
Marcin Strzyz 2070861807
chore: ensure the file operations are async in the json reporter. (#24356) 2023-07-23 09:26:32 +02:00
Yury Semikhatsky 6a3721eb9c
chore: delete --attachments option from merge-reports command (#24350)
We recommend uploading all resources along with the generated report. If
need be we'll reconsider adding the option later.
2023-07-21 13:15:00 -07:00
Andrey Lushnikov d307c8e63a
fix(ssim-cie94): make sure a single off pixel yields diff in comparator (#24348)
This patch brings in antialiasing tests from `looks-same` project for
our experimental `ssim-cie94` comparator.

One of the new tests found a bug in our implementation.

References https://github.com/microsoft/playwright/issues/24312
2023-07-21 12:27:52 -07:00
Playwright Service aa39f39bda
feat(webkit): roll to r1878 (#24340)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-21 09:55:30 +02:00
Pavel Feldman f5df0940c9
chore: refactor timeout manager to use scopes (1) (#24315) 2023-07-20 17:21:21 -07:00
Dmitry Gozman 767addec8c
chore: make sure to call task's teardown if it has ever started (#24317)
This way things like WebServerPlugin can cleanup after themselves even
if they failed to start or were interrupted mid-way.
2023-07-20 17:16:22 -07:00
Yury Semikhatsky 59d5198d17
fix(fetch): handle negative max-age and expires attributes (#24311)
Fixes #24221
2023-07-20 15:42:52 -07:00
Playwright Service 57305e985e
feat(webkit): roll to r1877 (#24330)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-20 17:47:21 +02:00
Playwright Service 80daf47d44
feat(chromium): roll to r1073 (#24326)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-20 16:15:56 +02:00
Playwright Service 7ba60ca91d
feat(chromium-tip-of-tree): roll to r1134 (#24325)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-20 16:15:40 +02:00
Playwright Service eac47ce913
feat(webkit): roll to r1876 (#24302)
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-07-19 18:24:59 +02:00
Playwright Service 20fcd6b272
feat(webkit): roll to r1875 (#24299)
Since
99ff08340f
search event is disabled in cocoa.

---------

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-07-19 18:24:21 +02:00
Max Schmitt 1288519915
fix(ui-mode): run teardown handlers with Command + C (#24267)
Fixes https://github.com/microsoft/playwright/issues/23907
2023-07-19 17:50:25 +02:00
Andrey Lushnikov 1fdd7541e0
chore: add firefox-asan for stress tests (#24049) 2023-07-19 05:53:52 -07:00
Playwright Service fbb384483b
feat(webkit): roll to r1874 (#24297)
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-07-19 14:20:19 +02:00
Playwright Service a136763118
feat(webkit): roll to r1873 (#24296)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-19 14:19:05 +02:00
Max Schmitt 9af0c6d822
chore: remove glob dependency from utils bundle (#24291) 2023-07-19 05:17:34 +02:00
Pavel Feldman 879ddb73b0
chore: show last poller error on test timeout (#24292) 2023-07-18 17:03:26 -07:00
Marcin Strzyz d5e7b4f16f
chore: update rimraf package to version 4 to eliminate "promisify" (#24190)
Migrate to version 4 which returns a promise rather than leverages a
callback. -> https://www.npmjs.com/package/rimraf?activeTab=readme

- contains its own types, eliminate "@types/rimraf"
- Parameter `maxBusyTries` changed to `maxRetries`
2023-07-18 19:58:07 +02:00
Marcin Strzyz 0eb94aaa79
chore: refactored minimum Node Major version to variable (#24188) 2023-07-18 19:57:48 +02:00
Max Schmitt d2f581a19c
fix(test-runner): don't double emit SIGINT in long running test (#24265)
https://github.com/microsoft/playwright/issues/23907

This fixes the following scenario. You press Command + C during the
test-execution, then a global teardown will execute, which takes a long
time and before this on macOS did sometimes end up in an unwanted SIGINT
received inside the globalTeardown handler. After this change this won't
happen anymore.
2023-07-18 18:46:18 +02:00
Yury Semikhatsky d0280ec8c7
chore(blob): drop shard number from report name (#24270)
We store shard number in the report metadata event and then sort shard
files by shard number. This guarantees that within each project sharded
events will always go in stable order.
2023-07-18 09:29:25 -07:00
Playwright Service b24ec33aa9
feat(chromium-tip-of-tree): roll to r1133 (#24280)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-18 15:11:01 +02:00
Playwright Service 57da4c200a
feat(chromium): roll to r1072 (#24279)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-18 15:10:30 +02:00
Pavel Feldman 5ff1fadd7b
chore: apply only filtration to deps (#24268) 2023-07-17 16:48:52 -07:00
Yury Semikhatsky f6540f89ea
chore(markdown): do not print details for flaky tests (#24264) 2023-07-17 16:09:59 -07:00
Yury Semikhatsky 15b9e5afdb
fix: print fatal and no snippet errors in markdown report (#24263) 2023-07-17 13:50:00 -07:00
Pavel Feldman 49c1f9eb02
feat(ui): run deps in UI mode if dep projects are checked (#24245) 2023-07-15 15:11:31 -07:00
Yury Semikhatsky 3616023cf6
chore: markdown report details (#24237) 2023-07-14 12:32:25 -07:00
Dmitry Gozman 97d55e275d
fix(locator): locator(locator) method uses internal:chain instead of >> (#24235)
Usually, we can just chain two locators with `>>` to implement
`Locator.locator(locator)`. However, this does not play nicely with more
advanced inner locators like `or` and `and`:

```ts
const child = page.locator('input').or(page.locator('button'));
page.locator('parent').locator(child);
```

One would expect the above to locate "input or button" inside a
"parent". However, currently it locates "input inside a parent" or
"button", because it's translated to `parent >> input >>
internal:or="button"`.

To fix this, we have to wrap inner locator into `internal:chain` and
query it separately from the parent.

Fixes #23724.
2023-07-14 12:21:45 -07:00
Dmitry Gozman 98f3ca05b9
fix(tracing): only access tracing state on the API calls, not inside trace operations (#24212)
References #23387.
2023-07-14 06:19:54 -07:00
Pavel Feldman 5d799606c3
chore: resolve top-level vs dependency after cli filtering (#24216) 2023-07-13 17:54:08 -07:00
Pavel Feldman 33bab3652d
fix(ui): bump min sidebar size (#24193) 2023-07-13 15:14:49 -07:00
Max Schmitt 57cca1d96e
Revert "fix: do not collide with other tests when test names have special chars (#23414)" (#24213)
This reverts commit 4b1b4dc23b.

https://github.com/microsoft/playwright/issues/24184

Reopens https://github.com/microsoft/playwright/issues/23386
2023-07-13 20:03:02 +02:00
Max Schmitt b483bf9fcc
feat: add support for Debian 12 for Firefox/WebKit (#24206)
https://github.com/microsoft/playwright/issues/23532

---------

Signed-off-by: Max Schmitt <max@schmitt.mx>
2023-07-13 12:56:44 +02:00
Andrey Lushnikov 615f5afb2b
feat(firefox): roll Firefox to 1420 (#24205)
Fixes https://github.com/microsoft/playwright/issues/22753
2023-07-13 03:54:47 -07:00
Playwright Service 7787988043
feat(webkit): roll to r1872 (#24201)
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-07-13 11:07:33 +02:00
Playwright Service 04be72213b
feat(chromium-tip-of-tree): roll to r1132 (#24204)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-13 10:58:13 +02:00
Dmitry Gozman 53feeaf270
fix(tracing): avoid trace file name collisions (#24191)
We have been optionally adding `-<number>` in multiple places, and these
might collide in various circumstances, for example: two contexts at the
same time, one of them has the second trace chunk.

References #23387.
2023-07-12 17:20:25 -07:00
Pavel Feldman 53bf1995db
chore: do not leak internal page handles after closing page (#24169)
Partial fix for https://github.com/microsoft/playwright/issues/6319

After this fix, the following scenario won't leak and the context state
(cookies, storage, etc) can be reused by the new page sessions:

```js
  for (let i = 0; i < 1000; ++i) {
    const page = await context.newPage();
    await page.goto('...');
    await page.close('...');
  }
```
2023-07-12 14:51:13 -07:00
Max Schmitt a0b0752662
fix: encode launch options correctly when reusing browser (#24174)
Fixes https://github.com/microsoft/playwright/issues/24157
2023-07-12 16:40:55 +02:00
Playwright Service 6e02fda2a0
feat(firefox-beta): roll to r1419 (#24165)
Fixes https://github.com/microsoft/playwright/issues/24081

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-12 03:28:20 -07:00
Dmitry Gozman 76d85c55cf
chore: remove unused code (#24167) 2023-07-11 15:08:05 -07:00
Pavel Feldman 067faa50d7
chore: migrate Promise.race to scopes to prevent leaks (#24160) 2023-07-11 10:38:08 -07:00
Dmitry Gozman aeba083da0
fix(snapshots): match resources by method (#24145)
Fixes #24144.

Previously, we only matched by url, which confuses GET and HEAD requests
where the latter is usually zero-sized.

Also make sure that resources are sorted by their monotonicTime, since
that's not always the case in the trace file, where they are sorted by
the "response body retrieved" time.
2023-07-10 20:04:48 -07:00
Pavel Feldman 63915dc07a
feat(trace): render Node console messages in trace (#24139) 2023-07-10 18:36:28 -07:00
dependabot[bot] 36588ba98e
chore(deps): bump semver and @babel/core in /packages/playwright-test/bundles/babel (#24082)
Fixes https://github.com/microsoft/playwright/issues/23903

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-07-10 23:40:28 +02:00
Max Schmitt 1c2313d641
chore: upgrade esbuild to 0.18.11 (#24123) 2023-07-10 22:35:05 +02:00
Pavel Feldman 67ad2c2bf4
feat(ui): render all console / network messages in trace (#24115) 2023-07-10 12:56:56 -07:00
Andrey Lushnikov 94d6b1210b
fix: do not create empty directories for successful snapshot tests (#24127)
Fixes https://github.com/microsoft/playwright/issues/15600
2023-07-10 09:45:24 -07:00
Andrey Lushnikov 19474bef78
chore: update WebKit browser version to 17.0 (#24128) 2023-07-10 08:08:00 -07:00
Playwright Service b4ffb848de
feat(webkit): roll to r1870 (#24119) 2023-07-10 08:09:08 +02:00
Pavel Feldman 50ba25e9a1
fix(trace): do not allow after w/o before (#24106)
Fixes https://github.com/microsoft/playwright/issues/24087,
https://github.com/microsoft/playwright/issues/23802
2023-07-07 17:16:26 -07:00
Andrey Lushnikov a9560253f8
chore: cut 1.36.0 (#24104) 2023-07-07 13:01:17 -07:00
Playwright Service 9bca9f1b4f
feat(chromium): roll to r1071 (#24098)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-07 16:51:03 +02:00
Playwright Service 90c92c5724
feat(firefox): roll to r1419 (#24091)
Fixes https://github.com/microsoft/playwright/issues/24080

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-06 22:43:03 -07:00
Andrey Lushnikov b9e68e22e0
feat: support Chromium installation on Debian 12 (#24090)
This adds Chromium support for both x86 and arm64 versions of Debian 12.

References https://github.com/microsoft/playwright/issues/24028
2023-07-06 22:41:36 -07:00
Andrey Lushnikov 9af2b518f2
fix: exclude tracesDir option from launchOptions fixture (#24086)
Fixes https://github.com/microsoft/playwright/issues/23645
2023-07-06 13:31:44 -07:00
Andrey Lushnikov 11dce8d127
feat(firefox): roll Firefox to 1417 (#24069)
Fixes https://github.com/microsoft/playwright/issues/23280
2023-07-06 12:18:02 -07:00
Pavel Feldman 0409bfca56
chore: ensure module deps in ct-core (#24056)
Fixes https://github.com/microsoft/playwright/issues/23823
2023-07-06 12:01:45 -07:00
Pavel Feldman 608e336dba
fix(error): create a step for raw runtime error (#24057)
Fix https://github.com/microsoft/playwright/issues/23850
2023-07-06 10:48:12 -07:00
Pavel Feldman 566b277ce8
fix(steps): only propagate soft errors up the hierarchy (#24054)
Fixes https://github.com/microsoft/playwright/issues/23979
2023-07-05 15:30:53 -07:00
Andrey Lushnikov ea3a29eacd
feat(firefox): roll Firefox to 1415 (#24046)
Fixes https://github.com/microsoft/playwright/issues/23618
2023-07-05 11:58:38 -07:00
Pavel Feldman df57fb594c
fix(trace): render items under expect.toPass (#24016)
Fixes: https://github.com/microsoft/playwright/issues/23942
2023-07-05 11:20:28 -07:00
Playwright Service 9f1f737acb
feat(chromium): roll to r1070 (#23991)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-03 21:27:07 +00:00
Playwright Service b3c4f45759
feat(webkit): roll to r1869 (#24011)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-07-03 21:26:46 +00:00
Pavel Feldman 6343ea2795
feat(trace): allow scrolling the filmstrip (#24015)
Fixes https://github.com/microsoft/playwright/issues/23963
2023-07-03 13:03:33 -07:00
Patrick Shaw 6e78dcb7dc
fix: Allow portable bash paths for systems including NixOS (#23889)
Although very common, bash is not guaranteed to be located at
`/bin/bash`. NixOS is an example of this.

More commonly, `/bin/bash` can be quite out of date. An example of this
is MacOS's version of `bash`. This realistically won't affect Playwright
but it's worth noting. You can technically update MacOS's system version
of bash but you need elevated permissions to do so.

By using `/usr/bin/env bash` instead of `/bin/bash` we can execute
Playwright's bash scripts in like NixOS and generally improve the
selection behaviour for bash in other systems too.

Some discussion of why it's worth favouring `/usr/bin/env bash` over
`/bin/bash`:
- Discusses `/bin/bash` missing in NixOS:
https://discourse.nixos.org/t/add-bin-bash-to-avoid-unnecessary-pain/5673
- Some general commentary on why `/usr/bin/env bash` is favoured:
https://askubuntu.com/a/1402721
- Points out how old bash is in MacOS:
https://itnext.io/upgrading-bash-on-macos-7138bd1066ba

Improves situation at #5501
2023-07-03 06:27:06 -07:00
Dmitry Gozman 7e310f79af
chore: migrate builtin reporters to ReporterV2 (#23985)
This allows builtin reporters to handle stdio between onConfigure and
onBegin.

Fixes #23539.
2023-06-30 16:21:31 -07:00
Dmitry Gozman 86c1abd934
chore: introduce ReporterV2 interface (#23983) 2023-06-30 13:36:50 -07:00
Dmitry Gozman 92c738b14a
test: unflake some tests (#23984) 2023-06-30 13:08:18 -07:00
Dmitry Gozman e28312ba63
chore: call onEnd(result) on InternalReporter (#23972)
Drive-by: fix watch mode not running global teardown.
2023-06-29 17:03:10 -07:00
Max Schmitt a07626b804
feat(webkit): roll to r1868 (#23969)
GitHub had an outage so the PR didn't get created automatically.

Closes https://github.com/microsoft/playwright/pull/23931.
2023-06-29 23:27:48 +02:00
Max Schmitt fef029e98e
docs: code snippet alignments (#23959) 2023-06-29 18:26:19 +02:00
Playwright Service c2127595b8
feat(chromium-tip-of-tree): roll to r1128 (#23956)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-29 15:17:16 +02:00
Dmitry Gozman 1d0b48f18b
fix(route): handle escapes in the glob pattern (#23932)
Fixes #23303.
2023-06-28 16:33:04 -07:00
Dmitry Gozman 1ab99fe1b8
feat(electron): support tracesDir option (#23947)
References #23620.
2023-06-28 16:32:16 -07:00
Dmitry Gozman b0b429fed0
feat: support bigint in evaluates (#23930)
Fixes #22719.
2023-06-28 08:55:45 -07:00
Playwright Service 2808f3700a
feat(chromium-tip-of-tree): roll to r1127 (#23923)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-27 15:25:01 +02:00
Max Schmitt 9980f054bc
docs: align Node.js code snippets with ESLint (#23916) 2023-06-27 11:53:53 +02:00
Max Schmitt 4b1b4dc23b
fix: do not collide with other tests when test names have special chars (#23414)
Fixes https://github.com/microsoft/playwright/issues/23386
2023-06-27 10:34:31 +02:00
Max Schmitt dcdf38f119
chore: keep UI Mode running when used with browser mode (#23876)
This will keep UI Mode running in browser mode. When launched in normal
persistent context mode, we know when the persistent context closes, so
we can run the project teardown code.

Fixes https://github.com/microsoft/playwright/issues/23801
2023-06-26 22:21:44 +02:00
Max Schmitt e1c220a37b
fix(trace-viewer): file path contains encoded characters (#23893)
This fixes:

```
npx playwright show-trace %20I%20Love%20Node.zip
```

Extracted from https://github.com/microsoft/playwright/pull/23414.
2023-06-26 18:13:40 +02:00
zhengjitf 6f67f6b52b
fix(chromium): can get correct orientation angle on non-mobile devices (#23796)
Fix #23772
2023-06-23 11:34:09 -07:00
Playwright Service f85480a12e
feat(firefox-beta): roll to r1415 (#23866)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2023-06-23 07:03:20 -07:00
Dmitry Gozman 5821c547aa
fix(selector generator): use the same label definition as getByLabel (#23846)
This extracts `getElementLabels` helper function to be used both for
generating and querying.
2023-06-22 08:34:08 -07:00
Moritz Horstmann bdac3e28a6
fix: best-effort support for TUXEDO OS (#23813)
TUXEDO OS is an Ubuntu based distribution built by the Linux computer
vendor TUXEDO.
2023-06-22 07:14:18 -07:00
Playwright Service ddc0278d81
feat(chromium-tip-of-tree): roll to r1126 (#23858)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-22 15:55:16 +02:00
Playwright Service f7ecb7094d
feat(chromium): roll to r1069 (#23856)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-22 15:54:56 +02:00
Playwright Service f7ae17db09
feat(webkit): roll to r1865 (#23847)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-22 12:07:49 +02:00
Dmitry Gozman b154ff1190
fix(html reporter): do not print epilogue in list mode (#23822)
References #23817.
2023-06-21 17:53:52 -07:00
Max Schmitt 605dfde2be
chore: rename popout.html to snapshot.html in trace viewer (#23842)
Turns out its caused by a uBlockOrigin EasyList entry which thinks we
are an ad since we call ourselves "popout.html". See this entry:


e7883cfe74/easylist/easylist_general_block_popup.txt (L42)

Fixes https://github.com/microsoft/playwright/issues/23799
2023-06-21 21:10:50 +02:00
Ben Hofferber 752176fd23
feat(goto): better navigation error message (#23609)
While this log message is only a sanity check, it is still beneficial to
have a message that can better inform what is happening when this
occurs.
2023-06-21 11:10:35 -07:00
awatson-scottlogic 3777fc8b0f
docs(class-testoptions): fix launchOptions snippet (#23831) 2023-06-21 14:03:26 +02:00
Yury Semikhatsky 6a6ff9cf6a
feat: markdown report (#23819)
Simple markdown report generator. Can be used when posting updates to
GitHub PRs:

<img width="632" alt="image"
src="https://github.com/microsoft/playwright/assets/9798949/ea7e4bfa-477a-4cad-9cc3-00b1f8a314b1">
2023-06-20 12:11:32 -07:00
Andrey Lushnikov 1736479e41
fix: fix locator picker in Trace (#23820)
- make sure links are not clickable with enabled locator picker
- make sure locator picker state is preserved when switching actions
2023-06-20 11:39:21 -07:00
Playwright Service 270135faaf
feat(chromium-tip-of-tree): roll to r1125 (#23806)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-20 16:15:22 +02:00
Playwright Service 7a060d13f0
feat(webkit): roll to r1864 (#23794)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-20 09:29:15 +02:00
Dmitry Gozman fe5c9dad4d
fix(locators): allow identical frameLocators inside and/or/has (#23740)
So, the following will work:

```
page.frameLocator('iframe').locator('span').or(page.frameLoactor('iframe').locator('div'))
```

The following will not work, because frame locators are not exactly the
same:

```
page.frameLocator('#iframe1').locator('span').or(page.frameLoactor('#iframe2').locator('div'))
```

Also improve the error message to be more readable and include the
locator.

Fixes #23697.
2023-06-19 15:22:26 -07:00
Dmitry Gozman fbb5d48283
feat(expect): roll to v29.5.0 (#23629)
There is a breaking in change in the `MatcherContext` that is passed to
matcher functions, so we now have `!!this.isNot` in a few places. The
same could happen to custom matcher in the wild.

```ts
// Old
{
  isNot: boolean;
  promise: string;
}
```

```ts
// New
{
  isNot?: boolean;
  promise?: string;
}
```

Fixes #23612.
2023-06-19 15:18:59 -07:00
Dmitry Gozman 2c8dd67b0e
fix(test runner): improve error message for non-stable test titles (#23792)
Fixes #23779.
2023-06-19 14:13:11 -07:00
Sander 9d3edb0aa3
fix(ct): vue3 fallthrough events & callbacks (#23649)
closes:
https://github.com/microsoft/playwright/issues/23526#issuecomment-1583074280

closes: https://github.com/microsoft/playwright/issues/23435
2023-06-19 11:20:37 -07:00
vemv 380209af37
chore: log when websockets are proactively closed (#23689)
Closes https://github.com/microsoft/playwright/issues/23566

n.b., while that issue describes a fairly specific "use case", this
logging is simple and generic. It seems very plausible that it can help
diagnose all sorts of issues.

Cheers - V
2023-06-19 11:12:02 -07:00
Max Schmitt 0f9f863183
fix(codegen): generate no Enter keyboard events for textareas (#23775)
Fixes https://github.com/microsoft/playwright/issues/23774
2023-06-19 17:07:37 +02:00
Andrey Lushnikov e171194c86
feat(firefox): roll Firefox to 1414 (#23768)
- roll Firefox stable to 1414
- roll Firefox beta to 1414

Fixes #23138
2023-06-17 12:10:20 -07:00
Dmitry Gozman 132a5a4bf5
fix(trace viewer): prefer latest resource with the same url (#23763)
When rendering snapshot, disregard earlier resources with the same url,
because it's most likely that the latest one was used for rendering.

An example would be reloading the page before the stylesheet has
finished loading. In this case, the stylesheet will be requested twice,
and the second copy that was not aborted should be used for the
snapshot.

Fixes #23709.
2023-06-17 06:58:16 -07:00
Yury Semikhatsky f6d86c20f3
chore: run more reporter tests through blob report, some fixes (#23765) 2023-06-16 21:30:55 -07:00
Dmitry Gozman 09b1e3ffa9
fix(chromium): response.body() for worker requests should work (#23764)
Previously, worker requests used page's session to call
`Network.getResponseBody`.

Fixes #23750.
2023-06-16 20:44:32 -07:00
Max Schmitt b44723708c
chore: move extracting of browser out-of-process (#23739)
https://github.com/microsoft/playwright/issues/23729
2023-06-16 20:40:15 +02:00
Dmitry Gozman de422b5afb
chore: speedup multiple roleUtils calls (#23745)
When generating a selector, we tend to match by role and call various
roleUtils methods multiple times.

Apply the usual pattern for "nested operations counter" and aggressively
cache the results.
2023-06-16 11:39:39 -07:00
Yury Semikhatsky 11770156eb
feat(html): show number of filtered tests, update total time (#23743) 2023-06-16 09:22:57 -07:00
Machiel-B 0358f6c434
fix: make trace viewer not use 301 to redirect (#23757) 2023-06-16 18:16:01 +02:00
Playwright Service d92a648284
feat(chromium): roll to r1068 (#23756) 2023-06-16 17:57:45 +02:00
Max Schmitt 4d02aa1e52
chore: render locator in trace viewer timeline label (#23754) 2023-06-16 17:56:11 +02:00
Dmitriy Dudkevich fc8f0101c8
fix(selenium): send additional headers to delete session method (#23719)
In the process of completing the task -
https://github.com/microsoft/playwright/pull/23348, I didn't notice the
need to pass headers to the session deletion method. So I fixed it here.
And support headers for selenium@3.
2023-06-16 11:44:04 +02:00
Dmitry Gozman d11bc88784
chore(codegen): do not use accessible name for non-text selectors (#23717)
Accessible name usually includes text, so we don't want it for non-text
selectors, e.g. for `expect()` selectors.
2023-06-15 12:30:18 -07:00
Max Schmitt 8ed956e496
chore: move pw-core utilsBundleImpl into own directory (#23706)
https://github.com/microsoft/playwright/issues/23666
2023-06-15 20:16:47 +02:00
Playwright Service bad09acb87
feat(webkit): roll to r1863 (#23734)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-15 20:10:54 +02:00
Playwright Service 8602981d87
feat(chromium-tip-of-tree): roll to r1124 (#23733)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-15 17:08:53 +02:00
Yury Semikhatsky 77d322028c
feat(blob): zip .jsonl report files (#23720)
For linux tests without tracing blob-report-1.zip takes 19M, while
unpacked size is 228 MB. That size is counted for GitHub artifact
billing:

<img width="434" alt="image"
src="https://github.com/microsoft/playwright/assets/9798949/5bc32511-6686-4581-a348-acb6a54cd99b">

We zip individual .jsonl reports so that they still have unique names
and can be easily uploaded into the same artifacts directory without
name collisions.
2023-06-14 17:10:39 -07:00
Max Schmitt 60de8308a8
chore: bundle open's xdg-open script (#23710) 2023-06-14 20:49:26 +02:00
Andrey Lushnikov dc81cfaf81
Revert "fix: scroll timeline with multiple pages in context (#23493)" (#23711)
This reverts commit a4d361379f.

Reason for revert: this breaks screencast preview (the image
that is shown when you hover over the screencast).
2023-06-14 11:41:42 -07:00
Andrey Lushnikov 3c0fab489b
chore: miscellaneous trace viewer fixes (#23695)
- properly annotate continued requests
- nest `attach` steps inside the related `expect` step
- fix primary-id-to-non-primary-id mapping
- make sure images in trace are not draggable

Fixes #23693

---------

Signed-off-by: Andrey Lushnikov <aslushnikov@gmail.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-06-14 09:37:19 -07:00
Max Schmitt 9e636687ea
chore: add more logging for browser install process (#23675) 2023-06-14 15:33:06 +02:00
Dmitry Gozman 5b2e8a6a7a
chore: optional root for generateSelector (#23692) 2023-06-13 21:25:39 -07:00
Dmitry Gozman c80a23842b
fix(css): relative-to-scope selectors work (#23665)
Chained selectors where the second part starts with a scope did not work
before:

```ts
page.locator('div').locator(':scope + span')
page.locator('div >> +span')
```
2023-06-13 10:27:25 -07:00
Playwright Service 76532160d3
feat(chromium-tip-of-tree): roll to r1123 (#23682) 2023-06-13 19:17:57 +02:00
Playwright Service 769b449d86
feat(webkit): roll to r1862 (#23678) 2023-06-13 14:55:22 +02:00
Andrey Lushnikov 2bc8cf2fc7
fix: drop expect.configure({ poll }) from types (#23661)
`poll` option is not actually supported as of June 12, 2023.

Fixes https://github.com/microsoft/playwright/issues/23622
2023-06-12 11:07:39 -07:00
Dmitry Gozman dd417d83d9
fix(locators): escape >> inside a regular expression (#23631)
To avoid selector being parsed as a chain.

Fixes #23540.
2023-06-12 10:34:37 -07:00
Yury Semikhatsky abdfe264fa
chore: run html reporter tests with merged report (#23626) 2023-06-09 15:41:15 -07:00
Yury Semikhatsky 400c7cd529
fix: serialize attachment to base64 in tele reporter (#23590) 2023-06-09 11:52:18 -07:00
Tyler Gould a4d361379f
fix: scroll timeline with multiple pages in context (#23493)
Fixes #23490 

Before:
<img width="500" alt="image"
src="https://github.com/microsoft/playwright/assets/4130722/faa1f7c3-9aeb-4e0c-aca3-0d9c24609628">

After:
<img width="500" alt="image"
src="https://github.com/microsoft/playwright/assets/4130722/6dfbc204-8ff2-49cb-a374-734750c6a385">

---------

Signed-off-by: Tyler Gould <4130722+scitech@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2023-06-09 09:07:14 -07:00
Dmitry Gozman 734705e9b3
chore: elementHandle getters implemented through Frame (#23557)
This is a step towards not using handles for locator operations.
2023-06-09 07:18:13 -07:00
Yury Michurin 7513993c7a
docs: fix a comment typo (#23592)
Hi,
Just a small meaningless comment typo 🙃 

Have a great day!

Signed-off-by: Yury Michurin <yury.michurin@gmail.com>
2023-06-08 21:35:04 -07:00
Dmitry Gozman 11659ceb73
fix(role): handle display:contents elements (#23607)
Fixes #23521.
2023-06-08 16:00:48 -07:00
Playwright Service befd188763
feat(chromium-tip-of-tree): roll to r1122 (#23594)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-08 20:35:04 +02:00
Dmitriy Dudkevich 187cfdc328
feat: ability to pass additional headers to selenium (#23348) 2023-06-08 10:41:36 -07:00
Dmitry Gozman 5cfd6d9fe9
fix(cr network): emit sw-handled requests when routing is enabled (#23589)
Previously, such requests were skipped because they never receive
`Fetch.requestPaused` as there was no real network.

Also cleanup some redundant tests and move them from chromium-only file.

Fixes #23424.
2023-06-08 10:33:28 -07:00
Playwright Service 54a35dd108
feat(chromium): roll to r1067 (#23593)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-08 19:03:48 +02:00
Playwright Service a40fa1d86c
feat(webkit): roll to r1861 (#23530)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-08 09:49:07 +02:00
Playwright Service fa3dd76cf8
feat(chromium-tip-of-tree): roll to r1121 (#23584) 2023-06-08 08:19:12 +02:00
Yury Semikhatsky ded4a294f4
fix(merge): populate TestResult.stdout/stderr when merging (#23587) 2023-06-07 23:00:57 -07:00
Pavel Feldman 83cf6cc1e8
chore: do not show select item when Show trace (#23583) 2023-06-07 16:11:57 -07:00
Andrey Lushnikov c3bc8e0620
chore: cut 1.35.0 (#23579) 2023-06-07 12:41:56 -07:00
Dmitry Gozman 4f8680f7a3
fix(pause): revert timeouts after pause (#23578)
Fixes #23523.
2023-06-07 12:30:10 -07:00
Pavel Feldman 0b30f2017c
chore: make trace server work over http (#23561) 2023-06-06 18:36:05 -07:00
Andrey Lushnikov 2e327c9d0c
fix: miscellaneous improvements for tracing UI (#23558)
- feat(tracing): mark API requests with "API" label
- feat(tracing): do not attribute any resources to `route.` API calls;
  otherwise, network traffic might get inside the `route.` actions.
- fix(tracing): map actionIds from primary contexts to actionIds from
  non-primary contexts
- fix(tracing): show leading `/` in URL path in network panel

This is a result of a pair-programming session with @pavelfeldman
2023-06-06 17:38:44 -07:00
Andrey Lushnikov 0f4090472c
feat: add maskColor option to the toHaveScreenshot method (#23555) 2023-06-06 17:15:55 -07:00
Pavel Feldman 7579572688
chore: unflake the network status test (#23551) 2023-06-06 16:55:53 -07:00
Pavel Feldman 1cd8f7543b
docs: fix the transpiler docs (#23550) 2023-06-06 16:16:06 -07:00
Pavel Feldman 037da65d83
chore: fix ui mode tests on windows (#23553) 2023-06-06 14:24:42 -07:00
Max Schmitt 85be65b07b
chore: update npx playwright uninstall docs (#23552) 2023-06-06 22:09:15 +02:00
Max Schmitt 8bc26a2b44
chore: wait for downloads getting removed on context.close() (#23500)
Before there was a race, that we ran into this code:


9cd49d5dd5/packages/playwright-core/src/server/browserContext.ts (L236-L237)

and then into this code:


9cd49d5dd5/packages/playwright-core/src/server/browserContext.ts (L429-L431)

which had the side effect, that the first call did not wait. Then
immediately clears the downloads Set and then the second call is a NOOP.
This ends up that the the removal of the downloads can happen after the
context is closed, hence the test is flaky.

Relates to https://github.com/microsoft/playwright/pull/6151 where it
got introduced. So something for @yury-s.

Fixes https://github.com/microsoft/playwright/issues/22525
2023-06-06 20:38:36 +02:00
Max Schmitt ce2f902c1f
chore: fix UI Mode on Codespaces (#23549) 2023-06-06 20:09:39 +02:00
Pavel Feldman 6351630af2
chore: do not show the open error (#23547) 2023-06-06 11:09:08 -07:00
Pavel Feldman d4349e5d6f
chore: print listening on message in terminal for web trace modes (#23546) 2023-06-06 09:36:49 -07:00
Pavel Feldman 699ac3a0f2
chore: allow opening ui mode over http (#23536) 2023-06-06 08:31:52 -07:00
dependabot[bot] 0feef340c9
chore(deps): bump vite from 4.3.3 to 4.3.9 (#23537) 2023-06-06 11:12:07 +02:00
Yury Semikhatsky 874f4525b4
fix(merger): total time is sum of shard total times (#23534) 2023-06-05 19:10:41 -07:00
Yury Semikhatsky ceaa29cec1
chore: clear message for no reports (#23492) 2023-06-05 17:20:54 -07:00
Andrey Lushnikov 3a00fc4edf
fix: call focus() twice to workaround firefox not focusing element (#23535)
When focus is moved from one tab to another, it might require calling
`focus()` twice to actually focus an element in Firefox.

Fixes https://github.com/microsoft/playwright/issues/23117
2023-06-05 16:46:52 -07:00
Pavel Feldman eacfff8127
chore: make trace viewer work over http (#23531) 2023-06-05 16:30:30 -07:00
Dmitry Gozman 6b687b6d69
fix(toHaveScreenshot): attach newly created missing expectations (#23528)
Fixes #23090.
2023-06-05 14:57:06 -07:00
Max Schmitt 0e12831a02
chore: hide 'Open in VSCode' for folders in UI Mode (#23499) 2023-06-05 22:09:45 +02:00
KotlinIsland afa531ef60
feat: Allow multiple trace uploads in the trace viewer (#23517) 2023-06-05 12:34:54 -07:00
Pavel Feldman def24c0a14
chore: propagate client-side instrumentation across connect (#23524)
Fixes https://github.com/microsoft/playwright/issues/23504
2023-06-05 12:28:20 -07:00
Playwright Service d95b6f40a4
feat(webkit): roll to r1860 (#23494)
Fixes https://github.com/microsoft/playwright/issues/20489
2023-06-05 09:51:39 -07:00
Dmitry Gozman b518d1f6da
chore: update error message when using wrong cli (#23512)
Now recommends uninstalling other packages. Fixes #23314.

Example messages:

```
Please install @playwright/test package before running "npx playwright show-report"
  npm uninstall playwright playwright-firefox
  npm install -D @playwright/test
```

```
Please install @playwright/test package before running "yarn playwright show-report"
  yarn remove playwright playwright-chromium playwright-firefox playwright-webkit
  yarn add -D @playwright/test
```

```
Please install @playwright/test package before running "pnpm exec playwright show-report"
  pnpm remove playwright
  pnpm add -D @playwright/test
```
2023-06-05 09:51:08 -07:00
Max Schmitt 80fe9748eb
chore: render plain class links in types (#23508) 2023-06-05 18:50:44 +02:00
Max Schmitt 75971af55b
feat(cli): introduce npx playwright uninstall (#23128)
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2023-06-05 18:50:21 +02:00
Kristo Jorgenson d5d155df1f
fix(typescript): allow directory imports (#23254)
This updates previous work in #22887 to align more fully with
`--moduleResolution=bundler`, allowing index files to be imported with
the /index extension

---------

Signed-off-by: Kristo Jorgenson <kristojorg@users.noreply.github.com>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2023-06-05 08:58:25 -07:00
Max Schmitt 24ac25212b
chore: enable no-floating-promises on playwright-test (#23484) 2023-06-05 17:45:56 +02:00
Max Schmitt dcc998d58c
chore: fix broken ct-core require (#23507)
This broke after https://github.com/microsoft/playwright/pull/23449.
2023-06-04 18:07:42 +02:00
Gary McDonald 718ee69cb8
docs: fix various spelling mistakes in the docs project directory. (#23510)
Signed-off-by: Gary McDonald <mcdonagj@dukes.jmu.edu>
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-06-04 18:04:42 +02:00
Max Schmitt 00f662531e
Revert "fix(tracing): workaround chromium scrollTop slowness" (#23486)
This commit reverts f6712ec43a

I manually ran
https://github.com/microsoft/playwright/issues/14037#issuecomment-1122256514
and made sure that the performance did not regress. ~same.

Fixes https://github.com/microsoft/playwright/issues/23455
2023-06-02 23:25:55 +02:00
Yury Semikhatsky 401fc4cb9e
fix(tracing): record available response headers without waiting for extra info (#23483)
Fixes #23115
2023-06-02 14:15:20 -07:00
Sander e47b23e5d4
chore(ct): internal types (#23332) 2023-06-02 14:11:03 -07:00
Ivaylo Pavlov e3f91bbabf
Fix header to pass Selenium Grid Capabilities (#23346)
Fixes: #23345
2023-06-02 13:28:23 -07:00
Dmitriy Dudkevich 7ab754f5d5
fix: render actions in ui mode with browsers from selenium (#23382) 2023-06-02 13:24:21 -07:00
Pavel Feldman 5a14619bab
chore: render route markers in the trace network panel (#23476)
Fixes https://github.com/microsoft/playwright/issues/23040


![net](https://github.com/microsoft/playwright/assets/883973/5191163e-63f9-4999-9197-d10dcd09a665)
2023-06-02 13:00:27 -07:00
Max Schmitt af893a1019
chore: inherit apiRequestContext timeout from actionTimeout (#23481)
Fixes https://github.com/microsoft/playwright/issues/23344
2023-06-02 21:36:09 +02:00
Max Schmitt b21c81d344
devops: add bot for Chromium --headless=new (#23440)
https://github.com/microsoft/playwright/issues/23389
2023-06-02 20:40:12 +02:00
Dmitry Gozman 835f14d7c9
fix(pause): ignore page.pause on the server (#23417)
Fixes #23051.
2023-06-02 08:32:30 -07:00
Playwright Service 82ecd692d1
feat(webkit): roll to r1859 (#23467)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-02 15:05:03 +02:00
Kristo Jorgenson a4a363f4f4
chore: upgrade @types/node to 16.x (#23429)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-06-02 10:04:41 +02:00
Pavel Feldman d1666d2dde
chore: include test-end-screenshot in a trace (#23457)
Fixes https://github.com/microsoft/playwright/issues/23222
2023-06-01 20:29:32 -07:00
Pavel Feldman 96b2247e28
chore: allow marking scripts as external for transform (#23449)
Fixes https://github.com/microsoft/playwright/issues/22874
2023-06-01 20:28:49 -07:00
Dmitry Gozman 14a1eaa474
chore: add Playwright to attribution (#23447)
This makes it easier to plumb all kinds of options around.
2023-06-01 17:54:43 -07:00
Pavel Feldman b99c214b29
chore(trace): render drawer as a sidebar in the tv mode (#23451)
Fixes: https://github.com/microsoft/playwright/issues/23227
2023-06-01 15:49:48 -07:00
Pavel Feldman 84942aa992
chore: render successful toPass as such (#23411)
Fixes https://github.com/microsoft/playwright/issues/23302
2023-06-01 13:22:08 -07:00
Playwright Service 3e73906027
feat(chromium): roll to r1066 (#23433)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-01 16:03:49 +02:00
Playwright Service fff4e048a8
feat(chromium-tip-of-tree): roll to r1120 (#23431)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-06-01 16:03:33 +02:00
Max Schmitt 5701ff1e9b
chore: do not always return 200 on component testing network requests (#23408)
Fixes https://github.com/microsoft/playwright/issues/23364

See here about their AppTypes:
https://vitejs.dev/config/shared-options.html#apptype
2023-06-01 01:33:48 +02:00
Playwright Service 2c700b71ff
feat(webkit): roll to r1858 (#23403) 2023-05-31 23:28:19 +02:00
Dmitry Gozman 6bb5c0a549
fix: make evaluate not wait for scheduled navigations (#23402)
Fixes #23141.
2023-05-31 14:08:44 -07:00
Max Schmitt 4eeb4655e9
chore: add comment about async imports in babel (#23374)
https://github.com/microsoft/playwright/issues/23255
2023-05-31 18:32:09 +02:00
Pavel Feldman 658b1dfea3
chore: trace viewer server for vscode (#23383) 2023-05-30 18:31:15 -07:00
Andrey Lushnikov 5cd271a2a7
docs: add option clarifications (#23384)
Fixes https://github.com/microsoft/playwright/issues/23355
2023-05-30 17:19:48 -07:00
João Neves 7e6e5f0706
feat: Support React forwards refs and memo (#23262)
This PR fixes the react selector behavior to support components that are
wrapped by the memo or forwardRef React builtin functions.

Previously these components couldn't be selected. This PR fixes that
behavior, enabling selecting those components.

Current behavior:
```
const Foo = memo(() => <div id="foo_component" />);
Foo.displayName = "Foo";
...
playwright.$("_react=Foo") -> undefined
```

Fixed behavior:
```
const Foo = memo(() => <div id="foo_component" />);
Foo.displayName = "Foo";
...
playwright.$("_react=Foo") -> <div id ="foo_component" />
```
2023-05-30 17:14:47 -07:00
Pavel Feldman 7ad03027fb
chore: remove output dir before each test (#23380) 2023-05-30 16:03:50 -07:00
Dmitry Gozman 6db6498565
chore: replace sigint handler per browser with a single one (#23317)
Otherwise, multiple sigint handlers (one from each browser) would try to
`process.exit(130)` each.
2023-05-30 13:54:04 -07:00
Max Schmitt 13f70b6d89
chore: have type modifiers directly on file import (#23337) 2023-05-30 21:11:35 +02:00
Max Schmitt 2710fd8d6f
fix: should be able to upload multiple large files (#23360)
Fixes https://github.com/microsoft/playwright/issues/23258
2023-05-30 18:41:09 +02:00
Max Schmitt d6e24fafe8
docs: specify assertion timeout type (#23333)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2589
2023-05-30 18:13:14 +02:00
Max Schmitt f819b1c72d
fix: trace viewer with global applied background-color (#23362)
Fixes https://github.com/microsoft/playwright/issues/23275
2023-05-30 17:58:29 +02:00
Max Schmitt 9e75b95153
fix: display testId as regex in trace-viewer (#23361)
Fixes https://github.com/microsoft/playwright/issues/23298
2023-05-30 17:45:48 +02:00
Playwright Service fda57978e8
feat(webkit): roll to r1857 (#23353)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-29 22:56:38 +02:00
Pavel Feldman ec972fb7c1
chore: make trace viewer self-desctruct on input disconnect (#23291) 2023-05-26 14:54:54 -07:00
Playwright Service 4f3d4c41af
feat(webkit): roll to r1856 (#23310)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-26 09:47:03 -07:00
Dmitry Gozman fa86f2aee0
chore: createHttpServer that destroys sockets upon close (#23294)
This avoids the server hanging on close.
2023-05-26 07:03:41 -07:00
Yury Semikhatsky 0ef8832f56
fix: patch project names and ids when merging reports (#23295)
Project name is used in testId calculation, so patching it in the
reporter is too late. Instead we now save project suffix to the blob
report file and patch all project and test ids as well as project names
in the report merger
2023-05-25 23:02:23 -07:00
Pavel Feldman 1e95b6d906
chore: allow sending trace URLs over stdin (#23288) 2023-05-25 15:38:47 -07:00
Pavel Feldman f879ac7e44
chore: report output dir as a part of the list files (#23283) 2023-05-25 15:38:35 -07:00
Tomáš Hübelbauer e550df060e
Enhance the forbidOnly mode message to guide the user towards the configuration option (#23146)
Hi, I am putting this PR out as a feeler to see if there's interested in
improving this error message, but the copy is by no means final and I am
open to improvement suggestions.

My intention here is to:
- Explain what a "focused item" is - that we're talking about a test and
it being focused is most likely down it using `only`
  
Are there other types of "items"? Are there other ways to make them
focused other than `only`?

- Explain why we're even in focused mode and how to control it

The default scaffolded Playwright config file includes a forbidMode
expression driven by whether `CI=1` is set.
I ran into this when trying to reproduce a CI issue locally so I had it
set and unknowingly entered focus only mode.
I wasn't aware this mode was a thing because I was using the default
configuration from `npm init` and did not familiarize myself with all
the options in it.

Is there a way to tell if we're in a TypeScript or JavaScript project in
this function? I would use that to display the configuration file name
with the right extension.

---------

Signed-off-by: Tomáš Hübelbauer <tomas@hubelbauer.net>
2023-05-25 13:32:49 -07:00
Playwright Service c5c0b9a78b
feat(chromium): roll to r1065 (#23281)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-25 13:04:36 -07:00