Commit graph

705 commits

Author SHA1 Message Date
Arjun Attam 043ed975c1
docs: update limitations to reflect java bindings (#5086) 2021-01-21 18:42:21 +05:30
Pavel Feldman 45c33ae02f
docs: fix some 1.8 docs nits (#5078) 2021-01-20 16:06:26 -08:00
Pavel Feldman f10f170946
docs: add file chooser example, remove links to js samples (#5054) 2021-01-20 08:12:39 -08:00
Yury Semikhatsky 615954b285
fix(dom): make selectOption wait for options (#5036) 2021-01-19 11:27:05 -08:00
Dmitry Gozman 19acf998da
docs: minor updates to selectors.md (#5055) 2021-01-19 10:48:18 -08:00
Dmitry Gozman 0586c2554f feat(text selector): normalize whitespace for quoted match (#5049)
This changes quoted text selector like `text="Foo Bar"` to perform
normalized whitespace match.

Most of the time users want to match some string visible on the page,
and that always means normalized whitespace.

We keep the case sensitivity and full-string vs substring difference
between quoted and unquoted matches.
2021-01-19 09:30:34 -08:00
Pavel Feldman 9e3bd78649
docs: update selectors doc to be more like a guide (#5048) 2021-01-18 20:59:16 -08:00
Pavel Feldman 01fb3a6045
docs: extract handles, screenshots, videos docs (#5045) 2021-01-17 21:09:40 -08:00
Dmitry Gozman 17e953c2d8
chore: make generate_types not depend on the source (#5040)
The only dependency is a list of devices that we
can turn into a js file.
2021-01-17 12:09:20 -08:00
Pavel Feldman 1fc02e8823
docs: add dialogs and downloads docs (#5042) 2021-01-16 14:37:13 -08:00
Dmitry Gozman 2db02c9a05
docs(python): update installation docs (#5039) 2021-01-16 06:42:40 -08:00
Pavel Feldman e67d563798
docs: don't use lang suffix in the intro url (#5035) 2021-01-15 17:59:19 -08:00
Pavel Feldman 41e394bc22
docs: allow overriding return types (#5031) 2021-01-15 16:01:41 -08:00
Pavel Feldman 6e94c11034
docs: prepare docs for tabbed snippets (#5026) 2021-01-15 12:30:10 -08:00
Pavel Feldman 56ba0b3cd9
docs: brush up some python docs (#5027) 2021-01-15 09:12:47 -08:00
Pavel Feldman 7701176b0a
docs: allow lang-specific sh snippets (#5024) 2021-01-14 18:19:02 -08:00
Dmitry Gozman e85f278869
docs: more python docs and snippets (#5021) 2021-01-14 15:01:39 -08:00
Pavel Feldman 5dcb7bb290
docs: declare expect_navigation as returning Response (#5020) 2021-01-14 14:40:19 -08:00
Pavel Feldman 1648d23551
docs: add python snippets for api classes (follow up) (#5018) 2021-01-14 11:09:44 -08:00
Pavel Feldman 8354a91d0e
docs: add python snippets for api classes (#5011) 2021-01-14 07:48:56 -08:00
Pavel Feldman 5408e26e02
docs: add python snippets for class Page (#5010) 2021-01-13 21:03:35 -08:00
Yury Semikhatsky df53cb2f83
docs: fix inline code quoting (#4992) 2021-01-13 08:56:57 -08:00
Pavel Feldman cac119f3bf
docs: python api review (#4986) 2021-01-12 12:14:27 -08:00
Dmitry Gozman d62b661cfa
docs: rename proximity selectors to position selectors (#4975) 2021-01-11 18:25:41 -08:00
Pavel Feldman cb6e4a6657
chore: update snippets in python docs (#4976) 2021-01-11 17:04:24 -08:00
Pavel Feldman 7a8214cd95
chore: prepare non-api docs for non-js variants (#4969) 2021-01-11 09:34:49 -08:00
Pavel Feldman 4dbbb47583
docs: document Python's expect_event methods (#4963) 2021-01-10 21:00:52 -08:00
Pavel Feldman e67d89747a
chore: update docs to cover python specifics (#4960) 2021-01-10 18:18:35 -08:00
Dmitry Gozman 5a2cfdbd47
api: add isChecked method (#4953)
This adds `{Page,Frame}.isChecked(selector)` and `ElementHandle.isChecked()` methods.

Useful to do assertions in tests:
```js
await page.click('text="Add TODO"');
expect(await page.isChecked('.item-done')).toBe(false);
```
2021-01-08 17:36:17 -08:00
Pavel Feldman 3b617b3709
docs: validate member links (#4955) 2021-01-08 16:36:52 -08:00
Pavel Feldman b7e0b1b393
docs: annotate evaluate(pageFunction) js-specific (#4954) 2021-01-08 16:17:54 -08:00
Pavel Feldman 114d586f07
chore: add python aliases (#4949) 2021-01-08 15:00:14 -08:00
Dmitry Gozman 3f904056ee
api: add isVisible, isHidden, isEnabled, isDisabled and isEditable (#4915)
These methods are useful for verification in tests, e.g.
```js
expect(await page.isEnabled(':text("Remove All")')).toBe(false);
await page.click(':text("Add Item")');
expect(await page.isVisible('.item:text("new item")')).toBe(true);
expect(await page.isEnabled(':text("Remove All")')).toBe(true);
```
2021-01-08 12:27:54 -08:00
Dmitry Gozman 498f9a52c6
docs: update authentication guide to use storageState() api (#4948) 2021-01-08 12:24:10 -08:00
Dmitry Gozman d08cbc33a7
docs: brush up selector docs (#4939)
docs: brush up selector docs

- Remove duplication
- Move extensions block to ChromiumBrowser
- Remove accidental ":xpath" extension from css selectors
- Document :has and :is extensions
2021-01-08 10:59:24 -08:00
Pavel Feldman 97de9209a6
docs: move links into playwright.dev (#4947) 2021-01-08 09:12:54 -08:00
Max Schmitt 77bfcd2c74
chore: add some Python language snippets (#4933) 2021-01-08 08:39:33 -08:00
Ali Naqvi 07cb5f71e3
docs: Added Crystal port to showcase (#4945) 2021-01-08 06:04:39 -08:00
Dmitry Gozman 2072c61461
docs: add Java to the list of language ports (#4940) 2021-01-08 06:02:54 -08:00
Pavel Feldman 15c0a29526
docs: split nodejs and python links (#4942) 2021-01-07 23:37:53 -08:00
Pavel Feldman 54c06a1b45
chore: mark methods as js-only, add python-specific methods (#4938) 2021-01-07 16:12:25 -08:00
Pavel Feldman e56832b646
chore: language-specific members api (#4936) 2021-01-07 15:00:04 -08:00
Dmitry Gozman 8d649949c0
docs: move Go port to showcase (#4934)
playwright-go is an unofficial port, so we put it to a new section in showcase.
2021-01-07 14:54:09 -08:00
Dmitry Gozman eb9ea20511
feat(selectors): proximity selectors (#4923) 2021-01-07 14:12:59 -08:00
Pavel Feldman bdf12e32e4
docs: split api-body into classes (#4931) 2021-01-07 11:46:05 -08:00
Pavel Feldman 4cd989c653
docs: introduce deprecation annotation and any type (#4930) 2021-01-07 11:11:40 -08:00
Pavel Feldman 913f85249f
docs: make all links relative (#4926) 2021-01-06 20:02:51 -08:00
Pavel Feldman 2311c282d6
docs: pref docs to be language-specific (#4916) 2021-01-06 11:59:29 -08:00
Pavel Feldman b6cd385a67
docs: mark some paths as such (#4896) 2021-01-05 17:05:43 -08:00
Dmitry Gozman b00559bd53
docs: add save/load storage to cli docs (#4899) 2021-01-05 13:40:42 -08:00
Dmitry Gozman 35ecf69dd2
chore: fix lint (#4898) 2021-01-05 13:24:22 -08:00
Yury Semikhatsky 0f8d7ec0a6
docs: improve waitForElementState documentation (#4883) 2021-01-05 10:56:02 -08:00
Pavel Feldman 4996eacd5b
docs: split numbers into integers and floats (#4887) 2021-01-05 09:42:49 -08:00
Pavel Feldman 80f8a0fdf5
doc: further align docs w/ playwright.dev (3) (#4884) 2021-01-04 17:59:23 -08:00
Pavel Feldman 31ffeb32e3
doc: further align docs w/ playwright.dev (2) (#4871) 2021-01-04 13:50:29 -08:00
Pavel Feldman ae935a43d9
doc: further align docs w/ playwright.dev (#4866) 2021-01-03 08:47:29 -08:00
Pavel Feldman e0e836cb6e
doc: split classes into files (#4864) 2021-01-01 15:17:27 -08:00
Pavel Feldman ba291372e7
docs: generate all docs off docs-src (#4858) 2020-12-30 18:04:51 -08:00
Pavel Feldman a5bd415edc
doc: generate class toc as a part of the api generation (#4852) 2020-12-29 17:35:01 -08:00
Pavel Feldman 722db85e1c
doc: generator code health (2) (#4843) 2020-12-28 23:42:51 -08:00
Dmitry Gozman 7f8717f139
feat(cli): add docs (#4837)
feat(cli): add docs
2020-12-28 17:38:44 -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 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
Pavel Feldman 277d255fc3
chore: brush up md processing (#4819) 2020-12-23 19:35:43 -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
Pavel Feldman 2e220df7ac
docs: explicitly annotate methods and parameters (#4771) 2020-12-18 15:31:34 -08:00
Pavel Feldman d498b45005
docs: remove mentions of nodejs, promises and resolves (#4768) 2020-12-18 12:28:09 -08:00
Dmitry Gozman 355a58e616
feat(storage): accept path in save/load storage apis (#4714)
Also make Firefox accept `expires: -1` cookies.
2020-12-14 16:03:52 -08:00
Yury Semikhatsky 0b8f34e726
docs: rename aggregate parameter objects to params (#4715) 2020-12-14 15:27:02 -08:00
Andrey Lushnikov c5bb08c5f2
docs: remove outdated troubleshooting (#4706)
Most of the troubleshooting.md doc is not relevant any more:
- dependencies are maintained and helped with by launch doctor
- sandbox is disabled in Chromium by default

References #4683
2020-12-14 08:16:36 -08:00
Andrey Lushnikov 8d574a76bf
docs: update docker readme
References #4683
2020-12-14 08:11:05 -08:00
Pavel Feldman f20518f252
fix(har): do not complain about a lot of listeners (#4675) 2020-12-11 23:15:36 -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
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
Dmitry Gozman ab44d682ca
feat(selectors): remove index for now, add documentation (#4640) 2020-12-09 13:08:37 -08:00
Yury Semikhatsky 6c4d3b86f6
chore(docker): put browser deps instructions first (#4637) 2020-12-08 10:36:37 -08:00
Max Schmitt 71b7b488f4
chore: use Node.js 14 (new LTS) in Docker image (#4262)
Discussion / background: https://github.com/microsoft/playwright/pull/3642#issuecomment-686640755

Closes #4254
2020-12-06 18:24:27 -08:00
Pavel Feldman a3a31bc837
doc: add the mobile.md doc (#4612) 2020-12-05 21:19:22 -08:00
Pavel Feldman 1717cbd3d5
doc: describe return value as a part of method (#4608) 2020-12-05 15:29:16 -08:00
Pavel Feldman 96a1f79e96
docs: reformat api-body to allow multiline params documentation (#4604) 2020-12-04 18:05:35 -08:00
Pavel Feldman 150d778ca7
docs: disambiguate events (#4597) 2020-12-04 11:09:20 -08:00
Pavel Feldman 761b78efc0
docs: generate links based on the method names (#4593) 2020-12-04 09:03:33 -08:00
Westbrook Johnson 7213794a65
Correct typo in "emulateMedia" call example. (#4592) 2020-12-03 22:28:50 -08:00
Pavel Feldman 2452d07ff7
docs: generate method signatures in docs (#4590) 2020-12-03 22:28:11 -08:00
Pavel Feldman 0eb6f85617
docs: pretty-print api.md (#4588) 2020-12-03 18:05:36 -08:00
Pavel Feldman 5d47a9744c
docs: reformat template parameters (#4587) 2020-12-03 16:02:34 -08:00
Max Schmitt d2b7e0d1df
fix(types): add typed cb for Page.waitForResponse (#4575) 2020-12-03 09:20:53 -08:00
Pavel Feldman 95c502d274
docs: use templates to reuse documentation properties (#4578) 2020-12-03 09:11:48 -08:00
Pavel Feldman 1fa7e86ea9
docs: generate api.md (#4576) 2020-12-02 13:50:10 -08:00
Dmitry Gozman 8cc8b777d0
docs: fix auth example (#4528)
We should wait for selector instead of asserting it.
2020-11-25 11:32:46 -08:00
Dmitry Gozman 240d51f1d3
docs: improve boundingBox documentation (#4500)
Also add a test to verify it.
2020-11-19 13:55:14 -08:00
Darío Kondratiuk c1a5cd51b1
fix(docs): remove extra code in timing docs (#4466) 2020-11-17 09:58:38 -08:00
Yury Semikhatsky dfe3552b59
feat(route): support URL overrides in continue (#4438) 2020-11-16 09:59:00 -08:00
Pavel Feldman d20e56e197
feat(state): allow getting / setting context state (#4412) 2020-11-13 14:24:53 -08:00
Joel Einbinder d8837a8040
fix(docs): add tap to actionability (#4413) 2020-11-12 02:33:04 -08:00
Dmitry Gozman c384313058
feat(fill): allow filling based on the label selector (#4342)
This enables filling the input based on the connected label:

```html
<label for=target>Name</label><input id=target>
```

```js
await page.fill('text=Name', 'Alice');
```
2020-11-05 05:22:49 -08:00
Dmitry Gozman 1c39689dd6
api(videos): introduce a single recordVideo option bag (#4309)
api(videos): introduce a single recordVideo option bag

Currently contains `dir` and `size`, previously known as
`videosPath` and `videoSize`.
2020-11-02 19:42:05 -08:00
Pavel Feldman ac8ab1e1b5
feat(websocket): add WebSocket.waitForEvent and isClosed (#4301) 2020-11-02 14:09:58 -08:00