Max Schmitt
acdc531efc
chore: migrate connect/overCDP to options instead of params ( #7606 )
2021-07-22 16:55:23 +02:00
Joel Einbinder
56ada374df
feat(dragAndDrop): page.dragAndDrop ( #6910 )
2021-07-19 12:42:55 -05:00
Dmitry Gozman
d1170b30fc
Revert "api: remove timeout option from isVisible and isHidden methods ( #7414 )" ( #7600 )
...
This reverts commit 9f71c96740 .
2021-07-14 10:46:00 +02:00
Max Schmitt
767e22c6b2
fix(network): process last inserted routes first in request interception ( #7585 )
2021-07-13 20:22:01 +02:00
Max Schmitt
371aa3dab2
feat: add browser.newContext({ baseUrl }) ( #7409 )
2021-07-06 21:16:37 +02:00
Max Schmitt
b846ddda04
feat(download): introduce Download.cancel ( #7462 )
2021-07-06 09:38:50 +02:00
Dmitry Gozman
9f71c96740
api: remove timeout option from isVisible and isHidden methods ( #7414 )
...
It is unused and confusing.
2021-07-01 13:30:16 -07:00
Max Schmitt
027fc4c0b4
chore: hide request interception for 1.13 ( #7425 )
2021-07-01 18:33:47 +02:00
Pavel Feldman
f43b4efbc9
fix(trace-viewer): include waitFor* in trace viewer ( #7413 )
2021-06-30 17:56:48 -07:00
Pavel Feldman
a8d48a1a48
chore: remove hard-coded wrapApi names ( #7347 )
2021-06-28 13:27:38 -07:00
Max Schmitt
9f9201420a
fix(websockets): filter for text and binary frames ( #7360 )
2021-06-28 21:23:29 +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
Yury Semikhatsky
c0cd2d4579
feat: response interception ( #7122 )
2021-06-18 11:04:48 -07:00
Dmitry Gozman
388c6f5196
feature(test runner): capture error and pending calls when timing out ( #7193 )
2021-06-17 15:09:38 -07:00
Ross Wollman
219e5138be
feat(response): expose connection details in API ( #7150 )
2021-06-17 13:04:55 -07:00
Dmitry Gozman
060f7ffa92
fix: specify the right apiName for artifact errors ( #7119 )
...
This produces errors like `download.saveAs: <error>` instead of `.saveAs: <error>`.
Drive-by: fix the flaky test.
2021-06-14 16:41:53 -07:00
Peng-Yu Chen
5f6d4a7b73
feat(download): adding a new Download._cancel method ( #6236 )
2021-06-12 22:23:22 +02:00
Max Schmitt
064150f8dd
chore: use fs.promises API instead of promisify ( #6871 )
2021-06-03 18:55:33 +02:00
Max Schmitt
e91e49e533
feat(port-forwarding): add playwrightclient support ( #6786 )
2021-06-02 23:35:17 +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
Pavel Feldman
d28f45b6ee
api(tracing): export -> stop({path}) ( #6802 )
2021-06-02 10:04:25 -07:00
Joel Einbinder
2951f4b065
chore(evaluate): remove private _evaluateInUtility methods ( #6815 )
2021-06-01 08:36:16 -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
59d591bce6
chore(port-forwarding): validate forwarded ports on the client side ( #6756 )
2021-05-26 16:51:38 +02:00
Max Schmitt
3f43db5cc4
feat(browserServer): forward local ports ( #6375 )
2021-05-25 17:11:32 +02:00
Max Schmitt
ba29e99ace
feat: added reduced motion media query emulation ( #6646 )
2021-05-22 01:56:09 +02:00
Joel Einbinder
754ee13c93
feat(electron): accept BrowserContextOptions in electron.launch ( #6621 )
2021-05-19 06:56:29 -07:00
Yury Semikhatsky
475a417dfc
fix: compute payload mime type on server ( #6647 )
2021-05-18 18:30:20 -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
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
cc43b0d23f
chore: remove storybook ( #6549 )
2021-05-12 19:55:49 -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
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
Pavel Feldman
1a859ebe68
chore(electron): fix node/browser race conditions, expose browser window asynchronously ( #6381 )
2021-05-02 22:45:06 -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
Yury Semikhatsky
fd31ea8b0d
feat: support extra http headers in browserType.connect() ( #6301 )
2021-04-23 14:52:27 -07:00
Yury Semikhatsky
3a93c419f8
chore: remove stack from WaitForEventInfo ( #6259 )
2021-04-22 10:05:37 -07:00
Max Schmitt
7053ac9097
chore(types): add channel to launchServer ( #6256 )
2021-04-21 21:23:08 +02:00
Dmitry Gozman
243ede5dfb
feat(waitForEvent): allow async predicate ( #6201 )
...
We await the predicate now. For synchronous predicates,
nothing should change becase the await will finish before
the next protocol message arrives (thanks to `makeWaitForNextTask`).
2021-04-19 10:32:51 -07:00
Pavel Feldman
90913160c4
chore: render wait for on trace timeline ( #6222 )
2021-04-18 20:02:34 -07:00
Dmitry Gozman
fff1f3d45c
chore: simplify remote connection protocol ( #6164 )
...
This changes the root object from RemoteBrowser to Playwright,
similar to local driver connection. This way, any remote connection
gets a Playwright object.
This also starts reusing PlaywrightServer class, and introduces
`cli run-server` hidden command that runs ws server on the
specified port.
Previous structure:
```
RemoteBrowser
- browser (using ConnectedBrowser for remote-specific behavior)
- selectors (special instance for this remote connection)
```
New structure:
```
Playwright
- ...
- selectors (special instance for this remote connection)
- preLaunchedBrowser (using ConnectedBrowser for remote-specific behavior)
```
2021-04-12 11:14:54 -07:00
Joel Einbinder
63d0d466e3
feat(cdp): replace wsEndpoint with protocol neutral endpointURL ( #6141 )
2021-04-08 14:55:28 -07:00
Joel Einbinder
779355ad51
feat(types): make the template on BrowserType optional ( #6142 )
...
This makes it much nicer to use `BrowserType` because it no longer has a template.
Technically a breaking change because of the rare edge case where someone used their own non-browser type inside the template, but I don't consider that intended behavior and think this is fine.
2021-04-08 10:27:24 -07:00
Yury Semikhatsky
561cb23e8d
fix: dispatch popup event on the client end ( #6044 )
2021-04-02 11:15:07 -07:00