Commit graph

196 commits

Author SHA1 Message Date
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
Pavel Feldman ec2b6a7d8b
test: add a glob test (#6911) 2021-06-04 13:33:45 -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
Joel Einbinder e37c078ea6
test(nonStallingRawEvaluateInExistingMainContext): fix broken test (#6908) 2021-06-04 09:33:44 -07:00
Dmitry Gozman 21b00d0bcc
test: roll to folio@0.4.0-alpha27 (#6897) 2021-06-03 22:06:59 -07:00
Yury Semikhatsky fb0004c22c
feat(webkit): bump to 1492 (#6887) 2021-06-03 16:21:23 -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
Dmitry Gozman 375ceca950
test: disable chromium headed tracing test (#6878) 2021-06-03 14:33:33 -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 c09726b023
test: add tests for port-forwarding via playwrightclient (#6860)q 2021-06-03 02:19:01 +02:00
Karan Shah 254ec155eb
feat(user-agent): Adding User-Agent in headers while making connection to browser (#6813) 2021-06-02 11:36:58 -07:00
Yury Semikhatsky 2fde9bc13f
fix(webkit): use new awaitPromise parameter instead of separate command (#6852) 2021-06-02 10:04:47 -07:00
Pavel Feldman d28f45b6ee
api(tracing): export -> stop({path}) (#6802) 2021-06-02 10:04:25 -07:00
Andrey Lushnikov 831a1c846f
feat(firefox-stable): roll Firefox-Stable to Firefox v89 (#6833)
References #6817
2021-06-02 08:34:03 -07:00
Yury Semikhatsky 1020d3d329
feat(webkit): bump to 1488 (#6826) 2021-06-01 23:09:58 -07:00
Andrey Lushnikov 251c7d8df1
test: properly disable electron test (#6839)
This test is failing since ee7e38c60d
Dashboard: https://devops.aslushnikov.com/flakiness2.html#browser=electron&platform=Ubuntu+20.04&timestamp=1622444340000

P.S. this is a follow-up to a1106e5d4e -
turns out `it.fail` is still failing in case of a timeout.
2021-06-01 23:09:07 -07:00
Andrey Lushnikov a1106e5d4e
test: disable test that fails on Electron (#6837)
This test is failing since ee7e38c60d
Dashboard: https://devops.aslushnikov.com/flakiness2.html#browser=electron&platform=Ubuntu+20.04&timestamp=1622444340000
2021-06-01 19:04:24 -07:00
Joel Einbinder 2951f4b065
chore(evaluate): remove private _evaluateInUtility methods (#6815) 2021-06-01 08:36:16 -07:00
Yury Semikhatsky 7f0d817afd
test: side effects of context.storageState() (#6793) 2021-05-28 18:20:49 -07:00
Dmitry Gozman 8fefac9b8c
test: roll to folio@0.4.0-alpha21 (#6789) 2021-05-28 17:03:18 -07:00
Yury Semikhatsky d2ab1951fd
feat(firefox): bump to 1268 (#6779) 2021-05-28 09:16:42 -07:00
Yury Semikhatsky 3b220e50ee
test: add failing test for eval with overridden Array.toJSON (#6766) 2021-05-26 16:02:21 -07:00
Pavel Feldman 95bd4b315c
chore: fix codegen to emit new C# api (#6763) 2021-05-26 15:44:40 -07:00
Dmitry Gozman d36bffb9a9
fix(connect): respect timeout in all scenarios (#6762)
Drive-by: fix console error in test arising from bad usage
of test websocket server in `connect()` calls.
2021-05-26 15:18:52 -07:00
Max Schmitt 1778e117f7
fix(port-forwarding): on WebKit Win (#6745) 2021-05-26 16:51:55 +02: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 c9f35fb811
test: revert partly 8770c64 (#6740) 2021-05-25 17:10:43 +02:00
Andrey Lushnikov 30e5681b82
chore: report correct browser channel for Android tests (#6733) 2021-05-24 19:06:46 -07:00
Yury Semikhatsky 05e5ed25a8
test: revert .only (#6728) 2021-05-24 16:05:21 -07:00
Yury Semikhatsky 8770c64601
browser(webkit): fix mac compilation after latest roll (#6727) 2021-05-24 14:56:10 -07:00
Yury Semikhatsky 2e8d65e978
test: skip falky raw headers test in Chromium (#6721) 2021-05-24 11:03:31 -07:00
Dmitry Gozman 48b48828cc
test: roll to folio@0.4.0-alpha17 (#6712) 2021-05-23 16:21:18 -07: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
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
Dmitry Gozman 57f3a53a7e
test: roll to folio@0.4.0-alpha16 (#6656) 2021-05-20 09:51:09 -07:00
Dmitry Gozman 8cc103f43e
test: unflake sync predicate test (#6654)
Ensure that requests come in order by awaiting them.
2021-05-19 09:05:32 -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
Dmitry Gozman e804d16dce
test: unflake webview tests (#6644)
We close webviews after each test, for the safe `webViews().length` assertions.
2021-05-18 20:22:00 -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
Dmitry Gozman a728a89264
test: unskip a few tests previously skipped with channels (#6609) 2021-05-17 15:01:17 -07:00
Dmitry Gozman 68a15fc04b
fix(tests): force a new worker for channels.spec (#6616)
It has some global-state expectations that do not play nicely
with reusing Browser between test files.
2021-05-17 14:56:39 -07:00
Yury Semikhatsky c23a06c96e
test: mark "should produce screencast frames fit" as flaky on wk linux (#6617) 2021-05-17 12:06:18 -07:00
Dmitry Gozman 4c3bd11820
test: roll to folio@0.4.0-alpha14 (#6602) 2021-05-16 19:58:26 -07:00
Dmitry Gozman 5aafae39bb
test: enable download url test on webkit (#6588)
Fixed by the recent bump to 1478.
2021-05-16 15:12:34 -07:00
Dmitry Gozman 5e84eade85
test: roll to folio@0.4.0-alpha13 (#6570) 2021-05-15 07:42:35 -07:00
Max Schmitt cff3bd0422
test: mark android test as failing (#6575) 2021-05-15 07:41:35 -07:00
Joel Einbinder 7bbb91f265
test(downloads): add passing test for downloads and interception (#6586) 2021-05-14 13:28:42 -07:00
Pavel Feldman d7c6720ce7
chore: include context options into the trace (#6572) 2021-05-13 22:36:34 -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
Sébastien Règne e87fbfcc1d
feat(download): add Page in Download (#6501) 2021-05-13 14:18:21 -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
Dmitry Gozman 8b6b894dd8
test: prepare test to use options as passed (#6557)
This changes `headful` to `headless` to align with launch options.
Also replaces `isChromium` and friends with `browserName`.
2021-05-13 10:22:23 -07:00
Yury Semikhatsky 41df6607b0
fix: enable util world bindings in firefox (#6546) 2021-05-12 15:19:27 -07:00
Max Schmitt dc7f7f9a8c
fix(chromium): handle backgroundPages() onClose (#6541) 2021-05-12 22:15:04 +02: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
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
Joel Einbinder 2ea465bc82
test(chromium): add failing test for connecting to a browser with pages (#6502) 2021-05-11 13:04:21 -07:00
Joel Einbinder 6c821a08b3
test(network): adding failing post data test for chromium and webkit (#6484) 2021-05-11 11:46:29 -07:00
Dmitry Gozman b01ccc282f
test: roll to folio@0.4.0-alpha11 (#6496) 2021-05-11 06:40:06 -07:00
Dmitry Gozman 00ec43974d
test: fix android test failure (#6487) 2021-05-10 11:07:56 -07:00
Dmitry Gozman 845054d28b
feat(firefox): bump to 1257 and 1247 (stable) (#6476)
This fixes addBinding on pages with CSP.
2021-05-10 08:41:18 -07:00
Dmitry Gozman 76e409637a
test: simplify more tests (#6471) 2021-05-09 17:47:20 -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
Dmitry Gozman 2d4538c23d
test: cleanup tests and configs after last folio update (#6463) 2021-05-08 17:45:04 -07:00
Pavel Feldman a9523d9d8f
feat(ff): roll to 1256/1246 (#6466) 2021-05-08 11:35:36 -07:00
Dmitry Gozman 573327b7b5
test: roll to folio@0.4.0-alpha8 (#6451) 2021-05-07 15:25:55 -07:00
Andrey Lushnikov 7c85846f26
test: remove "headless should be able to read cookies by headful" (#6444)
With the `storageState` API that was introduced some time ago, there's
no more need to re-use profile directories in Chromium.
2021-05-06 11:40:56 -07:00
Dmitry Gozman b29b7df47e
fix(connect): handle disconnect in various situations (#6276)
There are a few ways for `connect()` to finish:
- `Browser.close()` from the client side.
- Browser on the server side did exit (e.g. crashed).
- Connection was dropped by either of the sides.

We reduce all the cases to the last one by dropping the
connection when client wants calls `Browser.close()` or
server-side browser exits.

In all these cases we should properly cleanup on the server side,
and ensure that all promises reject on the client side.
2021-05-06 09:34:06 -07:00
Dmitry Gozman 217cbe3e21
test: cleanup bad usages of pageTest (#6430) 2021-05-06 07:08:22 -07:00
Dmitry Gozman 9433cae4fe
test: move all page tests to a subdirectory (#6427) 2021-05-05 19:10: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
Yury Semikhatsky 86df1df8e7
test: update download test expectations (#6394) 2021-05-04 11:59:39 -07:00
Andrey Lushnikov ce7a72b217
test: disable certain screencast tests on Firefox. (#6396)
These were regressed by 934bc672f7

Tests link: https://devops.aslushnikov.com/flakiness2.html#commits=20&timestamp=1620085865166
2021-05-04 00:45:36 -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
Dmitry Gozman de21a94b75
test: roll to folio@0.4.0-alpha6 (#6366) 2021-04-30 13:26:13 -07:00
Joel Einbinder 6ce56dde49
test(accessibility): remove and update tests for new chromium (#6372) 2021-04-30 10:19:37 -07:00
Andrey Lushnikov 5e8d9d20b5
feat(firefox): roll Firefox to r1248 @ v89.0b2 (#6281) 2021-04-30 09:36:54 -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
Dmitry Gozman 11882cdda7
test: roll to folio@0.4.0-alpha3 (#6262) 2021-04-29 11:11:32 -07:00
Pavel Feldman 434f474ce8
chore(evaluate): implement non-stalling evaluate (#6354) 2021-04-29 09:28:19 -07:00
Yury Semikhatsky 560bea5f8d
fix: do not close stream until all bytes have been read (#6351) 2021-04-28 14:54:51 -07:00
Pavel Feldman 922d9ce1fb
chore(tracing): fix some of the start/stop scenarios (#6337) 2021-04-27 11:07:07 -07:00
Pavel Feldman be27f47309
feat(tracing): introduce context.tracing, allow exporting trace (#6313) 2021-04-24 20:39:48 -07:00