Commit Graph

374 Commits

Author SHA1 Message Date
Yury Semikhatsky
259c8d64a5
feat: Page.routeFromHar (#14870) 2022-06-15 08:41:46 -07:00
Yury Semikhatsky
e00a26a11d
feat(route): fulfill with HARResponse (#14865) 2022-06-14 15:07:22 -07:00
Pavel Feldman
9cf068ad06
feat(fallback): allow falling back w/ overrides (#14849) 2022-06-13 17:56:16 -07:00
Pavel Feldman
dcdd3c3cdb
feat(route): explicitly fall back to the next handler (#14834) 2022-06-13 12:30:51 -07:00
Max Schmitt
e23960e8b2 test: make Electron bots green 2022-06-13 12:20:57 +02:00
Pavel Feldman
c7b3f4646f
fix(strict): escape css class names when generating selectors (#14810) 2022-06-12 09:39:30 -07:00
Dmitry Gozman
7c0bff15ca
feat(fulfill): improve fulfilling from har (#14789)
- `har` option is now an object `{ path, fallback }`.
- Allows falling back to `abort()`, `continue()` or throwing.
- Matches based on url + method.
- Follows redirects in the HAR file.
- Nice error/stack when throwing.
- Tests.
2022-06-10 14:26:45 -07:00
Pavel Feldman
7a568a2952
feat(route): chain routes (#14771) 2022-06-10 09:06:39 -07:00
Playwright Service
a98394033c
feat(chromium-tip-of-tree): roll to r1014 (#14742)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-10 15:59:49 +02:00
Dmitry Gozman
652ec2f1fa test: split accname, fix select preventing context closure 2022-06-09 13:58:22 -07:00
Yury Semikhatsky
7ce17a97b1
test: capture canvas changes test passes after last roll (#14760) 2022-06-09 13:55:46 -07:00
Max Schmitt
98c34ac270 test: make Android green 2022-06-09 22:53:37 +02:00
Pavel Feldman
0711a8b169 test(ff): narrow down bounding box skips 2022-06-09 13:47:58 -07:00
Pavel Feldman
211fae295f test(electron): skip fromServiceWorker 2022-06-09 13:40:42 -07:00
Pavel Feldman
833d332fa3
test(ff): fix headed tests (#14764) 2022-06-09 12:56:07 -07:00
Max Schmitt
b4c8db68d2
test: fix electron tests (#14744) 2022-06-09 14:54:51 +02:00
Dmitry Gozman
e975aef961
feat(route): fulfill from har (#14720)
feat(route): fulfill from har

This allows to use pre-recorded HAR file to fulfill routes.
2022-06-08 20:29:03 -07:00
Pavel Feldman
067d5ac81a test(electron): revert bogus fix 2022-06-09 01:33:11 -08:00
Pavel Feldman
13762c82f9
tests: nuke the failing/flaky test (#14724) 2022-06-08 17:21:19 -08:00
Max Schmitt
de22c9341e
test: skip test on electron to make it green (#14722) 2022-06-09 00:48:54 +02:00
Pavel Feldman
48ab172bda
tests(fixit): garden win/webkit/input tests (#14721)
Bumping images to 300+ to work around the non-sensible minimal size.
2022-06-08 14:13:39 -08:00
Ross Wollman
fccee89b41
feat: add Response.fromServiceWorker flag (#14715)
Resolves #14666.

Relates #1090.
Supercedes #14321.
2022-06-08 17:34:19 -04:00
Dmitry Gozman
fdcdd58d7f
feat(har): introduce urlFilter (#14693)
This is a glob or regex pattern that filters entries recorder in the HAR.
2022-06-07 18:09:47 -07:00
Yury Semikhatsky
7596379e63
test: intercept multipart request body (#14630) 2022-06-07 09:00:51 -07:00
Dmitry Gozman
94a0d669b6
browser(firefox): expose Response.fromServiceWorker (#14606)
This property is "true" when network response was fulfilled
by the service worker.
2022-06-02 17:16:19 -07:00
Andrey Lushnikov
e185082a47
tests: mark failing android tests (#14542) 2022-06-02 04:34:05 -07:00
Yury Semikhatsky
abced7223c
fix: filechooser interception in OOPIFs (#14432) 2022-05-27 13:04:58 -07:00
Pavel Feldman
8c17704244 fix(edge): improve the anchor test 2022-05-24 11:39:37 -07:00
Pavel Feldman
a1324bd935
fix(route): support route w/ async handler & times (#14317) 2022-05-21 21:55:46 -07:00
Ross Wollman
fbb364c1cd
fix: page.locator.focus() and page.locator(…).type(…) (#14267)
Fixes focus and blur management when `page.locator(…).focus()`  and  `page.locator(…).type(…)` are used which was regressed by 7a5b070 (#13510).

#13510 relied on an implicit assumption that this (conditional) [`blur`](7a5b070e95/packages/playwright-core/src/server/injected/injectedScript.ts (L672)) call would always be followed by a call that resulted in a newly focused element via this [`focus`](7a5b070e95/packages/playwright-core/src/server/injected/injectedScript.ts (L674)) call.

However, some elements are [not focusable](https://html.spec.whatwg.org/multipage/interaction.html#focusable-area), so we were blurring incorrectly, and losing focus that we should have maintained.

Two regression tests were added that pass on the commit prior to 7a5b070e95 (and match manual testing/expectations):

* `page.locator(…).focus()`: _keeps focus on element when attempting to focus a non-focusable element_
* `page.locator(…).type(…)`: _should type repeatedly in input in shadow dom_

Additionally, a third test (_should type repeatedly in input in shadow dom_) was added to check the invariant from #13510 that states:

> This affects [contenteditable] elements, but not input elements.

and allows us to introduce the targeted fix (contenteditble check before blur) without breaking FF again.

And _should type repeatedly in contenteditable in shadow dom with nested elements_ was added to ensure the above fix works with nest contenteditble detection.

Fixes #14254.
2022-05-19 14:31:56 -07:00
Max Schmitt
57966333b5
test: skip large file upload tests on Android (#14283) 2022-05-19 18:24:20 +03:00
Max Schmitt
4af778fa46
test: fix 'should climb up to a anchor' test in Firefox (#14275) 2022-05-19 16:23:31 +03:00
Pavel Feldman
b5beeab98b
fix(click): climb the hit target hierarchy to anchor (#14235)
fix(click): climb the hit target hierarcchy to anchor
2022-05-18 10:01:34 -07:00
Dmitry Gozman
0e2855348c
feat(locators): remove layout locators (#14129) 2022-05-12 18:50:19 +01:00
Dmitry Gozman
f562058805
test: make wheel event work on different host dsf (#14123)
Turns out, different mac bots have different device scale factor.
2022-05-12 17:29:03 +01:00
Dmitry Gozman
28cd3a1c5e
test: rebaseline wheel tests according to new chromium (#14110) 2022-05-12 10:05:44 +01:00
Pavel Feldman
cf89a36181
chore: serialize circular objects (#14045) 2022-05-09 18:51:53 -07:00
Pavel Feldman
e55f7bd896
feat(bindings): best-effort serialize circular structures (#14008) 2022-05-09 15:07:04 -07:00
Pavel Feldman
a052211dbf
chore: do not reset internal bindings for reuse (#14019) 2022-05-09 07:44:20 -07:00
Dmitry Gozman
6931d89eaf
feat(locators): rename locator.that to locator.filter (#14025) 2022-05-08 21:59:40 +01:00
Dmitry Gozman
64cd55089a
chore: role selectors non-experimental (#14021) 2022-05-08 11:07:01 +01:00
Dmitry Gozman
c3cf7ee4a7
feat(layout locators): remove maxDistance option (#14013) 2022-05-08 07:18:16 +01:00
Andrey Lushnikov
5a5bb36d28
chore: nuke "fonts" screenshot option (#14004)
It was never released since it wasn't working as expected on WebKit WPE.

Fixes #12839
2022-05-06 17:54:17 -07:00
Yury Semikhatsky
f171247f64
test: skip "should scroll zero-sized element" on mac 10.15 (#13972) 2022-05-05 16:56:25 -07:00
Yury Semikhatsky
7e6439d19c
test: enable smooth scroll click after webkit roll (#13948) 2022-05-05 09:49:38 -07:00
github-actions[bot]
969e6f2ada
feat(webkit): roll to r1637 (#13916) 2022-05-04 16:38:25 -07:00
Pavel Feldman
f4933e6d8b
chore(electron): add Win+Mac bots (#13943) 2022-05-04 12:29:22 -07:00
Andrey Lushnikov
1521afbb5f
test: attempt to unflake webkit test (#13935) 2022-05-04 11:46:26 -07:00
Yury Semikhatsky
4db5677e11
test: scroll and click with smooth scroll behavior (#13884) 2022-05-04 10:11:02 -07:00
Max Schmitt
b5183b4cf9
chore: make React selectors work on React 18 (#13864)
Fixes #13845
2022-05-03 13:46:52 -07:00