Pavel Feldman
739b64a09a
chore: render typed locators in the recorder ( #18162 )
2022-10-18 16:39:58 -07:00
Yury Semikhatsky
639b28db3b
fix: noWaitAfter option for hover ( #17856 )
...
Fixes https://github.com/microsoft/playwright/issues/17833
2022-10-07 12:43:48 -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
Pavel Feldman
cb10ef3c71
chore: rename reuseController to debugController ( #17520 )
2022-09-21 15:35:52 -07:00
Jérémy Lal
840a1f6436
chore: replace __proto__ by getPrototypeOf ( #17386 )
2022-09-20 19:01:12 -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
Vincenzo Gasparo
17b203affb
feat: added follow and redirect arguments to fetch ( #17033 )
2022-09-09 12:14:42 -07:00
Pavel Feldman
a07a4a25a2
chore: make parent scope explicit ( #16819 )
2022-08-25 11:58:41 -07:00
Pavel Feldman
737975bc7d
chore: expose hidehighlight from server ( #16387 )
2022-08-09 16:42:55 -07:00
Max Schmitt
1ca6635bb8
fix(cli): store trace/storage/har on SIGINT ( #16339 )
2022-08-09 00:13:38 +02:00
Pavel Feldman
8ed238843b
chore: allow inspecting element from server ( #16324 )
2022-08-05 19:34:57 -07:00
Dmitry Gozman
09461f8a76
fix(driver): make sure IpcTransport messages arrive in different tasks ( #15978 )
2022-07-26 18:42:02 -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
Dmitry Gozman
4eccb89a79
chore: do not serialize buffers into base64 in local mode ( #15316 )
2022-07-05 08:58:34 -07:00
Sean Doyle
ef5a56ce18
feat(evaluate): serialized URL instances ( #15023 )
...
Add support for returning [URL][] instances from `page.evaluate` calls.
Follow the patterns established by `Date` and `RegExp` serialization.
[URL]: https://developer.mozilla.org/en-US/docs/Web/API/URL
2022-07-05 17:53:02 +02: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
Pavel Feldman
6a8d835145
chore: allow updating har while routing ( #15197 )
2022-06-28 15:09:36 -07:00
Pavel Feldman
7bd72716f9
feat(har): introduce the slim mode ( #15053 )
2022-06-22 14:44:12 -07:00
Dmitry Gozman
6af6fab84a
fix(har): internal redirect in renderer-initiated navigations ( #15000 )
...
fix(har): internal redirect in renderer-initiated navigations
2022-06-21 11:01:01 -07:00
Pavel Feldman
eb87966441
feat(har): disambiguate requests by post data ( #14993 )
2022-06-20 14:14:40 -07:00
Pavel Feldman
920f1d52fc
chore: allow routing by uncompressed har ( #14987 )
2022-06-20 11:07:53 -07:00
Pavel Feldman
e5372c3421
chore: move har router into local utils ( #14967 )
2022-06-18 20:24:55 -07:00
Yury Semikhatsky
ed6b14f0f4
fix(har): restart redirected navigation ( #14939 )
2022-06-17 21:17:30 -07:00
Pavel Feldman
be64e9ce66
chore(har): attach resources for .zip hars ( #14938 )
2022-06-16 18:27:25 -07:00
Pavel Feldman
245c33a5d4
feat(har): allow storing content as separate files ( #14934 )
2022-06-16 16:33:32 -07:00
Dmitry Gozman
cdb862767f
fix(page): "load" event should fire before "waitForLoadState" resolves ( #14897 )
...
Currently, `loadstate` and `load` are two separate events in the protocol,
and are fired in this order. As a result, `waitForLoadState()` sometimes
resolves before the `'load'` event is fired, which is unexpected.
Also fixes a flaky test that assumed `load` event comes after `domcontentloaded`
for the empty page, which is not always a case in Chromium.
2022-06-16 09:35:53 -07:00
Yury Semikhatsky
259c8d64a5
feat: Page.routeFromHar ( #14870 )
2022-06-15 08:41:46 -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
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
Ross Wollman
85d03714d9
feat: add allow/block serviceWorkers option ( #14714 )
...
Adds cross-browser support for easily allowing/blocking Service Workers via a Context option.
Includes plumbing for Playwright Test's `use`.
Resolves #14522 .
Relates #1090 .
Supercedes #14321 .
2022-06-08 18:27:51 -04: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
Dmitry Gozman
d00efa0dfe
feat(expect): add ignoreCase option to toHaveText and toContainText ( #14534 )
2022-06-02 05:52:53 -07:00
Pavel Feldman
cf89a36181
chore: serialize circular objects ( #14045 )
2022-05-09 18:51:53 -07: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
Max Schmitt
4a3180aca9
chore: make Android host option configurable ( #13685 )
2022-04-21 22:16:42 +02:00
kaivean
d65263f151
feat(android): allow getting webviews by socket name ( #13248 )
2022-04-08 20:52:16 +02:00
Pavel Feldman
a3c02222bf
chore: use utils via index export (4) ( #13404 )
2022-04-07 14:36:13 -07:00
Pavel Feldman
40d5e3a3c9
chore: use utils via index export (3) ( #13403 )
2022-04-07 13:55:44 -07:00
Pavel Feldman
5ae2017a5b
chore: always import type ( #13365 )
2022-04-06 14:57:14 -07:00
Pavel Feldman
1c3db811f5
chore: move to folder-based deps lists ( #13361 )
2022-04-06 14:40:19 -07:00
Pavel Feldman
1bebc28aed
chore: reset page/context for reuse in component tests ( #13264 )
2022-04-04 12:39:43 -07:00
kaivean
5d2e8918d8
feat(android): add androidDevice.options.omitDriverInstall ( #13249 )
2022-04-02 16:00:38 -07:00
Dmitry Gozman
a200fe3528
feat(screenshot): rename "size" option to "scale" ( #13254 )
...
Drive-by: fix `caret` handling in `toHaveScreenshot`.
2022-04-01 12:28:40 -07:00
Yury Semikhatsky
7d7fe3c618
fix(route): remove cors option, compare origin ( #13231 )
2022-03-31 19:21:21 -07:00
Andrey Lushnikov
a9989852d5
feat(vrt): new option "caret" for taking screenshots ( #13164 )
...
This has two values:
- `"hide"` to hide input caret for taking screenshot
- `"initial"` to keep caret behavior unchanged
Defaults to `"hide"`.
Fixes #12643
2022-03-29 17:48:13 -07:00
Pavel Feldman
1961959dcb
chore: migrate injected scripts to esbuild ( #13143 )
2022-03-28 23:10:17 -07:00
Pavel Feldman
8758cf8cbf
chore: migrate html reporter to vite ( #13116 )
2022-03-28 18:21:19 -07:00
Yury Semikhatsky
5734c18ef8
feat(route): add cors header in route.fulfill ( #12943 )
2022-03-25 14:56:57 -07:00
Yury Semikhatsky
a8d80621b2
feat(chromium): large file uploads ( #12860 )
2022-03-18 09:00:52 -07:00
Pavel Feldman
c7d6f96328
chore: disambiguate internal flags ( #12866 )
2022-03-17 18:27:33 -07:00
Andrey Lushnikov
e83549e8a0
fix: support all commong screenshot options in toHaveScreenshot ( #12670 )
...
This patch adds support for all common options in
`expect.toHaveScreenshot`.
2022-03-10 18:36:20 -08:00
Andrey Lushnikov
42765804bc
chore: add "allow" as a default value for animations. ( #12663 )
2022-03-10 17:15:36 -08:00
Andrey Lushnikov
49e66c7f08
feat(screenshot): introduce new "fonts" option for screenshots ( #12661 )
...
This option will wait for webfonts to load before taking screenshots.
2022-03-10 16:54:36 -08:00
Dmitry Gozman
a388bb2302
feat(screenshot): size:'css'|'device' option ( #12634 )
...
With this experimental option, screenshot dimensions are in CSS pixels,
not physical device pixels, effectively ignoring the device scale factor.
2022-03-10 13:07:10 -08:00
Karan Shah
fd1a1a2b1c
feat(android): Adding custom port parameter to connect to different adb server port ( #12220 )
2022-03-04 20:27:25 +01:00
Andrey Lushnikov
b45c788a33
fix(disable-animations): rename boolean to enum ( #12503 )
...
Enums are more flexible in the long run since they let us easily
extend API.
References #12441
2022-03-04 11:02:59 -08:00
Andrey Lushnikov
279e579097
chore: address pixelCount and pixelRatio review comments ( #12501 )
...
- documentation fixes
- rename pixelCount to maxDiffPixels
- rename pixelRatio to maxDiffPixelRatio
2022-03-03 23:17:31 -08:00
Max Schmitt
e0e6b66cbe
chore(android): align android context options with mixin ( #12401 )
2022-03-01 18:11:38 +01:00
Andrey Lushnikov
a0cf33bbb0
fix: beautiful toHaveScreenshot in tracing ( #12422 )
2022-02-28 23:30:00 -08:00
Andrey Lushnikov
396d920145
feat(test-runner): implement expect(pageOrLocator).toHaveScreenshot ( #12242 )
...
Fixes #9938
2022-02-28 12:25:59 -08:00
Andrey Lushnikov
8d94ed134c
fix: add snapshots for page and elementHandle screenshots ( #12411 )
...
Fixes #12280
2022-02-28 11:52:54 -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
Dmitry Gozman
5a0445b8da
feat(remote): let client enable/disable sock proxy ( #12086 )
2022-02-14 15:10:58 -08:00
Dmitry Gozman
fb00991a78
chore: intercept socks proxy in the driver ( #12021 )
2022-02-13 14:03:47 -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
Pavel Feldman
1215057ca1
chore: use ipc transport for out-of-process driver ( #11826 )
2022-02-02 21:26:45 -08:00
Yury Semikhatsky
ab9d5a0dc4
chore(tracing): add tracing to APIRequestContext ( #11502 )
2022-01-22 11:25:13 -08:00
Pavel Feldman
a12e76b52b
chore: implement locator._highlight / playwright._hideHighlight ( #11339 )
2022-01-12 07:37:48 -08:00
Pavel Feldman
dc07fa6da6
fix(locator.count): do not touch main workd when computing count ( #11256 )
2022-01-07 15:52:14 -08:00
Yury Semikhatsky
fcccac0c08
fix(tracing): return early if no trace was produced ( #10953 )
...
This fixes [page/page-set-input-files.spec.ts](https://devops.aslushnikov.com/flakiness2.html#filter_spec=page%2Fpage-set-input-files.spec.ts&commits=50&test_parameter_filters=%5B%5B%22browserName%22%2C%5B%5B%22electron%22%2C%22exclude%22%5D%5D%5D%2C%5B%22platform%22%2C%5B%5B%22Android%22%2C%22exclude%22%5D%5D%5D%2C%5B%22video%22%2C%5B%5Btrue%2C%22exclude%22%5D%5D%5D%2C%5B%22trace%22%2C%5B%5Btrue%2C%22include%22%5D%5D%5D%5D×tamp=1639590204582 ) failures.
2021-12-15 17:19:00 -08:00
Max Schmitt
4fd8a40129
chore: fix wrong aligned protocol YAML ( #10947 )
2021-12-15 11:12:13 -08:00
Yury Semikhatsky
a2a8967bed
chore: create trace.zip in driver for local runs ( #10868 )
2021-12-13 14:40:29 -08:00
Yury Semikhatsky
aaa8b07770
chore(tracing): collect source names on server ( #10862 )
2021-12-10 14:07:22 -08:00
Yury Semikhatsky
976af162b0
feat(tracing): pack sources to trace on the driver side ( #10815 )
2021-12-09 17:21:17 -08:00
Max Schmitt
300a7f9b44
Revert "chore: validate client/server version match for remote connections ( #10542 )" ( #10766 )
...
This reverts commit 41070a2f55 .
2021-12-07 14:45:05 -08:00
Yury Semikhatsky
d66b7aab3b
feat(expext): toBeOK for APIResponse ( #10596 )
2021-11-30 18:12:19 -08:00
Max Schmitt
41070a2f55
chore: validate client/server version match for remote connections ( #10542 )
...
* chore: validate client/server version match on connect
* only validate major and minor
2021-11-30 08:36:00 +01:00
Joel Einbinder
d70e37de80
feat: locator.dragTo ( #10287 )
2021-11-22 20:27:26 +01:00
Yury Semikhatsky
9c23a78c32
chore: throw instead of returning error from fetch ( #10451 )
2021-11-19 20:32:29 -08:00
Yury Semikhatsky
0ca10da166
fix: compute file field mime type on the server ( #10394 )
2021-11-17 18:12:26 -08:00
Pavel Feldman
70ede0d987
chore: use channel traits ( #10389 )
2021-11-17 15:26:01 -08:00
Max Schmitt
c5b19351f6
chore: rename Fetch Request/Response to API ( #10087 )
2021-11-05 16:27:49 +01:00
Yury Semikhatsky
5abb5d74ea
chore: delete legacy response interception code ( #9995 )
2021-11-02 17:48:38 -07:00
Pavel Feldman
6a30c90590
feat(trace-viewer): render wall time for each action ( #9982 )
2021-11-02 12:16:12 -07:00
Pavel Feldman
56ca3a18f5
feat(trace-viewer): show test name ( #9957 )
2021-11-01 21:23:35 -07:00
Yury Semikhatsky
13cc266b37
feat: add "commit" to possible waitUntil options ( #9892 )
2021-11-01 17:12:19 -07:00
Pavel Feldman
bd505ed07c
fix(tracing): fall back to protocol naming in ports w/o apiName ( #9896 )
2021-10-30 12:26:38 -07:00
Pavel Feldman
2e4722d460
test: migrate to upstream fixtures ( #9835 )
2021-10-28 08:31:30 -07:00
Pavel Feldman
5451808df1
chore: append sources to traces ( #9736 )
2021-10-25 18:56:57 -07:00
Dmitry Gozman
4ce765c3ae
feat(trace): highlight targets for accessors and expects ( #9527 )
2021-10-15 15:07:15 -07:00
Dmitry Gozman
64a3099655
chore(expect): simplify expect implementation ( #9459 )
2021-10-13 08:56:57 -07:00
Yury Semikhatsky
82ff85b106
fix(matchers): make isNot required in protocol ( #9436 )
2021-10-12 09:01:46 -07:00