1390 Commits

Author SHA1 Message Date
Pavel Feldman
1596b53da2
test(adb): fix browser tests (#4700) 2020-12-13 22:33:00 -08:00
Pavel Feldman
f89dcc7ba7
feat(adb): implement push (#4697) 2020-12-13 22:00:37 -08:00
Pavel Feldman
844b2c8f93
chore(adb): lint the driver (#4696) 2020-12-13 09:35:28 -08:00
Pavel Feldman
ad5309ca6b
feat(adb): make shell return binary (#4695) 2020-12-13 08:33:35 -08:00
Pavel Feldman
7c89ec051a
feat(adb): expose a11y tree (#4694) 2020-12-13 08:14:32 -08:00
Max Schmitt
1b7fb7d56a
feat(android): expose installAPK(path) and ADB socket (#4689) 2020-12-12 09:36:38 -08:00
Pavel Feldman
6cc695d92a
test(adb): fix the adb tests (#4691) 2020-12-12 01:18:32 -08:00
Pavel Feldman
aa1b546bd0
chore(android): respect timeout, add build script (#4690) 2020-12-11 23:35:25 -08:00
Pavel Feldman
f20518f252
fix(har): do not complain about a lot of listeners (#4675) 2020-12-11 23:15:36 -08:00
Andrey Lushnikov
765b07781c
feat: start downloading arm64 Chromium builds (#4681) 2020-12-10 21:09:03 -08:00
Pavel Feldman
616df7d2f4
fix(adb): minor fixes (#4678) 2020-12-10 16:37:18 -08:00
Dmitry Gozman
495085cbb2
fix(chromium): make interception work with dedicated workers (#4658) 2020-12-10 15:04:57 -08:00
Dmitry Gozman
b9c959768c
feat(selectors): optimize old->new conversion for css (#4672) 2020-12-10 15:03:02 -08:00
Dmitry Gozman
12dc04a304
feat(selectors): optimize old->new selectors conversion for text (#4671) 2020-12-10 13:53:19 -08:00
Dmitry Gozman
c8e9b0542b
feat(selectors): disable proximity selectors (#4659)
These are not ready for prime time yet.
2020-12-10 10:04:10 -08:00
Pavel Feldman
8fc49c98fa
feat(adb): support webviews (#4657) 2020-12-09 17:15:24 -08:00
Dmitry Gozman
b67e022111
feat(selectors): update new text selector (#4654)
We now default to `text` that does substring case-insensitive match
with normalized whitespace. `text-is` matches the whole string.
`matches-text` is renamed to `text-matches`.
2020-12-09 16:05:51 -08:00
Pavel Feldman
aacd8e633c
chore: expose adb devices and actions (#4647) 2020-12-09 15:06:57 -08:00
Dmitry Gozman
ab44d682ca
feat(selectors): remove index for now, add documentation (#4640) 2020-12-09 13:08:37 -08:00
Andrey Lushnikov
1d90d7a925
feat: fix browser installation on mac 11.0-arm64 (#4652) 2020-12-09 09:54:37 -08:00
Andrey Lushnikov
bc0af57ad3
feat: support download of native WebKit build for Apple M1 (#4648) 2020-12-09 09:04:32 -08:00
Dmitry Gozman
1060fce005
feat(selectors): explicit list of custom functions (#4629)
When parsing CSS, we assume everything is a valid CSS function,
unless it is in the list of custom functions. This way we'll parse
future CSS functions automatically.
2020-12-08 09:38:43 -08:00
Dmitry Gozman
be16ce4bd2
feat(errors): append recent browser logs when browser disconnects (#4625) 2020-12-08 09:35:28 -08:00
Joel Einbinder
ea833daa89
chore: fix internal binding (#4598) 2020-12-08 08:38:29 -08:00
Dmitry Gozman
1e754a4d80
feat(selectors): proximity selectors (#4614)
This includes 'left-of', 'right-of', 'above', 'below', 'near' and 'within'.
2020-12-07 16:07:47 -08:00
Dmitry Gozman
c36f5fa33a
feat(chromium): roll to 833159 (#4626) 2020-12-07 15:55:22 -08:00
Dmitry Gozman
18b565a969
feat(selectors): correctly work in large DOM (#4628)
This adds a test, fixes a bunch of call stack issues and
improves performance in some places.
2020-12-07 15:51:44 -08:00
Dmitry Gozman
1e0ab79f9a
feat(selectors): add visible and index engines (#4595) 2020-12-06 15:03:36 -08:00
Dmitry Gozman
8218a71a9b
feat(selectors): add more tests for css selectors (#4596) 2020-12-04 16:12:59 -08:00
Dmitry Gozman
49a3f943b6
feat(selectors): switch to the new engine (#4589)
We leave old implementation under the boolean flag,
just in case we need a quick revert.
2020-12-04 06:51:18 -08:00
Pavel Feldman
2452d07ff7
docs: generate method signatures in docs (#4590) 2020-12-03 22:28:11 -08:00
Dmitry Gozman
016925cd16
feat(selectors): implement builtin selectors in new evaluator (#4579) 2020-12-03 14:10:40 -08:00
Dmitry Gozman
3121de403b
test: remove tests for SelectorEngine.create (#4580)
We are not going to keep this functionality on arbitrary engines.
2020-12-03 14:10:26 -08:00
Pavel Feldman
7e30669eb0
fix(binding): catch binding resolution against the closed page (#4583) 2020-12-03 10:51:59 -08:00
Dmitry Gozman
3d6194e8a1
feat(selectors): introduce css evaluator (#4573)
Not used for production yet.
2020-12-02 14:46:19 -08:00
Dmitry Gozman
52ae218bfc
fix(fill): allow filling more input types (#4563)
This includes invalid types that are no recognized by the browser.
2020-12-02 14:43:41 -08:00
Joel Einbinder
3624e3e315
chore: add internal method for utility context bindings (#4566)
* internal binding extracted from dnd patch

* refactor it into the page

* dgozman comments 1
2020-12-02 13:43:16 -08:00
Dmitry Gozman
a45532fd82
feat(selectors): update css parser (#4565)
This change requires string arguments to be quoted,
for example `:text("foo")` works but `:text(foo)` does not.
2020-12-02 08:16:02 -08:00
Dmitry Gozman
e98aceb981
feat(selectors): introduce css parser (#4522)
It is not used for anything just yet.
2020-11-30 16:31:40 -08:00
Dmitry Gozman
84dc441a9e
feat(trace): record traces when PW_TRACE_DIR is set (#4545)
PW_TRACE_DIR points to a directory that Playwright can
put trace files and resources into.
This does not enable video recording, although it might
in the future.
2020-11-30 15:25:07 -08:00
Dmitry Gozman
884edbb3ee
fix(channels): only send protocol methods to connection (#4493)
When using 'domain' module, it calls various EventEmitter methods
like 'listenerCount' that we do not expect. To avoid this problem
in the future, we validate the method name before sending it over
the protocol connection.
2020-11-26 07:33:09 -08:00
Andrey Lushnikov
f916c98081
chore: update WebKit version to 14.1 (#4515)
Safari Technology Preview now reports WebKit 14.1
2020-11-23 16:21:42 -08:00
Dmitry Gozman
e9060dd68a
fix(launchServer): wait for the server to start before taking its address (#4513)
This is easily triggered by launching from a cluster's worker.
2020-11-23 15:23:31 -08:00
Pavel Feldman
e72d9a4185
chore: add websocket connection mode (#4510) 2020-11-20 15:19:39 -08:00
Pavel Feldman
a0587949a5
feat(chromium): roll to r828656 (#4503) 2020-11-20 08:10:27 -08:00
Dmitry Gozman
aea106b28e
chore: simplify server screencast code (#4501)
Currently, we always throw from FrameSession._stopScreencast
when not running with video, and immediately catch it in
CRPage.didClose (thanks to debugger to point that).

Overall, we have code prepared for start/stop API, which
we never did, so it makes sense to simplify code a bit,
and throw if something goes wrong.
2020-11-19 19:26:53 -08:00
Dmitry Gozman
5e6eed0d87
fix(frames): do not start network idle timer after detach (#4502)
This fixes a common flaky error on the bots:
```
Error: Cannot find object to emit "loadstate": Frame@f5b80c8c318c5471a1e6af552866e981
```
2020-11-19 19:20:53 -08:00
Dmitry Gozman
09f9a35198
fix(protocol): rename websocket error event to socketerror (#4495)
This is to avoid special handling of error events in node.
2020-11-19 12:09:42 -08:00
Yury Semikhatsky
a877c24f05
fix(route): throw on attempt to fulfill with redirect in WebKit (#4449) 2020-11-17 16:56:04 -08:00
Dmitry Gozman
38fadcaded
fix(chromium): use frameDetached reason (#4468)
This fixes the local -> remote frame swap when
Page.frameDetached arrives before Target.attachedToTarget.

Instead of error-prone logic we do currently, new CDP exposes
frame detach reason that we can use.
2020-11-17 10:24:13 -08:00