Commit graph

9226 commits

Author SHA1 Message Date
Max Schmitt b0bb99f413
test: unflake React.js and Vue tests (#15264)
React takes time to render on overbooked machines. Let's use web-first assertions to test that they work as expected.

Error: expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 0
    at /home/runner/work/playwright/playwright/tests/page/selectors-react.spec.ts:34:71

<img width="887" alt="image" src="https://user-images.githubusercontent.com/17984549/176618419-7653e5d8-4853-4618-af3b-2698827879d2.png">
2022-06-30 07:00:05 -07:00
Max Schmitt f2ccd45cfd
test: unskip viewport size test (#15268) 2022-06-30 15:58:11 +02:00
github-actions[bot] 5062d69d83
browser(chromium-tip-of-tree): roll to 2022-Jun-30 (#15270)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-30 12:32:41 +02:00
Ross Wollman 9cafab382b
docs: clarify use of browser.close (#15255) 2022-06-29 18:41:21 -07:00
Dmitry Gozman ff2647cfa3
fix(network): remove races from sizes calculation (#15208)
- Do not resolve raw headers upon `loadingFinished`, since they may still come later in
  `responseReceivedExtraInfo`.
- Introduce separate promises for `encodedBodySize`, `transferSize` and `responseHeadersSize`.
- Make sure we resolve each of them either with data available
  from the browser, or a fallback calculation.
- Set raw response headers for redirects on WebKit.
- Do not stall on cached responses in Chromium, they have erroneously set `hasExtraInfo` flag.
- Use `transferSize` that is available in Firefox protocol.
2022-06-29 18:11:22 -07:00
Dmitry Gozman da9d68265b
test: disable network sizes tests on old electron (#15252) 2022-06-29 17:50:42 -07:00
Yury Semikhatsky a5ddf560e9
browser(webkit): restore old process cache logic (#15249)
Revert https://github.com/microsoft/playwright/pull/15021. Apparently there is another leak of WPEWebProcess even with the upstream fix as [the tests failed ](https://github.com/microsoft/playwright/runs/7120162355?check_suite_focus=true)on the bots on attempt to roll to wk 1669.

Pretty-diff: 2b480bc4d0
2022-06-29 16:33:51 -07:00
Max Schmitt f6bdf3a3cc
chore: generate types always with LF (#15245) 2022-06-29 23:19:49 +02:00
Andrey Lushnikov 074ae99dc5
browser(firefox): fix browser.newPage crasher (#15247)
`mWindow` might not be initialized.
2022-06-29 13:47:45 -07:00
Ross Wollman 9fb80c905b
test: match more of output to ensure source map support is good (#15206)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-29 22:26:48 +02:00
Dan Bjorge cf6ffdf043
docs(accessibility-testing): fix syntax issues in example 1 (#15204) 2022-06-29 12:47:31 -07:00
Pavel Feldman 28f382bea6
chore: roll source-map-support to 0.5.21 (#15237)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-29 19:47:45 +02:00
Andrey Lushnikov 29c1ccd690
devops: fix checkout re-use for multiple different base branches (#15231) 2022-06-29 08:30:39 -07:00
Max Schmitt b3c31f5b13
fix: do not throw on removeListener without listener (#15224)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-29 13:53:13 +02:00
Max Schmitt 461bd92f12
docs(browsers): add note about 'self signed certificate in certificate chain' Error (#15221) 2022-06-29 13:49:22 +02:00
Andrey Lushnikov f95b3a40e8
browser(firefox): roll Firefox stable to 101 (#15225) 2022-06-29 04:46:49 -07:00
Playwright Service b554344907
feat(chromium-tip-of-tree): roll to r1019 (#15172)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-29 13:29:28 +02:00
Dmitry Gozman 8220ab1379
feat(firefox): roll ff 1328 and ff-beta 1330 (#15185) 2022-06-29 03:04:46 -07:00
Max Schmitt e34fa4feeb
fix(evaluate): fallback to toJSON if it exists when serializing (#15188)
* fix(evaluate): fallback to toJSON if it exists when serializing

* fix test in ff

* window.performance test
2022-06-29 08:07:32 +02:00
Dan Bjorge 8c7f8eda9f
docs(contributing): add instructions for testing doc changes (#15205) 2022-06-28 16:24:28 -07:00
Pavel Feldman 6a8d835145
chore: allow updating har while routing (#15197) 2022-06-28 15:09:36 -07:00
Ross Wollman 51fd212906
docs(test-runner): add a note re: fixture naming (#15203) 2022-06-28 14:55:06 -07:00
Dan Bjorge 69273e42ae
docs(accessibility-testing): create accessibility testing guide for js (#15154) 2022-06-28 14:21:30 -07:00
Sébastien Règne f43fe4855d
docs: fix route.fallback typo (#15173) 2022-06-28 13:46:54 -07:00
Yury Semikhatsky 2a01d0c83c
browser(webkit): build Playwright.app in workspace mode (#15161)
WebKit switched to workspace builds by default upstream in c67ee46115 and Playwright.app project (forked from MiniBrowser.app xcode project) was not a part of the workspace. This PR:

* Adds Tools/Playwright project to the WebKit workspace;
* Adds WebKit.framework to the list of dependencies of Playwright.app (I managed to successfully build without this modification but decided to added to be on the safe side as that was done upstream too);
* Removes `--no-use-workspace` in order to use workspace build mode which is the default upstream.

Pretty-diff: 75f1e79447
2022-06-28 12:30:01 -07:00
Ross Wollman 3805e942a1
docs(java): fix pom.xml (and auto-generate) (#15192) 2022-06-28 11:37:53 -07:00
Max Schmitt aa1e736f3f
chore: print response body when browser download failed (#15101) 2022-06-28 18:19:31 +02:00
Yury Semikhatsky bcb013d240
test: goForward is flaky in firefox (#15182) 2022-06-28 09:15:54 -07:00
Max Schmitt ae4d7c0c43
chore: notify language bindings about matcher changes (#15183) 2022-06-28 18:07:08 +02:00
Andrey Lushnikov 571b642670
devops: fix firefox-beta build on Ubuntu 20.04 & 22.04 (#15175)
devops: fix firefox-beta build

References #15174
2022-06-28 05:40:58 -07:00
github-actions[bot] 527c5b619a
browser(chromium-tip-of-tree): roll to 2022-Jun-28 (#15170)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-28 12:12:30 +02:00
Ross Wollman 43a621e97d
docs: fix routing and har examples (#15162) 2022-06-27 20:34:30 -07:00
Dmitry Gozman 79163e802a
fix(test runner): screenshot immediately after failure (#15159)
Previously, screenshot was taken after hooks and fixtures teardown.
However, hooks can easily modify the state of the page, and
screenshot would not reflect the moment of failure.

Instead, we take screenshots immediately after the test function
finishes with an error.
2022-06-27 17:46:39 -07:00
Andrey Lushnikov 857d46ca93
docs: add Java release notes (#15158) 2022-06-27 15:31:41 -07:00
Yury Semikhatsky 7ebd81c1fa
docs(java): more FormData examples (#15156) 2022-06-27 14:02:13 -07:00
Dmitry Gozman d7b63fa0b4
fix(test runner): ignore undefined values in fixtures definitions (#15119)
These mean "I don't want to specify this fixture/option"
instead of "I want the value of undefined", aligned with how TypeScript works.
We already do similar things in the config.
2022-06-27 11:31:41 -07:00
Dmitry Gozman a93db3cf11
fix(reporter): line reporter should not swallow half-line stdout (#15114) 2022-06-27 11:25:42 -07:00
Diego Pino d152f7957a
browser(webkit): rebase to 06/27/22 (251866@main) (#15150) 2022-06-27 11:17:11 -07:00
Pavel Feldman 8c590cb2af
chore: undeprecate sync headers() (#15152) 2022-06-27 10:34:32 -07:00
Playwright Service fab12c70f7
feat(chromium): roll to r1012 (#15111)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-27 10:01:10 +02:00
Simon Siefke 597fed5ae4
docs(browsers): fix path to local binaries (#15123) 2022-06-25 18:11:47 +02:00
Yury Semikhatsky 53404ad167
test: request method is overridden (#15089) 2022-06-24 16:26:12 -07:00
Dmitry Gozman 660516d22a
fix(network): make allHeaders wait until all headers are available (#15094)
fix(network): make allHeaders wait until all header are available

Before, calling `allHeaders()` from `page.on('request')` would yield
provisional headers instead.

With these changes:
- In Firefox, all headers are available immediately.
- In Chromium, all headers are available upon requestWillBeSentExtraInfo.
- In WebKit, all headers are available upon responseReceived.
- In all browsers, intercepted requests use "provisional" headers
  as all headers, since there is no network stack to change the headers.

Drive-by: migrated Chromium to `hasExtraInfo` flags that simplifies
the logic quite a bit.
2022-06-24 13:51:09 -07:00
Dmitry Gozman 2f11807552
fix(click): no element should intercept events over the target frame (#15043)
When target element is inside a non-main frame, there could be an
overlay in some of the parent frames that intercepts pointer events.
However, we never detected this case.
2022-06-24 13:17:25 -07:00
Pavel Feldman ae6f48c4b8
fix(route): match against updated url while chaining (#15112) 2022-06-24 10:48:16 -07:00
Stuart Lang eba2bdffb9
docs: fix typo: surved -> served (#15105) 2022-06-24 15:06:57 +02:00
Yury Semikhatsky 997aac59ff
docs: recordHar content and mode options for language ports (#15097) 2022-06-23 18:55:15 -07:00
Jeff Astor 1015fd37f0
docs(api testing): fix typo (#15096) 2022-06-23 17:36:11 -07:00
github-actions[bot] 609dd2531a
browser(chromium): roll to 2022-Jun-23 (#15095)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-23 17:02:02 -07:00
Pavel Feldman d60f84d06a
chore: fix api.json (#15093) 2022-06-23 16:15:14 -07:00