Dmitry Gozman
7f6171579b
feat(rpc): use headers array in the protocol ( #2959 )
2020-07-15 13:21:21 -07:00
Dmitry Gozman
1b84ec9023
fix(binding): dispatch binding after the page has been initialized ( #2938 )
...
... but not after it was closed.
2020-07-14 13:34:49 -07:00
Pavel Feldman
c89c30e333
fix(popup): do not report frameless pages ( #2910 )
2020-07-10 13:15:39 -07:00
Yury Semikhatsky
b93e0994bc
browser(webkit, firefox): bump versions ( #2866 )
2020-07-08 17:10:33 -07:00
Dmitry Gozman
db3439d411
chore: introduce DocumentInfo ( #2765 )
...
It encapsulates documentId and request.
2020-07-06 15:58:27 -07:00
Dmitry Gozman
ac2185a9d9
test: update http credentials tests ( #2806 )
2020-07-06 11:28:07 -07:00
Pavel Feldman
2540805bf2
chore(rpc): misc serializer improvements ( #2832 )
2020-07-03 18:04:08 -07:00
Dmitry Gozman
19abc9bd9f
fix(dialogs): let click timeout, log information about dialogs ( #2781 )
...
We should not stall selector actions because of dialogs
and properly timeout instead. For this, we should not await
the handle.dispose() call because it will never happen
while dialog is shown.
Also, log information about dialogs to make it easier to debug.
2020-07-01 22:10:37 -07:00
Dmitry Gozman
9d6eaadba7
fix(navigation): ensure that goBack/goForward work with file urls ( #2792 )
2020-07-01 19:17:27 -07:00
Dmitry Gozman
5c4751d5dd
chore: generate protocol during browser roll ( #2719 )
...
We now commit protocol.ts files during the roll.
New utils/roll_browser.js helps with that.
This makes our installation very shallow:
- build installer;
- download browsers.
2020-07-01 15:22:29 -07:00
Andrey Lushnikov
55a07dbf4d
fix: follow-up with offline comments on implementation of deprecation ( #2770 )
...
This moves all extra deprecation messages from vendor implementations
into a single vendor-neutral land.
2020-06-30 11:02:12 -07:00
Pavel Feldman
3a7d629c61
chore(rpc): pass more network tests ( #2762 )
2020-06-29 16:37:38 -07:00
Andrey Lushnikov
0963c1979e
chore: deprecate method context.setHTTPCredentials() ( #2763 )
...
This will start emitting deprecation warning once
`context.setHTTPCredentials` is called.
2020-06-29 16:37:01 -07:00
Dmitry Gozman
38236b4f29
fix(close): ensure close() can be called twice ( #2744 )
...
... without any exceptions.
2020-06-29 16:26:32 -07:00
Pavel Feldman
71618a9e2b
chore(rpc): implement input, a11y, console ( #2722 )
2020-06-25 18:01:18 -07:00
Pavel Feldman
bc3050776e
chore: prepare library types for rpc ( #2706 )
2020-06-25 08:30:56 -07:00
Dmitry Gozman
39ce35e154
fix(errors): strict error handling around element operations ( #2567 )
...
- Gave all possible dom errors distinct names, and throw them on the node side.
- Separated errors into FatalDOMError and RetargetableDOMError.
Fatal errors are unrecoverable. Retargetable errors
could be resolved by requerying the selector.
- This exposed a number of unhandled 'notconnected' cases.
- Added helper functions to handle errors and ensure TypeScript catches
unhandled ones.
2020-06-24 15:12:17 -07:00
Pavel Feldman
fca514d74e
chore: move non-trivial types out of types.ts ( #2680 )
2020-06-23 14:51:06 -07:00
Joel Einbinder
9000ccb3b2
fix(click): don't timeout when innerWidth is modified ( #2669 )
...
We were evaluating `innerWidth` in the main context, where it could be modified.
2020-06-22 14:03:31 -07:00
Joel Einbinder
b88fabab13
test: add another test for browserContext.addInitScript ( #2285 )
2020-06-18 12:27:48 -07:00
Dmitry Gozman
f9633ea9b7
fix(scrollIntoView): ensure similar behavior across browsers, handle errors ( #2599 )
2020-06-17 10:48:07 -07:00
Pavel Feldman
c220fc7f46
chore(logs): rework logs for simplicity ( #2592 )
2020-06-16 17:11:19 -07:00
Dmitry Gozman
d4c466868b
chore: explicitly plumb various errors through the retries ( #2554 )
...
We are about to have more errors, so explicit plumbing helps with visibility.
2020-06-12 14:59:26 -07:00
Pavel Feldman
894826dec0
chore: form the debug script for authoring hints / helpers ( #2551 )
2020-06-11 18:18:33 -07:00
Dmitry Gozman
80705ff5e9
chore: simplify logging a bit ( #2512 )
...
This merges a few classes and stops inheriting from InnerLogger.
2020-06-09 16:11:17 -07:00
Pavel Feldman
fb058ffe0d
feat(proxy): allow specifying proxy ( #2485 )
2020-06-05 13:50:15 -07:00
Dmitry Gozman
c08da50bb3
chore: introduce session.sendMayFail to ease error logging ( #2480 )
2020-06-05 07:50:26 -07:00
Dmitry Gozman
d5c992e1db
chore: unify evaluations across browsers even more ( #2459 )
...
This moves all the logic around UtilityScript to javascript.ts.
Also uncovers a bug in WebKit where we cannot returnByValue after navigation.
2020-06-03 17:50:16 -07:00
Dmitry Gozman
8e6375f532
chore: reduce the number of evaluate methods, improve types ( #2454 )
...
Types can now handle non-trivial tuples with handles inside.
2020-06-03 13:22:05 -07:00
Dmitry Gozman
de0bbd3031
chore: remove page pause support ( #2431 )
2020-06-01 11:14:16 -07:00
Andrey Lushnikov
7a785ac268
fix: properly rewrite error message ( #2392 )
...
Error message is included in error's stack, so we should
re-write stack as well.
Fixes #2373
2020-05-28 16:33:31 -07:00
Andrey Lushnikov
7981e4e3da
fix: support event source type in firefox ( #2390 )
...
References #2189
2020-05-28 14:38:47 -07:00
Pavel Feldman
6620008dcb
chore: follow up to address evaluation review comments ( #2380 )
2020-05-27 22:19:05 -07:00
Dmitry Gozman
ece4789165
feat(debug): expose playwright object in console ( #2365 )
...
- playwright.$ and playwright.$$ to query elements;
- playwright.inspect to reveal an element;
- playwright.clear to remove highlight.
2020-05-27 22:16:54 -07:00
Pavel Feldman
e168fddac8
fix(evaluate): consistently serialize json values ( #2377 )
2020-05-27 17:19:05 -07:00
Dmitry Gozman
8f0f32b5e6
chore: move debug-related code to src/debug ( #2309 )
2020-05-26 14:08:32 -07:00
Dmitry Gozman
e2972ad5ba
feat(click): retry when the element it outside of the viewport ( #2330 )
...
The element might get animated into the viewport.
2020-05-22 11:15:57 -07:00
Pavel Feldman
5ee6494032
feat(evaluate): return user-readable error from evaluate ( #2329 )
2020-05-21 16:00:55 -07:00
Dmitry Gozman
aae3f1e75d
feat(default context): support selected options for default context ( #2177 )
2020-05-21 15:13:16 -07:00
Pavel Feldman
f9b437a49e
chore: pull common functionality into the BrowserTypeBase ( #2312 )
2020-05-20 16:30:04 -07:00
Pavel Feldman
aa0d844c76
chore: introduce utility script for evaluate helpers ( #2306 )
2020-05-20 15:55:33 -07:00
Dmitry Gozman
8957c86837
feat(debug): add source maps to evaluates in debug mode ( #2267 )
...
When PLAYWRIGHT_DEBUG_UI is set, we try to find the source
of the function in the current file and source map it.
2020-05-19 08:40:45 -07:00
Pavel Feldman
2bd427ad1d
feat(exposeBinding): a more powerful exposeFunction with source attribution ( #2263 )
2020-05-18 14:28:06 -07:00
Pavel Feldman
99b7aaace8
chore: refactor injected script harness ( #2259 )
2020-05-15 15:21:49 -07:00
Dmitry Gozman
e8e761f77f
chore: use internal BrowserOptions to unify browsers ( #2230 )
2020-05-14 13:22:33 -07:00
Dmitry Gozman
650d73445c
fix(actions): do not wait for the created popups ( #2219 )
...
Since we are recommending Promise.all pattern anyway, this special
logic just adds to the possibility of timeout if something goes wrong.
For example, Firefox sometimes send Page.willOpenNewWindowAsynchronously
later than the new target arrives and input action just hangs.
2020-05-13 17:20:33 -07:00
Pavel Feldman
f63ea3ffd2
feat(downloads): expose suggested filename ( #2062 )
2020-05-12 19:23:08 -07:00
Dmitry Gozman
28845e5ccc
feat(firefox): bump and use context setters ( #2194 )
2020-05-12 15:13:48 -07:00
Dmitry Gozman
ae8d97cdf9
feat(persistent context): ensure initial about:blank ( #2161 )
...
We declare only the initial about:blank to be a supported usecase, so that
we can support options for the default context in the future.
2020-05-10 15:23:53 -07:00
Pavel Feldman
f6210ae996
fix(webkit): click moving targets on windows ( #2101 )
2020-05-04 16:30:19 -07:00