Pavel Feldman
0678b6575f
chore(watch): allow toggling browser ( #20738 )
2023-02-08 08:36:02 -08:00
Andrey Lushnikov
303c5998f8
feat: release "comparator" option from experiment ( #20720 )
...
The option defines a comparator to be used to compare images.
Possible values are `"pixelmatch"` and `"ssim-cie94"`.
Note: This reverts commit 8167f8bf54 .
2023-02-07 08:51:48 -08:00
Dmitry Gozman
d458e84f5b
feat(route): match pattern on the server side ( #20410 )
...
This avoids client-side roundtrip for requests that are not handled by
any route.
Fixes #19607 .
2023-01-27 10:43:19 -08:00
Andrey Lushnikov
1b8b20dc25
chore: drop locator.viewportRatio() method ( #20131 )
...
As per API review discussion, we'd like to refrain from
exposing this method.
2023-01-19 08:46:45 -08:00
Pavel Feldman
d1c161ce99
chore: merge the util exports ( #20110 )
2023-01-13 13:50:38 -08:00
Andrey Lushnikov
3883799d68
feat: introduce locator.viewportRatio ( #19761 )
...
References #8740
2023-01-05 10:49:32 -08:00
Dmitry Gozman
83418aa8ab
fix(socks): cleanup event listeners upon disconnect ( #19671 )
...
References #19661 .
2022-12-22 17:15:51 -08:00
Dmitry Gozman
412c11db20
fix(reuse): make sure all dispose and close sequences are executed ( #19572 )
...
- When disposing recursively, only the root dispatcher received
`_dispose()` call, while some dispatchers need `_onDispose()` to clean
things up.
- When reusing the context, pages should be notified with `_onClose()`
so that all client-side waiting promises could reject.
Fixes #19216 .
2022-12-19 15:54:53 -08:00
Andrey Lushnikov
8167f8bf54
chore: hide "comparator" option from documentation and types ( #19441 )
2022-12-14 09:58:19 -08:00
Dmitry Gozman
256e9fd443
feat(connect): allow exposing local network to the remote browser (experimental) ( #19372 )
...
`connectOptions: { _exposeNetwork: '*' | 'localhost' }`
References #19287 .
2022-12-09 11:16:29 -08:00
Pavel Feldman
5ac426b3d5
chore: expose utility script to inner evaluates ( #19147 )
2022-11-29 16:57:11 -08:00
Dmitry Gozman
43a6bf4d45
fix(inspector): support custom test id attribute ( #18996 )
...
Fixes #18959 .
2022-11-29 11:43:47 -08:00
Pavel Feldman
ac25fdd74b
chore: fix ff tests with new events mode ( #18708 )
2022-11-10 12:59:27 -08:00
Pavel Feldman
ca2e7ef199
chore: report paused signal to the debug controller clients ( #18701 )
2022-11-10 12:15:29 -08:00
Pavel Feldman
c25e67a0e7
chore: conditionally dispatch network events ( #18687 )
2022-11-09 21:10:57 -08:00
Pavel Feldman
0355d8618f
chore: use provided value for the generated test id ( #18631 )
2022-11-08 12:04:43 -08:00
Andrey Lushnikov
8538f61a72
feat(containers): implement global network tethering for playwright server ( #17719 )
...
This patch implements a new mode of network tethering for Playwright
server & its clients.
With this patch:
- playwright server could be launched with the
`--browser-proxy-mode=tether` flag to engage in the new mode
- a new type of client, "Network Tethering Client" can connect to the
server to provide network traffic to the browsers
- all clients that connect to the server with the `x-playwright-proxy:
*` header will get traffic from the "Network Tethering Client"
This patch also adds an environment variable
`PW_OWNED_BY_TETHER_CLIENT`. With this env, playwright server will
auto-close when the network tethering client disconnects. It will also
auto-close if the network client does not connect to the server in the
first 10 seconds of the server existence. This way we can ensure that
`npx playwright docker start` blocks terminal & controls the lifetime of
the started container.
2022-11-03 13:47:51 -07:00
Pavel Feldman
67c9624924
chore: send structured codegen info to the debug controller ( #18491 )
2022-11-01 18:02:14 -07:00
Pavel Feldman
a7f5f2d7a1
chore: allow not overriding media when creating context ( #18413 )
2022-10-31 09:09:52 -07:00
Max Schmitt
e25537f941
feat(android): add AndroidDevice.close event ( #18306 )
2022-10-25 18:18:14 -07:00
Pavel Feldman
37250cde17
chore: switch to the new debug controller harness ( #18308 )
2022-10-25 09:55:20 -07:00
Dmitry Gozman
329b3eadb4
feat: locator.blur() ( #18303 )
...
Note this is only available on Locator. Fixes #10724 .
2022-10-25 06:10:40 -07:00
Max Schmitt
805312b722
feat(android): add Android.{launchServer,connect} ( #18263 )
...
Fixes https://github.com/microsoft/playwright/issues/17538
2022-10-24 17:23:11 -07:00
Pavel Feldman
d3948d1308
chore: enable debug controller testing ( #18270 )
2022-10-24 16:19:58 -07:00
Pavel Feldman
3c0832a0d9
chore: brush up the debug controller api ( #18262 )
2022-10-21 17:57:22 -07:00
Pavel Feldman
5b1e4e08a5
chore: detect browser reuse based on the connection headers ( #18230 )
2022-10-20 18:30:37 -07:00
Pavel Feldman
f2685cab95
chore: use api selectors in codegen hover ( #17855 )
2022-10-05 17:59:34 -07:00
Pavel Feldman
06e73b414f
chore: move connect utility into localUtils ( #17590 )
2022-09-27 13:05:06 -07:00
Andrey Lushnikov
6b4afbb8df
chore: support http protocol with browserType.connect() ( #17483 )
2022-09-22 11:59:58 -07:00
Pavel Feldman
cb10ef3c71
chore: rename reuseController to debugController ( #17520 )
2022-09-21 15:35:52 -07:00
Pavel Feldman
df143031e7
chore: move protocol and trace types into the top-level packages ( #17486 )
2022-09-20 18:41:51 -07:00
Pavel Feldman
3abbe0d850
chore: migrate codegen to controller events ( #17450 )
2022-09-20 14:32:21 -07:00
Andrey Lushnikov
7019cc8b97
feat(docker): closeAllBrowsers command for reuseController ( #17383 )
2022-09-15 20:38:28 -07:00
Pavel Feldman
872bcc9734
chore: expose driver protocol on the pw object ( #17363 )
2022-09-15 15:53:18 -07:00
Pavel Feldman
f4b90e5cc8
chore: reparent network back to context ( #17023 )
2022-09-05 10:19:44 +02:00
Yury Semikhatsky
aaa28394cd
feat(trace): include url into route.fulfill call params ( #16934 )
2022-08-31 12:37:49 -07:00
Dmitry Gozman
fea8772d95
fix: emit load/domcontentloaded events as reported by the browser ( #16861 )
...
Instead of requiring all frames in the subtree to receive a particular
event, we rely on the browser's definition of load and DOMContentLoaded.
This changes logic in a few edge cases:
- Some browsers do not emit load event upon window.stop() at all.
- DOMContentLoaded does not wait for subframes, so they might not be
ready when passing `{ waitUntil: 'domcontentloaded' }`.
`networkidle` preserves the old logic.
2022-08-26 13:48:05 -07:00
Pavel Feldman
6319b14069
chore: dispatcher is a scope ( #16843 )
2022-08-26 09:30:27 -07:00
Pavel Feldman
a07a4a25a2
chore: make parent scope explicit ( #16819 )
2022-08-25 11:58:41 -07:00
Dmitry Gozman
2c1723b6f5
chore: avoid protocol calls on disposed context ( #16812 )
...
Otherwise, we always get a failing protocol message when closing a context.
2022-08-24 17:21:01 -07:00
Pavel Feldman
ba722a2580
fix(selectors): make them work in the browser reuse mode ( #16691 )
2022-08-19 13:48:33 -07:00
Pavel Feldman
5a79054544
feat(innerloop): allow reusing browsers over the remote connection ( #16065 )
2022-07-31 14:31:17 -07:00
Pavel Feldman
55cd3928b7
chore: reuse context in the innerloop mode ( #15719 )
2022-07-15 10:36:36 -07:00
Pavel Feldman
a198b6d753
chore: reparent context objects into the object ( #15689 )
2022-07-15 08:56:47 -07:00
Pavel Feldman
3939b9f36e
chore: migrate component testing to server-side page reuse ( #15477 )
2022-07-12 14:30:24 -07:00
Pavel Feldman
5fc637e44a
chore: experimental resetForReuse ( #15432 )
2022-07-11 13:10:08 -07:00
Pavel Feldman
f71b620de7
chore: unregister handlers when dispatcher goes ( #15425 )
2022-07-06 20:32:31 -07:00
Dmitry Gozman
4eccb89a79
chore: do not serialize buffers into base64 in local mode ( #15316 )
2022-07-05 08:58:34 -07:00
Ross Wollman
6cb3236acd
feat(chromium): Service Worker Network Instrumentation and Inspection ( #14716 )
...
Adds Chromium support for Service Worker Networking (interception/routing, Request/Response events, and HAR).
Resolves #1090 .
Depends on #14714 and #14714 .
Supercedes #14321 .
Follow up #14711 .
Landed upstream patches:
- https://chromium-review.googlesource.com/c/chromium/src/+/3510917
- https://chromium-review.googlesource.com/c/chromium/src/+/3526571
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3566669
- https://chromium-review.googlesource.com/c/chromium/src/+/3544685
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3610924
- https://chromium-review.googlesource.com/c/chromium/src/+/3689949
2022-07-01 12:49:43 -07:00
Dmitry Gozman
82032be368
chore(server): validate/convert protocol both ways ( #14811 )
...
Previously, we only validated/converted on the way to the server,
but not from the server.
Validating both ways catches issues earlier, and allows us to
perform automatic conversions, for example only converting
buffers to base64 when sending over wire.
2022-07-01 09:58:07 -07:00