Pavel Feldman
ec47b03722
fix(trace): show interrupted actions in trace ( #7329 )
2021-06-25 17:14:19 -07:00
Max Schmitt
4c6deaa449
test: added tests for WebSocket over Socks proxy ( #7235 )
2021-06-24 18:50:16 +02:00
Pavel Feldman
e6bf0a07fe
feat(force): add fill, selectOption, selectText ({force}) ( #7286 )
2021-06-24 08:18:09 -07:00
Pavel Feldman
5732307280
feat(inputValue): implement *.inputValue() ( #7285 )
2021-06-23 22:19:20 -07:00
Joel Einbinder
1a6d46d844
chore(typescript): compile with babel, lint everything with tsc ( #6872 )
2021-06-23 18:01:48 -07:00
Max Schmitt
103f8ddd06
Revert "chore: update eslint config ( #6840 )" partly ( #7268 )
...
This reverts commit ec7d37d92f .
2021-06-23 11:08:35 +02:00
Max Schmitt
590184998f
chore: improve connectOverCDP error handling ( #7239 )
2021-06-21 19:57:00 +02:00
Yury Semikhatsky
c0cd2d4579
feat: response interception ( #7122 )
2021-06-18 11:04:48 -07:00
Yury Semikhatsky
79b2e5ddeb
feat(webkit): bump to 1500 ( #7224 )
2021-06-18 10:20:09 -07:00
Joel Einbinder
10a82f862c
fix(snapshotter): support constructed CSSStyleSheet
...
Fixes #7085
2021-06-17 09:41:29 -07:00
Andrey Lushnikov
0cfea9a623
feat(chromium): roll to r891964 ( #7185 )
2021-06-16 16:00:54 -07:00
Andrey Lushnikov
a3e4185b2f
chore: nuke 'webkit-technology-preview' experiment ( #7164 )
...
It proved to be unmaintainable due to the following reasons:
- determining upstream branch for the technology preview was a manual
and tedious process
- once determined, actual Safari Technology Preview occasionally
diverted from the branch
2021-06-15 23:58:30 -07:00
Andrey Lushnikov
ec68b31dc4
feat: support chromium-with-symbols channel ( #7135 )
...
References #7130
2021-06-15 17:57:31 -07:00
Dmitry Gozman
b74ca36fb3
chore: create Selectors for each Playwright object ( #7154 )
...
We currently have singleton `serverSelectors` that is shared between
the real Playwright and internal Playwrights.
2021-06-15 14:56:29 -07:00
Ross Wollman
195eab8787
feat(har): record remote IP:PORT and SSL details ( #6631 )
2021-06-15 09:48:08 +02:00
Dmitry Gozman
2041aab010
fix(chromium): background pages on persistent close error ( #7118 )
...
This is a speculative fix that moves "background pages cleanup"
to `_didCloseInternal` so that it is only run once, but on both
context closure and browser closure.
Symptom from a flaky test:
```log
browserContext.close: page@18087c372d32819222707ca5e8fd1030 is sending "close" event after being disposed
at PageDispatcher._dispatchEvent (D:\a\playwright\playwright\src\dispatchers\dispatcher.ts:86:15)
at Page.<anonymous> (D:\a\playwright\playwright\src\dispatchers\pageDispatcher.ts:59:12)
at Page.emit (events.js:314:20)
at Page._didClose (D:\a\playwright\playwright\src\server\page.ts:220:10)
at CRPage.didClose (D:\a\playwright\playwright\src\server\chromium\crPage.ts:165:16)
at CRBrowserContext._onClosePersistent (D:\a\playwright\playwright\src\server\chromium\crBrowser.ts:476:24)
at CRBrowserContext.close (D:\a\playwright\playwright\src\server\browserContext.ts:288:20)
```
2021-06-14 21:55:55 -07:00
Peng-Yu Chen
5f6d4a7b73
feat(download): adding a new Download._cancel method ( #6236 )
2021-06-12 22:23:22 +02:00
Andrey Lushnikov
d6831df26f
feat: roll Firefox to r1271 ( #7067 )
...
References #7015
2021-06-11 10:50:02 -07:00
Yury Semikhatsky
c903b04c7a
feat(webkit): bump to 1499 ( #7001 )
2021-06-11 09:35:48 -07:00
Pavel Feldman
cbce7cbdec
fix(tracing): do not stall on dialogs ( #7059 )
2021-06-10 22:24:04 -07:00
Andrey Lushnikov
f52290d4ea
Revert "feat: add defaultTimeout browser context configuration option ( #6944 )" ( #7057 )
...
This reverts commit 617dfdef9e .
It turns out this might conflict with our bright testrunner future.
2021-06-10 18:38:56 -07:00
Amit Abershitz
617dfdef9e
feat: add defaultTimeout browser context configuration option ( #6944 )
...
Fixes #6940
Co-authored-by: Amit Abershitz <aabershitz@proofpoint.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-06-10 18:10:20 -07:00
Pavel Feldman
3b1bae8a40
feat(codegen): allow generating tests ( #7049 )
2021-06-10 16:52:59 -07:00
Pavel Feldman
19d69b792d
fix(tracing): do not merge srcset urls ( #6995 )
...
Fixes #6982
2021-06-09 12:05:21 -07:00
Dmitry Gozman
ff3f951dc8
fix(firefox): race between markAsError and Page.ready ( #6976 )
...
When new page turns into download, we can have `_markAsError` followed
by the `Page.ready` signal and report the page twice (as an error and
as a real page). This is flaky and depends on whether `Page.ready` is
fast enough before the page closes or not.
Exposed by the "should report new window downloads" test.
2021-06-08 17:28:24 -07:00
Dmitry Gozman
6eeafc171b
fix(chromium): fix a race when intialization does not finish before page close ( #6975 )
...
This is exposed by the flaky "should report new window downloads" test.
In this test a new page is created, initialized and closed before initialization
finishes. If `lifecycleEventsEnabled` fails with "Target closed error",
we correctly ignore the initialization failure, but a single usage of the
failed promise with `.then` fails anyway.
2021-06-08 17:28:16 -07:00
Andrey Lushnikov
53d68bdb38
feat: firefox is stable by default ( #6953 )
...
This patch:
- rolls Firefox to v1269 which is now a firefox-stable build.
- introduces a new channel, `firefox-beta`, for our internal needs.
Fixes #6817
2021-06-08 09:34:17 -07:00
Andrey Lushnikov
55da16d8cd
Revert "feat: switch to the Firefox Stable equivalent by default ( #6926 )" ( #6947 )
...
This reverts commit a25b11659be8887b700311180fcd3653aa9e472b.
In a discussion with Dmitry Gozman we decided to revert this and instead
proceed with the following approach:
- rename `//browser_patches/firefox` to `//browser_patches/firefox-beta`
- rename `//browser_patches/firefox-stable` folder to
`//browser_patches/firefox`
In all of the folders, we will keep the `BUILD_NUMBER` original so that
it doesn't clash on the CDN.
2021-06-07 15:55:01 -07:00
Andrey Lushnikov
a1e8d2d531
feat: switch to the Firefox Stable equivalent by default ( #6926 )
...
This patch:
- starts downloading Firefox Stable equivalent by default
- starts running Firefox-Stable on our smoke tests (tests-1)
- starts running Firefox-Beta on our CQ1 tests (tests-2)
Note: there's a little confusion right now with browser names:
- `firefox-stable` - firefox-stable equivalent
- `firefox`- firefox-beta equivalent
I'll rename `firefox` to `firefox-beta` in a follow-up.
Fixes #6817
2021-06-07 15:00:23 -07:00
Joel Einbinder
8960584b78
fix(chromium): drag and drop works in chromium ( #6207 )
...
Waiting for #6203 to percolate to the cdn. But this all works locally.
Fixes #1094
2021-06-07 10:27:34 -07:00
Andrey Lushnikov
cfd49b5c01
feat: support npx playwright install msedge ( #6861 )
2021-06-07 00:23:22 -07:00
Dmitry Gozman
69b734629c
fix: various test-related fixes ( #6916 )
...
- Closing inspector window resumes the script.
- Replace FOLIO_WORKER_INDEX with TEST_WORKER_INDEX.
- Account for `@playwright/test` stack traces.
2021-06-04 18:43:54 -07:00
Dmitry Gozman
a83646684a
fix(tracing): error handling ( #6888 )
...
- Reject when ZipFile signals an error.
- Make sure snapshotter does not save trace events after stop().
- Await pending blob writes on stop().
2021-06-04 14:52:16 -07:00
Max Schmitt
ff3ad7a3d1
fix(android): to not call Browser.setDownloadBehavior ( #6913 )
2021-06-04 21:46:53 +02:00
Dmitry Gozman
233f1874da
feat(inspector): remove snapshots ( #6909 )
2021-06-04 10:47:19 -07:00
Yury Semikhatsky
a96491cbbb
feat(downloads): subscribe to download events in Browser domain instead of Page ( #6082 )
2021-06-04 09:54:29 -07:00
Dmitry Gozman
d4482f3ad3
chore: do not use Array.from in injected script ( #6876 )
...
This method is most often overridden by some bad polyfill that
does not work correctly and breaks `$eval` and `$$eval` methods.
As a best-effort fix, use a `[...iterable]` throughout the code.
2021-06-03 15:10:02 -07:00
Max Schmitt
064150f8dd
chore: use fs.promises API instead of promisify ( #6871 )
2021-06-03 18:55:33 +02:00
Pavel Feldman
b2143a951b
chore: make tracing zero config ( #6859 )
2021-06-02 22:00:34 -07:00
Dmitry Gozman
837ee08a53
fix(waitForSelector): retry when context is gone during node adoption ( #6851 )
...
There is a small window after finishing the "rerunnable task" where
we adopt the node to the main world and navigation could destroy the context.
2021-06-02 20:17:24 -07:00
Max Schmitt
e91e49e533
feat(port-forwarding): add playwrightclient support ( #6786 )
2021-06-02 23:35:17 +02:00
Yury Semikhatsky
2fde9bc13f
fix(webkit): use new awaitPromise parameter instead of separate command ( #6852 )
2021-06-02 10:04:47 -07:00
Yury Semikhatsky
f9c8b78c07
feat(webkit): bump to 1490 ( #6842 )
2021-06-02 09:08:55 -07:00
Andrey Lushnikov
cb4adb1446
feat: install chrome-beta via cli ( #6831 )
...
This patch starts introduces `npx playwright install chrome-beta`
command and switches our Chrome Beta tests to it.
2021-06-01 18:26:12 -07:00
Andrey Lushnikov
3c3a7f9293
feat(chromium): roll Chromium to r888113 ( #6832 )
...
References #6818 , references #6390
2021-06-01 18:06:44 -07:00
Max Schmitt
d79110dcc1
fix(port-forwarding): close socket on unexpected payloads ( #6753 )
2021-06-01 23:13:23 +02:00
Pavel Feldman
9f3e66566b
fix(inspector): do not pause while recording ( #6604 )
2021-05-26 15:49:30 -07:00
Pavel Feldman
95bd4b315c
chore: fix codegen to emit new C# api ( #6763 )
2021-05-26 15:44:40 -07:00
Andrey Lushnikov
3aa1471489
chore: better logging for Windows CrashPad problem ( #6758 )
...
References #6123
2021-05-26 10:49:38 -07:00
Max Schmitt
1d0cdb352d
chore(chromium): disable GlobalMediaControls feature ( #6754 )
2021-05-26 18:47:00 +02:00
Pavel Feldman
f7f08c9c02
api(dotnet): normalize enums, remove browser channel enum ( #6738 )
2021-05-25 14:33:27 -07:00
Dmitry Gozman
9dd2f83361
fix(codegen): update csharp boilerplate ( #6742 )
2021-05-25 10:59:17 -07:00
Max Schmitt
3f43db5cc4
feat(browserServer): forward local ports ( #6375 )
2021-05-25 17:11:32 +02:00
Max Schmitt
ac0980e1ee
chore(linting): enable required semicolons rule in TS ( #6701 )
2021-05-24 00:09:46 +02:00
Max Schmitt
ba29e99ace
feat: added reduced motion media query emulation ( #6646 )
2021-05-22 01:56:09 +02:00
Dmitry Gozman
af2fec6bcf
fix(codegen): generate all options for java ( #6698 )
2021-05-21 16:17:25 -07:00
Dmitry Gozman
f529f0a25d
fix(codegen): generate acceptDownloads option for download signals ( #6697 )
2021-05-21 15:08:39 -07:00
Andrey Lushnikov
d1d49b3412
feat(chromium): roll Chromium to r884693 ( #6686 )
2021-05-21 11:05:44 -07:00
Dmitry Gozman
e4946b79e6
fix(codegen): update csharp scripts to new syntax ( #6685 )
...
Drive-by: fix middle/right button clicks in codegen.
2021-05-20 15:47:14 -07:00
Max Schmitt
88591d49eb
feat(firefox): roll to 1265 ( #6678 )
2021-05-20 08:06:05 -07:00
Max Schmitt
bae579440c
feat(webkit): roll to 1482 ( #6676 )
2021-05-20 09:27:31 +02:00
Yury Semikhatsky
2ef47b95f2
fix: wait for video to finish when persistent context closes ( #6664 )
2021-05-19 16:26:10 -07:00
Joel Einbinder
754ee13c93
feat(electron): accept BrowserContextOptions in electron.launch ( #6621 )
2021-05-19 06:56:29 -07:00
Yury Semikhatsky
b94643786b
fix: wait for ffmpeg to finish writing even if page was closed ( #6648 )
2021-05-18 22:29:39 -07:00
Yury Semikhatsky
475a417dfc
fix: compute payload mime type on server ( #6647 )
2021-05-18 18:30:20 -07:00
Andrey Lushnikov
dc4f37c923
feat(chromium): roll Chromium to r879910 ( #6635 )
2021-05-18 17:36:50 -07:00
Yury Semikhatsky
345f7da573
fix(codegen): move injected recorder scripts to utility world ( #6187 )
2021-05-18 09:40:24 -07:00
Max Schmitt
b52cbfdb16
fix(chromium): close background pages on close ( #6608 )
2021-05-18 18:07:45 +02:00
Max Schmitt
9592486225
feat: use up2date Chromium user-agents for device descriptors ( #6594 )
2021-05-18 09:29:48 +02:00
Yury Semikhatsky
c4b7818379
feat(webkit): bindings in util world ( #6592 )
2021-05-17 11:32:29 -07:00
Yury Semikhatsky
be8d836443
feat(webkit): bump to 1480 ( #6605 )
2021-05-17 09:38:04 -07:00
Pavel Feldman
d7c6720ce7
chore: include context options into the trace ( #6572 )
2021-05-13 22:36:34 -07:00
Pavel Feldman
7b844c5fab
chore(tracing): simplify resource treatment ( #6571 )
2021-05-13 20:41:32 -07:00
Pavel Feldman
0678f48289
chore(tracing): trim network urls for readability ( #6566 )
2021-05-13 16:07:38 -07:00
Dmitry Gozman
fbae295ce2
fix(har): save popup's main request/response ( #6562 )
...
This migrates server side code from networks events on the Page
to network events on the BrowserContext.
2021-05-13 15:02:10 -07:00
Joel Einbinder
3bded35834
fix(chromium): wait for existing pages when connecting ( #6511 )
2021-05-13 14:10:52 -07:00
Andrey Lushnikov
92fa7ddead
feat(firefox): roll to latest Firefoxes ( #6561 )
...
Fixes #4704
2021-05-13 13:42:25 -07:00
Pavel Feldman
6a39b86640
chore: GoToAsync -> GotoAsync ( #6563 )
2021-05-13 11:57:02 -07:00
Vignesh Shanmugam
4b3e5e5c17
feat(network): expose network events via browser context ( #6370 )
...
- fix #6340
- Exposes all the network related events (request, response, requestfailed, requestfinished) through the browser context to allow for managing network activity even if the is any navigations through popups or to new tabs which could result in creation of multiple page objects.
2021-05-13 10:29:14 -07:00
Pavel Feldman
17e9dd95f7
feat(trace): support loading trace from zip ( #6551 )
2021-05-12 21:31:34 -07:00
Pavel Feldman
cc43b0d23f
chore: remove storybook ( #6549 )
2021-05-12 19:55:49 -07:00
Yury Semikhatsky
41df6607b0
fix: enable util world bindings in firefox ( #6546 )
2021-05-12 15:19:27 -07:00
Pavel Feldman
21cb726b7d
chore(tracing): expose tracing api ( #6523 )
2021-05-12 12:21:54 -07:00
Yury Semikhatsky
460cc31941
fix: propagate custom executable path to codegen ( #6509 )
2021-05-12 11:45:57 -07:00
Yury Semikhatsky
ab55918979
feat(firefox): bump to 1259 ( #6510 )
2021-05-12 09:03:15 -07:00
Pavel Feldman
45ee257a26
chore(test): fix some screencast tests ( #6522 )
2021-05-12 08:35:19 -07:00
Anx
1c10c4cbe8
fix: fix har entry time calculation ( #6472 )
2021-05-11 13:28:17 -07:00
Pavel Feldman
d08c50d277
feat(screencast): scale fixes ( #6475 )
2021-05-11 13:21:01 -07:00
Fili
f1a888de02
feat: support Moto G4 device in emulated devices for performance testing ( #5946 )
...
Adding Moto G4 to deviceDescriptors.
2021-05-10 09:33:11 -07:00
Andrey Lushnikov
5c1ddc7f0a
fix: fix method elementHandle.frameElement() for framesets ( #6468 )
...
Playwright clicks did not work in regular frames due to a bug
in `frameElement` method.
Fixes #6453
2021-05-08 21:25:12 -07:00
Pavel Feldman
a9523d9d8f
feat(ff): roll to 1256/1246 ( #6466 )
2021-05-08 11:35:36 -07:00
Andrey Lushnikov
5e4badd654
feat(firefox-beta): roll Firefox to 1254 - v89.0b9 ( #6454 )
2021-05-07 00:49:43 -07:00
Andrey Lushnikov
aab602cc3b
fix: use old screencast protocol calls for Mac 10.14 ( #6440 )
...
This is a quick workaround to be cherry-picked in the release branch.
We'll align protocols in a follow-up.
References #6439
2021-05-06 10:38:46 -07:00
Andrey Lushnikov
7906a8f2f5
feat: add best-effort support for Ubuntu 21.04 ( #6429 )
...
With this patch:
- `npx playwright install-deps` will install deps on Ubuntu 21.04
- launch doctor knows the package<->lib mapping for Ubuntu 21.04
**NOTE:** our webkit build, however, doesn't work on Ubuntu 21.04. Since
this is not LTS release, we're doing best-effort here.
Fixes #6405
2021-05-06 10:37:06 -07:00
Max Schmitt
d902b06fd1
test: fixed flaky connectOverCDP tests ( #6436 )
2021-05-06 18:18:56 +02:00
Pavel Feldman
791443d71f
feat(webkit): roll to r1472 ( #6425 )
2021-05-05 15:35:10 -07:00
Michael Rienstra
8737207d5a
feat(devices): add more Android device descriptions ( #6413 )
...
Adds device descriptions for:
- Galaxy S8
- Galaxy S9+
- Galaxy Tab S4
- Pixel 3
- Pixel 4
These devices are regarded as worthy of targeting by BrowserStack.
Sources (both have identical data for these 5 devices):
1. https://github.com/aerokube/moon-deploy/blob/master/moon-local.yaml#L199
2. https://www.danhendricks.com/2018/04/adding-iphone-galaxy-chrome-mobile-emulated-devices/#heading_device_data
2021-05-05 14:02:28 -07:00
Yury Semikhatsky
47cf9c3e8f
feat(chromium): bump to r878941 ( #6216 )
...
This roll was blocked by a few upstream bugs that were crashing Chromium on Windows.
- https://bugs.chromium.org/p/chromium/issues/detail?id=1198567#c33
- https://bugs.chromium.org/p/chromium/issues/detail?id=1200964
2021-05-05 09:47:34 -07:00
Max Schmitt
ab850afb45
fix: support relative downloadsPath directory for downloads ( #6402 )
2021-05-05 17:07:10 +02:00
Joel Einbinder
6219042c74
fix(webkit): swallow requests from detached frames ( #6242 )
2021-05-03 12:34:09 -07:00
Pavel Feldman
1a859ebe68
chore(electron): fix node/browser race conditions, expose browser window asynchronously ( #6381 )
2021-05-02 22:45:06 -07:00
Yury Semikhatsky
07fb81a4ef
fix(launcher): improve error message for missing channel distribution ( #6380 )
2021-04-30 19:39:52 -07:00
Gnome Bard
018f3146a8
fix(electron): deliver promised _nodeElectronHandle ( #6348 )
2021-04-30 18:46:27 -07:00
Pavel Feldman
934bc672f7
test(tracing): start adding tracing tests ( #6369 )
2021-04-30 07:40:22 -07:00
Max Schmitt
1c40c94ed7
chore: only throw the proxy on launch required on win/CR ( #6350 )
2021-04-30 00:02:48 +02:00
Dmitry Gozman
263a0fd2e1
fix: evaluate in utility for screenshots ( #6364 )
...
We use `waitForFunctionValue` in the main world that may be corrupted.
References #6356 .
2021-04-29 14:53:53 -07:00
Pavel Feldman
434f474ce8
chore(evaluate): implement non-stalling evaluate ( #6354 )
2021-04-29 09:28:19 -07:00
Pavel Feldman
06a92684f3
Reapply #6363 w/ modification--amend
2021-04-28 22:18:05 -07:00
Pavel Feldman
0becd9428a
Revert "Revert "fix: break require cycle ( #6353 )""
...
This reverts commit 17e966bc2e .
2021-04-28 22:16:53 -07:00
Pavel Feldman
17e966bc2e
Revert "fix: break require cycle ( #6353 )"
...
This reverts commit 0bcfa92360 .
Inspector no longer opens.
2021-04-28 22:10:50 -07:00
Dmitry Gozman
0bcfa92360
fix: break require cycle ( #6353 )
...
We have `CRBrowserContext` that extends `BrowserContext`, and
it sometimes fails beacause `BrowserContext` is undefined, depending
on the require order. Below is the require cycle.
```log
server/browserContext.ts
server/supplements/recorderSupplement.ts
server/supplements/recorder/recorderApp.ts
server/playwright.ts
server/android/android.ts
server/chromium/crBrowser.ts
server/browserContext.ts
```
Fixing this by using `require`.
2021-04-28 20:39:01 -07:00
Pavel Feldman
922d9ce1fb
chore(tracing): fix some of the start/stop scenarios ( #6337 )
2021-04-27 11:07:07 -07:00
Yury Semikhatsky
b6b2366d2c
fix: browser logging ( #6331 )
2021-04-26 16:20:38 -07:00
Joel Einbinder
a51dc50d85
fix(accessibiltiy): ignore new roles that came with new chromium ( #6329 )
2021-04-26 12:02:54 -07:00
Pavel Feldman
be27f47309
feat(tracing): introduce context.tracing, allow exporting trace ( #6313 )
2021-04-24 20:39:48 -07:00
Pavel Feldman
a9219aa8b6
chore: start / stop context tracing ( #6309 )
2021-04-23 20:39:09 -07:00
Pavel Feldman
97cf86d20a
chore: make instrumentation per-context ( #6302 )
2021-04-23 18:34:52 -07:00
Yury Semikhatsky
fd31ea8b0d
feat: support extra http headers in browserType.connect() ( #6301 )
2021-04-23 14:52:27 -07:00
Yury Semikhatsky
cc4782a718
Revert "fix(chromium): force --use-gl=swiftshader on Windows ( #6272 )" ( #6300 )
...
This reverts commit 357224d6b1 .
2021-04-23 10:09:55 -07:00
Pavel Feldman
0ed328f6de
chore(tracing): include events in the trace ( #6285 )
2021-04-23 09:28:18 -07:00
Yury Semikhatsky
357224d6b1
fix(chromium): force --use-gl=swiftshader on Windows ( #6272 )
2021-04-22 10:06:39 -07:00
Pavel Feldman
fe4fba4a16
chore: extract debugger model from inspector ( #6261 )
2021-04-21 20:46:45 -07:00
Dmitry Gozman
6bdc67ac6a
feat(actions): trial option that only performs the checks ( #6246 )
...
Available for check, click, dblclick, hover, tap, uncheck.
2021-04-21 12:22:19 -07:00
Dmitry Gozman
640b10c70f
fix(codegen): missing await before newPage.goto ( #6253 )
2021-04-21 07:59:38 -07:00
Pavel Feldman
85e2db2416
chore: push dispatcher guid into object, reuse it in trace ( #6250 )
2021-04-20 23:03:56 -07:00
Dmitry Gozman
06b0619260
fix(codegen): do not commit last action on mouse move ( #6252 )
...
On a slow page that does a lot of things before navigating upon click,
it is common to move mouse away from the click point. Previously,
we would commit the click action and record a `page.goto()` for the
navigation. Now we attribute any signals, even after accidental mouse move,
to the previous action, in the 5-seconds time window.
2021-04-20 18:45:52 -07:00
Dmitry Gozman
ad731c1535
feat(debug): PWDEBUG=console vs PWDEBUG=inspector ( #6213 )
...
This supports `PWDEBUG=console` that:
- runs headed;
- disables timeouts;
- adds `playwright` console helper.
When using `PWDEBUG=anything-but-console`, we open inspector.
Docs keep suggesting `PWDEBUG=1`.
2021-04-20 15:58:34 -07:00
Max Schmitt
9cd89ae052
fix: host dependency validation ( #6227 )
2021-04-20 18:54:53 +02:00
Andrey Lushnikov
23dfaf9e9b
feat: start downloading firefox-stable channel ( #6177 )
...
This patch adds support for downloading and running Playwright with
firefox-stable channel.
References #5993
2021-04-19 21:26:33 -07:00
Max Schmitt
8ca58e344e
fix(page): add name property to pageerror event ( #5970 )
2021-04-19 22:37:38 +02:00
Andrey Lushnikov
329980be2a
feat: use --no-service-autorun in Chromium ( #6232 )
...
See https://chromium-review.googlesource.com/c/chromium/src/+/2436773 for details
2021-04-19 13:01:41 -07:00
Pavel Feldman
90913160c4
chore: render wait for on trace timeline ( #6222 )
2021-04-18 20:02:34 -07:00
Yury Semikhatsky
e4ae6503d7
fix(inspector): fall back to custom executable path for UI ( #6214 )
2021-04-16 15:19:44 -07:00
Dmitry Gozman
ce96914292
fix(remote): unregister selectors after client disconnect ( #6195 )
2021-04-16 11:14:57 -07:00
Dmitry Gozman
e81a3c5901
api: add option position to check/uncheck ( #6153 )
...
Since check/uncheck does click under the hood, sometimes it might
need to click at a different position. One example would be a long
label that contains links inside, and clicking in the center happens
to hit the link instead of the label itself.
2021-04-12 12:41:25 -07:00
Joel Einbinder
b3b87f6c69
fix(codegen): ignore AltGraph when typing ( #6086 )
2021-04-12 09:00:29 -07:00
Dmitry Gozman
b62a436041
feat(selectors): support max distance in layout selectors ( #6172 )
...
Supports `div:near(button, 120)` with configurable distance in pixels.
2021-04-10 15:20:26 -07:00
Ross Wollman
bba7ca34c8
feat(chromium): roll to r869727 ( #6170 )
...
Fixes #5952
Fixes #6016
2021-04-09 20:57:41 -07:00
Yury Semikhatsky
f3b44d18be
fix(screencast): wait for ffmpeg to finish before reporting video ( #6167 )
2021-04-09 14:09:45 -07:00
Dmitry Gozman
bd8433ba49
test: cleanup various testing env variables ( #6155 )
2021-04-09 07:59:09 -07:00
Yury Semikhatsky
f6606d505b
fix: finish all artifacts when browser exits ( #6151 )
2021-04-08 18:56:09 -07:00
Pavel Feldman
e6f5ce9044
chore: allow running multiple snapshotters for tests ( #6147 )
2021-04-08 17:27:55 -07:00
Joel Einbinder
63d0d466e3
feat(cdp): replace wsEndpoint with protocol neutral endpointURL ( #6141 )
2021-04-08 14:55:28 -07:00
Yury Semikhatsky
53d50f9b72
fix(screencast): properly stop screencast on context closure ( #6146 )
2021-04-08 14:01:05 -07:00
Dmitry Gozman
310692b101
test: run page tests on electron bot ( #6122 )
2021-04-08 10:26:26 -07:00
Pavel Feldman
d9546fd098
chore: read all traces from the folder ( #6134 )
2021-04-08 07:59:05 -07:00
Pavel Feldman
d0db4f6737
feat: include screencast in trace ( #6128 )
2021-04-07 14:32:12 -07:00
Yury Semikhatsky
09c175914e
feat(webkit): bump to 1460 ( #6124 )
2021-04-07 08:55:16 -07:00
Pavel Feldman
0dfde2e975
fix(screenshot): never throw page is navigating ( #6103 )
2021-04-06 16:01:38 -07:00
Andrey Lushnikov
112ac2f98c
feat(chromium): roll Chromium to r867878 ( #6065 )
...
This roll required us pass a new flag - `--allow-pre-commit-input`. Otherwise, keyboard tests won't pass.
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-04-06 15:56:41 -07:00
Dmitry Gozman
4f7e7450e2
test: migrate last tests to new folio ( #6071 )
2021-04-05 09:18:56 -07:00
Andrey Lushnikov
4da2d6e104
feat(firefox): roll Firefox to r1244 ( #6052 )
...
Fixes #5929
Fixes #6001
2021-04-02 15:41:54 -07:00
Yury Semikhatsky
561cb23e8d
fix: dispatch popup event on the client end ( #6044 )
2021-04-02 11:15:07 -07:00
Yury Semikhatsky
4f2827f302
fix(dom): click on links inside shadow dom ( #5850 )
2021-04-02 10:36:24 -07:00
Dmitry Gozman
8f71f5971b
fix(input): do not retarget from input/textarea/select to an ancestor button ( #6036 )
...
Although such markup is not expected, it happens in the wild. Retargeting
in this case in unexpected, so we check/click/etc the control itself.
2021-04-01 12:30:05 -07:00
Yury Semikhatsky
16d98cb48a
chore(launcher): add more logging to processKill ( #6025 )
2021-03-31 12:17:16 -07:00
Andrey Lushnikov
f472c96129
feat: support webkit technology preview ( #5885 )
...
This patch adds support for `technology preview` webkit channel, which
we will keep close to the actual Safari Technology Preview releases.
This channel does not install by default. It is supposed to be installed
with the following CLI command:
```sh
$ npx playwright install webkit-technology-preview
```
Once the channel is installed, it can be used the following way:
```js
const browser = await playwright.webkit.launch({
channel: 'technology-preview',
});
```
**NOTE:** if clients attempt using the channel without installing it,
it'll throw an error with a copyable instructions to install via CLI.
References #5884
2021-03-31 11:32:10 -07:00
Dmitry Gozman
9d9599c6a6
api(video): implement video.saveAs and video.delete ( #6005 )
...
These methods are safe to call while the page is still open, or when it is
already closed. Works in remotely connected browser as well.
Also makes video.path() to throw for remotely connected browser.
Under the hood migrated Download and Video to use the common Artifact object.
2021-03-31 10:38:05 -07:00
Yury Semikhatsky
9532d0bde0
feat(webkit): bump to 1457 ( #6021 )
2021-03-31 10:29:43 -07:00
Yury Semikhatsky
587682e024
feat(chromium): bump to r865012 ( #5963 )
...
References #5858
Co-authored-by: Andrey Lushnikov <lushnikov@chromium.org>
2021-03-31 09:51:18 -07:00
Dmitry Gozman
98f1f715c5
chore: ensure we emit Page event before resoliving pageOrError ( #6012 )
...
Internal callers of pageOrError should be able to rely on the
Page being already reported.
2021-03-30 17:35:42 -07:00
Pavel Feldman
f1c0d09765
feat(size): emulate window.screen size ( #5967 )
2021-03-29 14:10:58 -07:00
Yury Semikhatsky
0943af2806
fix: kill browser if process doesnt exit for 30s after close ( #5968 )
2021-03-27 09:59:04 -07:00
Joel Einbinder
3ce02a95c8
fix(selectors): properly generate selectors for tricky ids ( #5940 )
2021-03-25 18:43:33 -07:00
Dmitry Gozman
6b3f4cd12b
chore: calculate video size in a single place ( #5942 )
2021-03-24 10:56:20 -07:00
Dmitry Gozman
8e97607389
fix(viedo): do not stall video in popups ( #5941 )
...
There are two problems, exposed by existing tests:
- We do not send Page.startScreeencast before Runtime.runIfWaitingForDebugger
because we launch video recorder in between. This stalls when the page is busy
immediately after resuming, e.g. with alert().
Fixed by starting video recorder in advance.
- We wait for the first frame that may not come - for example, context-wide interception
is blocking essential resource and first frame.
Fixed by only waiting for the first frame before reporting the video, not the page.
2021-03-24 09:36:46 -07:00
Pavel Feldman
543582b4ca
chore: expose channel name literals for types ( #5922 )
2021-03-23 13:21:03 -07:00
Yury Semikhatsky
67c29e8155
chore: add missing await to floating promises ( #5813 )
2021-03-22 09:59:39 -07:00
Pavel Feldman
d53cea7029
fix(pageOrError): throw in launchPersistentContext if context page has errors ( #5868 )
2021-03-18 08:14:57 -07:00
Andrey Lushnikov
bb21faf450
fix: disable firefox's webrender on Darwin ( #5870 )
...
References #5721
2021-03-18 00:23:23 -07:00
Pavel Feldman
2367039a2c
chore(stable): throw user-friendly message when ffmpeg is missing ( #5865 )
2021-03-17 19:19:44 -07:00
Pavel Feldman
84efdfcbc9
chore(autowait): auto-wait for top level navigations only ( #5861 )
2021-03-17 14:47:51 -07:00
Pavel Feldman
5ae731a3fb
chore(evaluate): respect signals when evaluating on handle ( #5847 )
2021-03-17 12:03:21 -07:00
Pavel Feldman
7011e5737a
chore(evaluate): explicitly annotate methods that wait for signals ( #5859 )
2021-03-17 10:47:07 -07:00
Andrey Lushnikov
e8a33c4039
feat(firefox): roll Firefox to r1237 ( #5849 )
...
This patch rolls Firefox to r1237. Upstream firefox still struggles
with crashes with certain videos: https://bugzilla.mozilla.org/show_bug.cgi?id=1697004
This PR also workarounds this crash by disabling webrender.
References #5721
2021-03-16 23:27:39 -07:00
Pavel Feldman
bf36b487fc
fix(rimraf): allow 10 retires when removing the profile folder ( #5826 )
2021-03-16 19:31:35 -07:00
Yury Semikhatsky
8df4dcb0de
feat(webkit): bump to 1446 ( #5844 )
2021-03-16 17:23:42 -07:00
Pavel Feldman
d81ebff414
fix(inspector): do not collect action signals while on pause ( #5843 )
2021-03-16 12:06:12 -07:00
Pavel Feldman
5cf13612cf
chore: pretty print storage state ( #5830 )
2021-03-15 19:03:09 -07:00
Pavel Feldman
c2db8da4df
fix(inspector): await inspector init to avoid races ( #5829 )
2021-03-15 19:02:38 -07:00
E
095ad6339c
chore: update error message when using userDataDir arg ( #5814 )
2021-03-15 16:58:46 -07:00
Pavel Feldman
ea32ad2b09
infra(channel): add edge stable bot ( #5825 )
2021-03-15 16:00:52 -07:00
Joel Einbinder
defd1a33be
fix(chromium): fix crash if connecting to a browser with a serviceworker ( #5803 )
2021-03-15 09:50:17 -07:00
Pavel Feldman
1dd6bd3316
infra(channel): wire release channel to all tests ( #5820 )
2021-03-15 08:07:57 -07:00
Pavel Feldman
a96d6a7dbb
feat: allow to pick stable channel ( #5817 )
2021-03-13 14:02:39 -08:00
Pavel Feldman
c4578f19f2
chore: organize per-browser dependencies ( #5787 )
2021-03-11 20:22:50 -08:00
Oleg Lebedev
a185da9d14
chore: allow skipping host requirements validation ( #5806 )
2021-03-11 18:46:31 -08:00
Pavel Feldman
ad69b2af83
chore: unify recorder & tracer uis ( #5791 )
2021-03-11 11:22:59 -08:00
Pavel Feldman
fea6669473
feat(trace): highlight action target ( #5776 )
2021-03-10 11:43:26 -08:00
Pavel Feldman
1d6feb2ab8
fix(inspect): highlight on explore input change ( #5726 )
2021-03-09 07:44:10 -08:00
Pavel Feldman
1a94ea5f6c
chore: refactor trace viewer to reuse snapshot storage ( #5756 )
2021-03-08 19:49:57 -08:00
Dmitry Gozman
b3561e6c41
feat(chromium): bump to 857950 ( #5742 )
2021-03-05 18:09:38 -08:00
Yury Semikhatsky
976f35aaf7
fix: update codegen to produce set* instead of with* ( #5738 )
2021-03-05 14:05:48 -08:00
Pavel Feldman
2af8b8ac74
chore: inspector snapshot nits ( #5676 )
2021-03-03 22:25:34 -08:00
Pavel Feldman
d3eff50386
feat(java): implement codegen ( #5692 )
2021-03-03 14:32:09 -08:00
Dmitry Gozman
d87522f2e6
fix(text selector): revert quoted match to match by text nodes only ( #5690 )
2021-03-03 10:51:10 -08:00
Dmitry Gozman
e4d33f56f4
fix(click): do not retarget from label to control when clicking ( #5683 )
...
And in other carefully considered cases.
2021-03-02 17:29:03 -08:00
Dmitry Gozman
ff243f1af5
fix(addInitScript): make it work on new pages without navigations ( #5675 )
2021-03-02 16:03:48 -08:00
Yury Semikhatsky
2cdb6b49cd
fix(inspector): inlcude sdkLang in the error ( #5682 )
2021-03-02 12:16:04 -08:00
Yury Semikhatsky
1a0ccc1383
feat(webkit): bump to 1443 ( #5665 )
2021-03-02 09:15:07 -08:00