Commit graph

3587 commits

Author SHA1 Message Date
Dmitry Gozman a1232b6980
chore: simplify and remove some scripts (#4838) 2020-12-28 16:19:28 -08:00
Dmitry Gozman 068d8612a7
feat(cli): make run-driver work (#4836) 2020-12-28 15:44:24 -08:00
Dmitry Gozman 293a7bdd4c
feat(cli): bring in codegen and tests (#4815) 2020-12-28 14:50:12 -08:00
Dmitry Gozman 4c11f5d885
test: remove hacky requires, use imports instead (#4835)
Since our client implements our types, we can now import
implementation in tests without type conflicts.
2020-12-28 11:14:33 -08:00
Dmitry Gozman 94077e0e74
chore: remove JS types checker, rely on typescript (#4831)
chore: remove JS types checker, rely on typescript

We keep checking that all methods are documented, and no extra methods
are documented, but rely on typescript for everything else.
2020-12-28 10:54:47 -08:00
Pavel Feldman a446792c18
docs: generate api.md off documentation model (#4832) 2020-12-28 07:03:09 -08:00
Pavel Feldman fee7dd7cc1
chore: nit type validator fix (#4830) 2020-12-27 08:42:22 -08:00
Dmitry Gozman 905f28c339
feat(types): simplify android and electron types (#4829)
These now follow the scheme for regular types.
2020-12-26 20:25:18 -08:00
Dmitry Gozman 34c1b338be
feat(types): make our client classes implement public types (#4817)
This patch:
- introduces non-exported but used in api/impl struct types (e.g. Point);
- makes all client classes implement respective public api interface.

Pros:
- Typescript is now responsible for type checking.
  We can remove our doclint checker (not removed yet).
- Electron and Android types can be defined in the same way
  (this is not implemented yet).
- We can move most of the type structs like Point to the public api
  and make some of them available.

Cons:
- Any cons?
2020-12-26 17:05:57 -08:00
Pavel Feldman dc25173ae3
chore(docs): fix crlf (#4828) 2020-12-26 17:05:44 -08:00
Pavel Feldman 2cb5770183
docs: move playwright module into api-body.md (#4827) 2020-12-26 15:33:29 -08:00
Pavel Feldman 15cdfd1cc1
chore: generate types, api.json off md rather than html (#4825) 2020-12-26 14:31:41 -08:00
Dmitry Gozman 9dd982c508
chore: commit generated types to the repository (#4826)
Also check them during `npm run lint` and regenerate during `npm run watch`.
2020-12-26 13:52:05 -08:00
Pavel Feldman 277d255fc3
chore: brush up md processing (#4819) 2020-12-23 19:35:43 -08:00
Dmitry Gozman 225e65e076
feat(cli): share console api between cli and debug mode (#4807) 2020-12-23 14:15:16 -08:00
Dmitry Gozman f709e2300c
feat(cli): bring selector generator into playwright (#4795)
Also remove unused `SelectorEngine.create` function and add tests.
2020-12-23 12:44:47 -08:00
Yury Semikhatsky 8d4c46ac19
fix: throw if quality=0 is passed for png screenshot (#4812) 2020-12-23 09:53:14 -08:00
Joel Einbinder e7ee426202
yury comments (#4639) 2020-12-23 08:04:59 -08:00
Yury Semikhatsky eb50baff2b
browser(firefox): bump to 1224 (#4809) 2020-12-22 17:53:19 -08:00
Dmitry Gozman d40afa2fbf
feat(cli): first few cli commands (#4773)
This sets up cli capabilities and brings in a few commands from playwright-cli.
2020-12-22 14:54:13 -08:00
Dmitry Gozman cc32217e84
chore: fix check-deps (#4801) 2020-12-22 11:01:25 -08:00
Yury Semikhatsky a7f4c69a60
docs: fix browser version generation script (#4797) 2020-12-21 18:09:55 -08:00
Joel Einbinder ff2a1f1bd0
fix(webkit): properly detect arm64 on apple silicon (#4783) 2020-12-21 16:37:55 -08:00
Yury Semikhatsky 73edf13ad6
browser(webkit): roll to 12-21 (#4794) 2020-12-21 16:07:45 -08:00
Yury Semikhatsky afaf13a025
docs: add missing GEN:webkit-version (#4770) 2020-12-21 16:07:13 -08:00
Yury Semikhatsky b3e7838582
browser(firefox): clear AuthCache when setting context proxy (#4793) 2020-12-21 15:54:15 -08:00
Yury Semikhatsky 3eef2548e4
test: failing test for firefox per-context proxy credentials (#4790) 2020-12-21 14:39:11 -08:00
Yury Semikhatsky 779c5fff16
chore(installer): remove stale backlinks silently (#4786) 2020-12-21 12:31:19 -08:00
Yury Semikhatsky 7bbda4370d
chore: improve error reporting when browse download fails (#4787) 2020-12-21 12:31:01 -08:00
Yury Semikhatsky 94ee48f8ce
fix: allow proxy credentials with empty password (#4779) 2020-12-21 11:47:13 -08:00
Andrey Lushnikov ee417791d6
chore: roll FFMPEG to r1004 (#4760) 2020-12-21 09:57:09 -08:00
Dmitry Gozman fc30c29a19
test: add a test for custom engine that does not respect root (#4777) 2020-12-19 12:21:20 -08:00
Pavel Feldman 2e220df7ac
docs: explicitly annotate methods and parameters (#4771) 2020-12-18 15:31:34 -08:00
Max Schmitt c81ec9ccca
test: fixed failing test on video bot (#4747) 2020-12-18 14:46:12 -08:00
Pavel Feldman d498b45005
docs: remove mentions of nodejs, promises and resolves (#4768) 2020-12-18 12:28:09 -08:00
Andrey Lushnikov 761bd78879
browser(firefox): fix build on MacOS (#4758) 2020-12-17 21:02:01 -08:00
Andrey Lushnikov b56dd7deb1
devops: kick ffmpeg build (#4757)
Try building ffmpeg on github self-hosted runner
2020-12-17 18:30:04 -08:00
Pavel Feldman 774eb53980
fix(adb): force page scale factor update on connection (#4755) 2020-12-17 18:28:49 -08:00
Yury Semikhatsky a721ba5a8a
devops: give unique names to test shards (#4756) 2020-12-17 18:11:31 -08:00
Yury Semikhatsky 3219057ab0
fix(webkit): support utf-8 characters in postData, bump to 1407 (#4744) 2020-12-17 18:09:06 -08:00
Dmitry Gozman 5a1c9f1fe1
fix(selector): bring back v1 query logic (#4754)
It turned out that v1 query logic is not shimmable by v2 logic.
This change brings back v1 query logic for `>>` combinator.
2020-12-17 17:01:46 -08:00
Dmitry Gozman 9a0023cc03
fix(selectors): text engine after capture matches scope (#4749) 2020-12-17 06:19:43 -08:00
Dmitry Gozman 35533b15c1
fix(scroll): scroll from under the sticky header (#4641)
When element with position:sticky covers some part of
the scroll container, we could fail to scroll from under it
to perform an action. To fight this, we can try different
scroll alignments and scroll to the top/bottom/center
in the attempt to scroll away from sticky header/footer/sidebar.
2020-12-16 15:29:42 -08:00
Yury Semikhatsky e4658ea9c0
browser(webkit): base64 encode request.postData (#4743) 2020-12-16 14:35:05 -08:00
Dmitry Gozman 7385b31f13
fix(driver): stop sending protocol messages after disconnect (#4688)
When the client only closes the input pipe, we are still
sending protocol messages over the output pipe. This could
probably lead to some errors, e.g. write buffer being full.
2020-12-16 14:21:59 -08:00
Yury Semikhatsky 94f5002ae4
browser(webkit): install patchelf (required by generate-bundle) (#4741) 2020-12-16 12:53:28 -08:00
Yury Semikhatsky b014fa1855
browser(webkit): roll to 12-16 (#4739) 2020-12-16 09:19:27 -08:00
Max Schmitt 23a6e4dfe9
chore: restructure and optimise test files (#4736) 2020-12-16 07:28:44 -08:00
Yury Semikhatsky 50b0b47993
browser(webkit): mac build fix after roll to 12-15 (#4733) 2020-12-15 23:07:34 -08:00
Max Schmitt 2c409b040e
fix(android): leaking adb socket connections (#4730) 2020-12-15 20:15:25 -08:00