Commit graph

210 commits

Author SHA1 Message Date
github-actions[bot] 222033d6b2
feat(chromium): roll to r972766 (#12248)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-21 11:30:30 +01:00
Pavel Feldman b8cf5ac661
fix(electron): do not attach external debugger when running Electron tests (#12250) 2022-02-19 17:46:26 -08:00
Andrey Lushnikov 18fdf927b7
chore: simplify screenshot option handling (#12245)
#9938
2022-02-18 21:34:56 -08:00
Dmitry Gozman a7ef1da5e9
fix(selenium): support MicrosoftEdge (#12235) 2022-02-18 14:44:15 -08:00
github-actions[bot] 0518176f4a
feat(chromium): roll to r969391 (#12228)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 18:54:58 +01:00
Dmitry Gozman 15043801cb
chore: use transport for BrowserType.connect (#12196)
This gives us logging, ECONNRESET error handling and proper cleanup.
2022-02-17 20:48:14 -08:00
Andrey Lushnikov c98d595bea
fix: support hiding caret in case of matching style rule (#12172) 2022-02-17 14:05:56 -08:00
Max Schmitt 4115235f4d
feat(codegen): use web-first page assertions to match URL (#12177) 2022-02-17 20:52:35 +01:00
Max Schmitt a667d94d45
chore(codegen): do not over-escape spaces (#12155) 2022-02-17 01:01:46 +01:00
Max Schmitt 92045b7faf
feat(codgen): support radio buttons (#12157) 2022-02-16 19:10:00 +01:00
Yury Semikhatsky 08fd8d0762
fix(tracing): do not capture iframes in head (#12126) 2022-02-16 09:09:15 -08:00
Pavel Feldman d4deefbad3
feat(firefox): roll to r1317 (#12120) 2022-02-15 21:55:52 -08:00
Yury Semikhatsky f15610b874
fix(fetch): always return non-empty body regardless of request method (#12102) 2022-02-15 09:06:21 -08:00
Andrey Lushnikov 363b8a6970
feat: support mask option in screenshot methods (#12072)
Fixes https://github.com/microsoft/playwright/issues/10162
2022-02-15 07:05:05 -08:00
Andrey Lushnikov 6c89f160e8
fix(highlight): drive-by fixes to selector highlight (#12083) 2022-02-14 10:32:18 -08:00
Dmitry Gozman fb00991a78
chore: intercept socks proxy in the driver (#12021) 2022-02-13 14:03:47 -08:00
Yury Semikhatsky abd7084bcc
fix: match default font families in headless chromium (#11340) 2022-02-11 09:06:17 -08:00
Pavel Feldman da2cecbea0
chore: don't close page in generated test (#12022) 2022-02-11 08:11:24 -08:00
Pavel Feldman 5ab7bc3a59
chore: headless mode for codegen (#12020) 2022-02-10 21:23:16 -08:00
Dmitry Gozman 2bc19ae076
chore: extract SocksProxy to a spearate file (#12011) 2022-02-10 13:04:19 -08:00
Mateusz Burzyński b0cd5b1420
feat(mouse): set .buttons correctly for basic mouse commands in Chrome (#10698)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-02-09 20:48:16 -08:00
Andrey Lushnikov 6f87955243
feat: introduce disableAnimations option for screenshots (#11870)
This option stops all kinds of CSS animations while doing screenshot:
- CSS animations
- CSS transitions
- Web Animations

Animations get different treatment depending on animation duration:
- finite animations are fast-forwarded to its end, issuing the
  `transitionend` event.
- Infinite animations are resetted to its beginning, and then
  resumed after the screenshot.

References #9938, fixes #11912
2022-02-09 12:52:11 -08:00
Darío Kondratiuk 48cc41f3e7
feat: add key support on react engine (#11970)
I've got [this question](https://stackoverflow.com/questions/71050193/react-locator-example/71052432#71052432) on StackOverflow. And although, in that case, the `key` was part of the `props` attributes. That might not always be true.

I am bringing this to the tell to see what you think about this.
I'm also fixing a typo :)
2022-02-09 11:33:15 -08:00
Pavel Feldman 9f35a97a55
chore(chrome): tolerate unknown target types (#11936) 2022-02-08 09:46:05 -08:00
Yury Semikhatsky 1e00218ead
feat(tracing): suport loading multiple files in trace viewer (#11880) 2022-02-07 17:05:42 -08:00
Pavel Feldman c3c99a5f66
chore: shift left the inspector window. 2022-02-07 10:41:33 -08:00
Dmitry Gozman f82e09be04
feat(codegen): generate locators and frame locators (#11873) 2022-02-04 19:27:45 -08:00
Dmitry Gozman c45dacc834
feat(codegen): make selector generator strict (#11856)
This is required to migrate to locators.
2022-02-04 07:34:23 -08:00
Andrey Lushnikov 547a32885b
feat: hide blinking cursor when making screenshots (#11854)
References #9938
2022-02-03 21:44:23 -08:00
github-actions[bot] f96b1dd43b
feat(webkit): roll to r1609 (#11824) 2022-02-03 08:20:39 -08:00
Pavel Feldman 1215057ca1
chore: use ipc transport for out-of-process driver (#11826) 2022-02-02 21:26:45 -08:00
Dmitry Gozman f587a43932
feat(locator): "has" option (#11411)
This introduces `locator('div', { has: locator })` syntax that matches elements containing other elements.
Can be used together with `hasText`.

Internally, has selector engine takes an inner selector escaped with double-quotes:
`div >> has="li >> span >> text=Foo" >> span`.
2022-02-02 16:55:50 -08:00
github-actions[bot] fba523a9d0
feat(chromium): roll to r965416 (#11802)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-02-02 11:39:10 +01:00
Max Schmitt 028afb167b
chore: bump production dependencies (#11787) 2022-02-01 21:27:34 +01:00
Caio Agiani b6b60decdf
fix: typos (#11789) 2022-02-01 11:09:41 -08:00
Dmitry Gozman 0b04c7d504
fix(drag&drop): relax layout shift logic when dropping (#11760)
When element that is being dragged stays under the mouse,
it prevents the hit target check on drop from working,
because drop target is overlayed by the dragged element.

To workaround this, we perform a one-time hit target check
before moving for the drop, as we used to.
2022-01-31 16:21:35 -08:00
Yury Semikhatsky 401cd9c0ee
fix(fetch): do not throw on empty response body with br encoding (#11708) 2022-01-28 12:58:58 -08:00
Yury Semikhatsky 84248f6e48
fix(webkit): handle will/didCheckPolicyForNavigation (#11631) 2022-01-27 14:58:43 -08:00
Yury Semikhatsky 480338d5f3
fix: create traces dir in /tmp instead of cwd (#11699) 2022-01-27 14:58:17 -08:00
Yury Semikhatsky d305a2ab3f
fix: throw in route.continue if it is called twice (#11701) 2022-01-27 14:58:02 -08:00
hackerman 872a4be752
fix(server): handle = in cookie values correctly (#11613) 2022-01-26 11:27:43 -08:00
Andrey Lushnikov 6a7a2971f2
fix(chromium): close all javascript dialogs when closing context (#11614)
Fixes #11581
2022-01-25 13:52:18 -08:00
Yury Semikhatsky 62bf59e310
browser(webkit): removed unused will/didCheckNewWindowPolicy (#11626) 2022-01-25 12:30:11 -08:00
Ross Wollman 64e7557fb9
fix: falsey behavior in route.continue, page.post, testInfo.attach (#11421)
In several of the Playwright APIs, falsey values were not handled correctly. This changeset adds tests (and some fixes):

- route.continue: If options.postData was the empty string, the continue failed to override the post data.
- page.post (application/json with options.data: false|''|0|null): Raw falsey values were getting dropped (i.e. you can't do the equivalent of curl --header application/json … -d 'false'). This has been fixed with most values across all browsers, but an additional fix is needed for 'null' which the channel serializer treats extra specially.
- testInfo.attach: This didn't get reported as an error when options.path was the empty string, but should have been.
#11413 (and its fix #11414) inspired this search as they are the same
class of bug.
2022-01-24 15:06:36 -08:00
github-actions[bot] 5382a794fe
feat(chromium): roll to r960211 (#11487)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-01-24 08:40:45 -08:00
Yury Semikhatsky ab9d5a0dc4
chore(tracing): add tracing to APIRequestContext (#11502) 2022-01-22 11:25:13 -08:00
Yury Semikhatsky 295d0a65c3
fix(har): do not hang on cached resources (#11556) 2022-01-21 16:31:00 -08:00
Max Schmitt fb139cefac
fix: playwright.locator.hasText RegExp flag serialisation in Console API (#11516) 2022-01-21 01:05:37 +01:00
Pavel Feldman a65f7066d5
fix(webkit): improve orientation detection (#11481) 2022-01-19 10:07:38 -08:00
Dmitry Gozman 6928c84ac2
chore: move some files out of server/common (#11466)
This is a directory for sharing code between Node and Web.
2022-01-18 19:13:51 -08:00