Dmitry Gozman
3e05d8e9fa
feat(tracing): introduce _reset() and _export() ( #7974 )
...
`tracing._export({ path })` exports current tracing state into a file
and does not require tracing to be stopped.
`tracing._reset()` resets current tracing state, but keeps resources
around so they can be referenced in the future snapshots. Does not stop.
The usage pattern is:
```js
await tracing.start({ screenshots: true, snapshots: true });
// ...
await tracing._reset();
// Do stuff, it will all be in the export below.
await tracing._export({ path });
// ...
await tracing.stop();
```
2021-08-03 16:08:06 -07:00
Max Schmitt
2236d74f3f
chore: locator code style nits ( #7972 )
2021-08-03 13:32:39 -07:00
Pavel Feldman
5803035c1b
feat(test-runner): introduce steps ( #7952 )
2021-08-02 17:17:20 -07:00
Pavel Feldman
af30d267b6
feat(test-runner): experiemental expect plumbing ( #7926 )
2021-07-30 16:07:02 -07:00
Pavel Feldman
2c095294c5
feat(locators): introduce allTextContents, allInnerTexts ( #7920 )
2021-07-29 14:09:35 -07:00
Pavel Feldman
446d3f1018
chore: update locator docs, make it not force-visible ( #7888 )
2021-07-28 13:30:30 -07:00
Pavel Feldman
49e9f8c15e
feat(expect): add text and true matchers ( #7873 )
2021-07-28 12:07:11 -07:00
Pavel Feldman
b8dc0b9156
feat(expect): implement toMatchText ( #7871 )
2021-07-27 20:26:12 -07:00
Pavel Feldman
cc43f9339f
feat(locators): implement last,nth ( #7870 )
2021-07-27 15:58:18 -07:00
Pavel Feldman
b9aad5eb86
chore: move locators to strict selectors ( #7866 )
2021-07-27 15:27:36 -07:00
Pavel Feldman
0a6ae11da1
feat(strict): introduce strict mode ( #7851 )
2021-07-26 22:00:23 -07:00
Pavel Feldman
827fb80465
feat(locator): implement element locators ( #7808 )
2021-07-22 21:37:20 -07:00
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