Commit Graph

649 Commits

Author SHA1 Message Date
Andrey Lushnikov
fe32d38414
feat: move browser fonts to tools section (#7443)
This way we not only fix Docker images, but also fix `npx playwright
install-deps` in virtual machines.
2021-07-02 02:09:31 -07:00
Andrey Lushnikov
a6421c690b
devops: add missing fonts to docker (#7435)
These fonts are taken from Selenium docker image:

77db00ced0/NodeBase/Dockerfile (L57-L89)

Fixes #6907
2021-07-01 23:29:33 -07:00
Pavel Feldman
e19d509c32
feat(icon): add an icon for trace viewer (#7430) 2021-07-01 17:05:14 -07:00
Pavel Feldman
8fb0454488
fix(trace-viewer): fall back to stable channels (#7429) 2021-07-01 15:26:55 -07: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
Pavel Feldman
f43b4efbc9
fix(trace-viewer): include waitFor* in trace viewer (#7413) 2021-06-30 17:56:48 -07:00
Pavel Feldman
b1d66d54f0
fix(tracing): explicitly list actions to snapshot (#7376) 2021-06-29 15:28:15 -07:00
Max Schmitt
9f9201420a
fix(websockets): filter for text and binary frames (#7360) 2021-06-28 21:23:29 +02:00
Joel Einbinder
1a6d46d844
chore(typescript): compile with babel, lint everything with tsc (#6872) 2021-06-23 18:01:48 -07:00
Max Schmitt
b3cc683e6b
chore hide Download._cancel (#7282) 2021-06-23 23:20:36 +02:00
Max Schmitt
07fc8cc777
fix(driver): fix compatibility when folder contains space (#7240) 2021-06-21 10:18:09 -07:00
Joel Einbinder
4a04a939a9
fix(docker): use node 14 not node 16 (#7212) 2021-06-17 16:14:10 -07:00
Max Schmitt
36c5395d2d
chore: rebase documentation and markdown classes from docs (#7172) 2021-06-17 08:19:24 +02:00
Andrey Lushnikov
a3e4185b2f
chore: nuke 'webkit-technology-preview' experiment (#7164)
It proved to be unmaintainable due to the following reasons:
- determining upstream branch for the technology preview was a manual
and tedious process
- once determined, actual Safari Technology Preview occasionally
diverted from the branch
2021-06-15 23:58:30 -07:00
Andrey Lushnikov
ec68b31dc4
feat: support chromium-with-symbols channel (#7135)
References #7130
2021-06-15 17:57:31 -07:00
Dmitry Gozman
b625a04adc
types: move exported objects from index.d.ts to overrides.d.ts (#7152)
This way we generate these types right away, without duplicating them everywhere.
2021-06-15 15:06:18 -07:00
Pavel Feldman
9550106e1d
fix(test-runner): video: 'retain-on-failure' leaves empty folders behind (#7125) 2021-06-15 10:06:49 -07:00
Anže Vodovnik
66f9aeee17
chore: use .Core namespace for dotnet (#7103) 2021-06-15 11:47:24 +02:00
Max Schmitt
64b23040dc
chore: use new links in generated types (#7102) 2021-06-14 17:13:28 +02:00
Peng-Yu Chen
5f6d4a7b73
feat(download): adding a new Download._cancel method (#6236) 2021-06-12 22:23:22 +02:00
Pavel Feldman
6ec70bc0ac
api(dotnet): embrace nullable references (#6964) 2021-06-08 12:20:35 -07:00
Andrey Lushnikov
53d68bdb38
feat: firefox is stable by default (#6953)
This patch:
- rolls Firefox to v1269 which is now a firefox-stable build.
- introduces a new channel, `firefox-beta`, for our internal needs.

Fixes #6817
2021-06-08 09:34:17 -07:00
Dmitry Gozman
f745bf1fbc
chore: bring in folio source (#6923)
- Source now lives at `src/test`.
- Former folio tests live at `tests/playwright-test`.
- We use `src/test/internal.ts` that exposes base test without
  Playwright fixtures for most tests (to avoid modifications for now).
- Test types live in `types/testFoo.d.ts`.
- Stable test runner is installed to `tests/config/test-runner` during `npm install`.
- All deps including test-only are now listed in `package.json`.
  Non-test deps must also be listed in `build_package.js` to get included.
2021-06-06 17:09:53 -07:00
Dmitry Gozman
69b734629c
fix: various test-related fixes (#6916)
- Closing inspector window resumes the script.
- Replace FOLIO_WORKER_INDEX with TEST_WORKER_INDEX.
- Account for `@playwright/test` stack traces.
2021-06-04 18:43:54 -07:00
Max Schmitt
064150f8dd
chore: use fs.promises API instead of promisify (#6871) 2021-06-03 18:55:33 +02:00
Dmitry Gozman
3de3a88930
feat(test): introduce npx playwright test (#6816) 2021-06-03 08:07:55 -07:00
Dmitry Gozman
33c2f6c31e
chore: do not bundle api.json and protocol.yml (#6841)
These are only needed for the driver, so bundle them
in the driver explicitly.
2021-06-02 14:01:05 -07:00
Max Schmitt
79b244a2f4
chore: use bash instead of sh in code blocks (#6847) 2021-06-02 18:23:06 +02:00
Andrey Lushnikov
cb4adb1446
feat: install chrome-beta via cli (#6831)
This patch starts introduces `npx playwright install chrome-beta`
command and switches our Chrome Beta tests to it.
2021-06-01 18:26:12 -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
Pavel Feldman
bb0e196b15
api(dotnet): specialize waitForEvent (#6761) 2021-05-26 15:11:31 -07:00
Pavel Feldman
93648aafc0
chore: generate dotnet initializers (#6755) 2021-05-26 08:04:45 -07:00
Andrey Lushnikov
c60974d922
feat: do not rely on chocolatey to install Google Chrome Beta (#6735) 2021-05-25 17:32:08 -07:00
Pavel Feldman
24a2326031
api(dotnet): use lists, not collections (#6746) 2021-05-25 15:26:44 -07:00
Pavel Feldman
f7f08c9c02
api(dotnet): normalize enums, remove browser channel enum (#6738) 2021-05-25 14:33:27 -07:00
Pavel Feldman
be95cf48b6
api(dotnet): make headers a dict (#6709) 2021-05-22 20:05:26 -07:00
Pavel Feldman
3bdb1c356f
api(dotnet): generate api in a specific folder (#6708) 2021-05-22 11:47:13 -07:00
Pavel Feldman
7d0b4c263f
chore: fix model types generation (#6706) 2021-05-22 10:13:58 -07:00
Darío Kondratiuk
544ca37c00
chore(dotnet): generate clone constructors for options (#6684) 2021-05-20 16:24:05 -07:00
Andrey Lushnikov
ae35906fb5
devops: flakiness dashboard to support new folio report (#6677)
JSON report will change again in https://github.com/microsoft/playwright/pull/6656
This patch modifies azure function to accomodate to the new format.

Note: with the new notion of projects instead of per-test parameters,
we can actually compress dashboard per commit much more efficient. If
the format sticks, we'll follow-up with a `dashboard_compressed_v2.js`.
2021-05-20 09:46:50 -07:00
Joel Einbinder
447a0c4bb8
feat(types): export ScreenshotOptions (#6419) 2021-05-20 09:22:01 -07:00
Pavel Feldman
ba637e6e41
chore: bring back dblclick alias (#6667) 2021-05-19 16:29:35 -07:00
Pavel Feldman
e679d99421
chore: remove input files and selected option overrides (#6665) 2021-05-19 16:13:17 -07:00
Pavel Feldman
1f22673c29
api(dotnet): introduce RunAndWaitForAsync (#6660) 2021-05-19 15:49:44 -07:00
Pavel Feldman
972f0ec2b5
api(dotnet): migrate to options (#6651) 2021-05-18 23:33:52 -07:00
Pavel Feldman
36c0765c98
api(dotnet): remove serializer options (#6641) 2021-05-18 10:55:03 -07:00
Pavel Feldman
d2938d0a30
api(dotnet): generate options (#6630) 2021-05-18 07:55:04 -07:00
Max Schmitt
9592486225
feat: use up2date Chromium user-agents for device descriptors (#6594) 2021-05-18 09:29:48 +02:00
Pavel Feldman
1e6f899c82
chore(dotnet): simplify enum generation (2) (#6628) 2021-05-17 22:28:14 -07:00
Pavel Feldman
50d24387b4
chore(dotnet): simplify enum generation (#6623) 2021-05-17 21:27:41 -07:00
Pavel Feldman
7eca573eb4
api(dotnet): remove some overrides (#6622) 2021-05-17 20:10:32 -07:00
Pavel Feldman
691644666e
chore: jsify dotnet generator (#6620) 2021-05-17 19:16:14 -07:00
Pavel Feldman
c497c32ec9 fix(dotnet): follow up, add WaitFor(action) in order 2021-05-16 19:02:22 -07:00
Pavel Feldman
3aa9ab88ef
api(dotnet): introduce WaitFor*(action) (#6610) 2021-05-16 19:01:14 -07:00
Pavel Feldman
333397c0e8
chore(dotnet): fix generator escaping, make script lf-friendly (#6606) 2021-05-16 09:58:40 -07:00
Darío Kondratiuk
2477dccee9
chore(dotnet): generate As as a method (#6576) 2021-05-14 07:48:07 -07:00
Pavel Feldman
7b844c5fab
chore(tracing): simplify resource treatment (#6571) 2021-05-13 20:41:32 -07:00
Darío Kondratiuk
c4321887d1
chore(dotnet): remove set properties (#6531) 2021-05-13 12:00:45 -07:00
Manu Chambon
2697f8380f
devops(docker): upgrade to node 16 (#6498) 2021-05-12 09:23:38 -07:00
Darío Kondratiuk
5aa00d1e5e
docs(dotnet): fix link regex on xmldocs (#6528) 2021-05-12 08:08:12 -07:00
Max Schmitt
e0aaef5eab
docs: get rid of dollar sign prefix in code snippets (#6494) 2021-05-11 20:47:48 +02:00
Max Schmitt
5f7739962c
chore: get rid of trailing spaces in types.d.ts (#6481) 2021-05-10 16:26:11 +02:00
Andrey Lushnikov
7906a8f2f5
feat: add best-effort support for Ubuntu 21.04 (#6429)
With this patch:
- `npx playwright install-deps` will install deps on Ubuntu 21.04
- launch doctor knows the package<->lib mapping for Ubuntu 21.04

**NOTE:** our webkit build, however, doesn't work on Ubuntu 21.04. Since
this is not LTS release, we're doing best-effort here.

Fixes #6405
2021-05-06 10:37:06 -07:00
Andrey Lushnikov
298b7aef2a
devops: install Google Chrome Beta testers (#6389) 2021-05-06 10:07:00 -07:00
Anže Vodovnik
67f98d00eb
chore(dotnet): split unions into multiple overloads (#6400) 2021-05-06 10:23:10 +02:00
Jason Harwig
42a5566653
fix(types): fix waitForSelector typing to not union null when appropriate (#6344)
Previously when options were defined, but no `state` key was provided,
the types would return null as an option. Even though the default state
is `visible` and shouldn't allow `null`.

Tests updated to fail appropriately and new tests added for this case.
2021-05-05 13:03:27 -07:00
Anže Vodovnik
dddfbaaeb2
chore(dotnet): run dotnet format after generation (#6376) 2021-05-03 10:23:36 +02:00
Max Schmitt
a59a494e64
chore: drop support for Node.js 10 (#6371) 2021-04-30 07:49:10 -07:00
Darío Kondratiuk
ba652c177f
docs: inline parsing should honor template location (#6289) 2021-04-29 21:16:09 -07:00
Darío Kondratiuk
bb8453972a
chore(dotnet): don't generate setters on interfaces (#6293) 2021-04-29 21:10:59 -07:00
Darío Kondratiuk
d9015b99d0
chore(dotnet): translate Javascript words to csharp (#6321)
There are some words that we can replace so we don't need to write csharp specific comments
2021-04-29 21:08:46 -07:00
Max Schmitt
1b771ed360
docs(python): add Error base class (#6315) 2021-04-28 10:41:46 +02:00
Pavel Feldman
922d9ce1fb
chore(tracing): fix some of the start/stop scenarios (#6337) 2021-04-27 11:07:07 -07:00
Pavel Feldman
97cf86d20a
chore: make instrumentation per-context (#6302) 2021-04-23 18:34:52 -07:00
Yury Semikhatsky
fd31ea8b0d
feat: support extra http headers in browserType.connect() (#6301) 2021-04-23 14:52:27 -07:00
Yury Semikhatsky
f63f92be5e
chore: repair run_static_server.js (#6298) 2021-04-23 11:42:54 -07:00
Anže Vodovnik
6e9b76fa8f
chore(dotnet): enable nullable enum arguments (#6271) 2021-04-23 11:22:38 +02:00
Andrey Lushnikov
cffab1f5c7
chore: update //utils/roll_browser.js script to roll anything (#6279) 2021-04-22 17:45:34 -07:00
Darío Kondratiuk
7dccfd4227
chore(dotnet): generate IDownload.createReadStream method (#6192) 2021-04-19 13:28:57 -07:00
Dmitry Gozman
243ede5dfb
feat(waitForEvent): allow async predicate (#6201)
We await the predicate now. For synchronous predicates,
nothing should change becase the await will finish before
the next protocol message arrives (thanks to `makeWaitForNextTask`).
2021-04-19 10:32:51 -07:00
Andrey Lushnikov
2c34eaeaf9
devops: better upload flakiness dashboard upload script (#6176)
This patch moves some duplicated logic from YAML workflows to
the dashboard uploading script.
2021-04-19 08:39:10 -07:00
Dmitry Gozman
fff1f3d45c
chore: simplify remote connection protocol (#6164)
This changes the root object from RemoteBrowser to Playwright,
similar to local driver connection. This way, any remote connection
gets a Playwright object.

This also starts reusing PlaywrightServer class, and introduces
`cli run-server` hidden command that runs ws server on the
specified port.

Previous structure:
```
RemoteBrowser
  - browser (using ConnectedBrowser for remote-specific behavior)
  - selectors (special instance for this remote connection)
```

New structure:
```
Playwright
  - ...
  - selectors (special instance for this remote connection)
  - preLaunchedBrowser (using ConnectedBrowser for remote-specific behavior)
```
2021-04-12 11:14:54 -07:00
Dmitry Gozman
bd8433ba49
test: cleanup various testing env variables (#6155) 2021-04-09 07:59:09 -07:00
Joel Einbinder
63d0d466e3
feat(cdp): replace wsEndpoint with protocol neutral endpointURL (#6141) 2021-04-08 14:55:28 -07:00
Joel Einbinder
779355ad51
feat(types): make the template on BrowserType optional (#6142)
This makes it much nicer to use `BrowserType` because it no longer has a template.

Technically a breaking change because of the rare edge case where someone used their own non-browser type inside the template, but I don't consider that intended behavior and think this is fine.
2021-04-08 10:27:24 -07:00
Darío Kondratiuk
e82b546085
docs(dotnet): generate arguments in a consistent order (#5800) 2021-04-08 14:21:10 +02:00
Andrey Lushnikov
0c00891b80
devops: prepare flakiness dashboard cloud function to Android tests (#6129) 2021-04-07 12:09:17 -07:00
Anže Vodovnik
b37116d7b1
chore(dotnet): fix generating from parent directory (#6095) 2021-04-07 17:17:57 +02:00
Darío Kondratiuk
fd40c92a92
chore(dotnet): generate generic EventHandlers (#6076) 2021-04-06 12:23:26 +02:00
Darío Kondratiuk
33198c3d1a
chore(dotnet): format generateDotnetApi (#6075) 2021-04-06 12:21:31 +02:00
Darío Kondratiuk
e5b011ae74
chore(dotnet): remove Get prefix (#6074) 2021-04-06 11:55:24 +02:00
Andrey Lushnikov
1a44f68155
devops: migrate flakiness dashboard to the new folio reporter format (#6089)
New folio changed the JSON report, so we have to keep with the changes.

The most notable changes:
- there are no parameters any more. We recreate these as `testInfo.data`
  arguments that are saved under test result's data.
- `test.runs` are renamed into `test.results`

I didn't find other changes so far - let's see if this works in the
cloud!
2021-04-05 17:35:34 -07:00
Dmitry Gozman
e3cf675624
test: remove a copy of folio, use upstream (#6080) 2021-04-05 13:23:49 -07:00
Pavel Feldman
a7630c91d5
api: remove Chromium* classes (#6040) 2021-04-01 18:47:14 -07:00
Yury Semikhatsky
28b14fc5f7
feat(docker): use playwright install-deps for building docker image (#5995) 2021-03-29 23:48:54 -07:00
Darío Kondratiuk
fdb3c1f153
chore(dotnet): don't generate set only properties (#5982) 2021-03-29 20:06:44 -07:00
Darío Kondratiuk
5c1e8dcd80
chore(dotnet): fix properties with Is prefix (#5981) 2021-03-29 20:05:51 -07:00
Yury Semikhatsky
8c6822bd32
fix(docker): update native deps and docker files for chromium (#5989) 2021-03-29 13:43:31 -07:00
Darío Kondratiuk
bc6dc1d108
chore(dotnet): treat file as a reserved word (#5960)
Avoid collision with System.IO.File and unify handling reserved file names and enum values.
2021-03-29 10:22:06 +02:00
Darío Kondratiuk
779037a77e
chore(dotnet): avoid adding two prefixes (#5974) 2021-03-27 09:58:36 -07:00