Commit graph

2128 commits

Author SHA1 Message Date
Andrey Lushnikov 32ea4f542b
fix: a human-readable error when lock cannot be acquired (#8768)
Fixes #8709
2021-09-08 06:03:16 -07:00
Max Schmitt 25b5927a4d
docs: sizes enhancements (#8771) 2021-09-08 14:09:11 +02:00
github-actions[bot] ffb5ddbcde
feat(webkit): roll to r1541 (#8764)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-08 13:26:13 +02:00
Yury Semikhatsky 6263361284
feat(fetch): browser proxy credentials (#8760) 2021-09-07 17:42:31 -07:00
Yury Semikhatsky afe92a6fcf
fix(runner): avoid line wrapping in list reporter (#8705) 2021-09-07 17:42:17 -07:00
Dmitry Gozman bcbb792cf3
fix(tracing): retain script resources, but no body (#8758) 2021-09-07 15:23:13 -07:00
Dmitry Gozman b30772c67e
fix(tracing): collect apiName for mouse/keyboard/touchscreen (#8755) 2021-09-07 13:48:30 -07:00
Daniel Dyssegaard Kallick b2c59a15dd
feat(test-runner): include test step in json report (#8476) 2021-09-07 13:35:30 -07:00
Dmitry Gozman 3739113e74
fix(test runner): allow dot-files and dot-directories with tests (#8751) 2021-09-07 10:32:47 -07:00
Joel Einbinder e914f6bbc7
feat(network): remove Headers class and add headersArray method (#8749) 2021-09-07 10:27:53 -07:00
Max Schmitt 4f4bc72828
chore: add more tests for Request.sizes() (#8686) 2021-09-07 19:19:12 +02:00
Max Schmitt e1c2d67359
fix(cli): allow unknown parameters in debug command (#8732) 2021-09-07 18:35:01 +02:00
Max Schmitt e40b805782
feat(test-runner): support baseURL in toHaveURL (#8743) 2021-09-07 18:34:02 +02:00
Kai Hao a1f26976b0
fix(locators): not waiting until handle is disposed (#8735) 2021-09-07 11:16:43 +02:00
github-actions[bot] 1f43df3249
feat(firefox): roll to r1291 (#8704)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-09-06 13:36:10 +02:00
Yury Semikhatsky 152f6c6f1c
fix: support connectOverCDP over https (#8703) 2021-09-03 17:52:22 -07:00
Yury Semikhatsky e5e461c0de
fix: use logger from config if specified (#8697) 2021-09-03 14:21:25 -07:00
Dmitry Gozman 5d278db17b
fix(snapshot): remove CSP meta from snapshot (#8698) 2021-09-03 13:44:02 -07:00
Dmitry Gozman e2b092c1a0
feat(html reporter): show log for pw:api and expect steps (#8692) 2021-09-03 13:08:17 -07:00
Max Schmitt e7d4d61442
feat: add forced-colors media query emulation (#6903) 2021-09-03 21:48:06 +02:00
github-actions[bot] 97717f25d2
feat(chromium): roll to r917400 (#8685)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-03 14:47:43 +02:00
Pavel Feldman 5ac11a7760
fix(headers): fix webkit win headers tests (#8675) 2021-09-02 22:05:22 -07:00
Pavel Feldman 0d5b41ce7b
feat(headers): add Headers.headers that would mimic the behavior of the deprecated getters (#8665) 2021-09-02 20:48:23 -07:00
Dmitry Gozman 620712a5d9
feat(expect): support array of RegExp objects in toHaveText/toHaveClass (#8667) 2021-09-02 15:48:04 -07:00
Dmitry Gozman e691b649de
feat(test runner): describe.parallel (#8662) 2021-09-02 15:42:07 -07:00
Pavel Feldman 94170dacbd
chore: rename rawHeaders to allHeaders (#8659) 2021-09-02 11:46:52 -07:00
Yury Semikhatsky f9312061bf
fix(firefox): use startTime of the same response when computing responseEndTime (#8642) 2021-09-02 10:59:07 -07:00
Pavel Feldman 54bda2c8dd
fix(size): fix some of the request.size() problems (#8645) 2021-09-02 10:39:57 -07:00
Fokke Zandbergen 0ae38b5aec
fix(test-runner): WebServer: use socket for reuseExistingServer to detect servers that aren't using SO_REUSEADDR (#8537) 2021-09-02 18:39:41 +02:00
Yury Semikhatsky bafa426231
feat(runner): support multiple names in project filter (#8600) 2021-09-02 09:29:55 -07:00
Chad Sheets 23daf84cdd
fix(har): favicon redirect handling (#8176) 2021-09-02 08:31:25 -07:00
Henrik Nygren 0202cdf797
fix(codegen): use new toHaveURL syntax (#8624) 2021-09-02 17:24:31 +02:00
Maximilian Hils 242d4d23c1
fix(recorder): improve rendering of multiline selectors (#8651) 2021-09-02 07:43:55 -07:00
Dmitry Gozman 798f894f47
feat(html reporter): show test source (#8643) 2021-09-01 21:15:11 -07:00
Pavel Feldman 42e44f888b
feat(rawheaders): introduce initial plumbing (#8638) 2021-09-01 18:28:20 -07:00
Pavel Feldman 6b371f83f2
chore: few html report tweaks (#8631) 2021-09-01 14:35:11 -07:00
Dmitry Gozman 9618a8477b
feat(trace viewer): show call duration (#8634) 2021-09-01 13:41:47 -07:00
Dmitry Gozman 4f4cf448c2
fix(test runner): generate unique outputDir for beforeAll/afterAll (#8633) 2021-09-01 13:41:35 -07:00
Dmitry Gozman 1a9215a6ec
fix(html reporter): do not throw when attachment is actually missing (#8630) 2021-09-01 12:20:28 -07:00
Dmitry Gozman b8f8ca7493
feat(tracing): tracing.{start,stop}Chunk instead of tracing._export (#8521) 2021-08-31 17:03:31 -07:00
Dmitry Gozman bee8ed117b
feat(html reporter): preview source code, steps and step errors (#8598) 2021-08-31 16:34:52 -07:00
Pavel Feldman 0fd5078b2b
chore: simplify client-side browserType.connect routine (#8596) 2021-08-31 15:56:55 -07:00
Pavel Feldman 26e7c2825b
chore: audit code for new Promise(async) (#8601) 2021-08-31 15:55:32 -07:00
Pavel Feldman 1c169289b2
chore: move async utils into a separate file (#8595) 2021-08-31 14:44:08 -07:00
Pavel Feldman 246ac6aea6
chore: implement browserType.connect on the driver side (#8566) 2021-08-31 12:51:13 -07:00
Pavel Feldman 0e6620ce94
fix(ff): throw friendly message on fetching redirect body (#8594) 2021-08-31 12:11:32 -07:00
Dmitry Gozman 900362ec0b
fix(test runner): report unhandled rejections during worker teardown (#8592) 2021-08-31 10:50:30 -07:00
Yury Semikhatsky 9f8e8444d8
feat(fetch): support response decompression (#8571) 2021-08-31 09:34:58 -07:00
Maximilian Hils 4d26fb9ccb
chore: use a regular import for browsers.json (#8579)
Fixes #8512
2021-08-31 07:50:17 -07:00
github-actions[bot] 900cb0982d
feat(webkit): roll to r1538 (#8575)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-31 11:14:40 +02:00
Pavel Feldman a205ee27cb
fix(network): extra info can arrive before will send request (#8569) 2021-08-30 20:43:40 -07:00
Yury Semikhatsky dd6dacb125
fix(fetch): throw on network error (#8565) 2021-08-30 14:34:31 -07:00
Yury Semikhatsky 6d51ed6e4d
feat(fetch): support baseURL, add tests for invalid args (#8562) 2021-08-30 13:41:25 -07:00
Dmitry Gozman e3cc5b3e3f
chore: simplify responseExtraInfo handling (#8560) 2021-08-30 12:57:44 -07:00
github-actions[bot] b6b9b4c170
feat(chromium): roll to r916288 (#8551)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-08-30 19:51:06 +02:00
Pavel Feldman e47bacdecb
fix(cookies): read response headers off extra info event, if any (#8526) 2021-08-30 09:58:44 -07:00
Max Schmitt 65dc238b32
chore(channels): generate dispatcher event types (#8540) 2021-08-30 18:43:18 +02:00
Pavel Feldman e574f4b7fd
feat(api): introduce setChecked convenience method (#8525) 2021-08-29 20:00:40 -07:00
Pavel Feldman dd31f3bd43
chore: introduce manual promise helper (#8533) 2021-08-29 11:21:06 -07:00
Dmitry Gozman 37a897c9b4
fix(test runner): report beforeAll timeout instead of hanging (#8529)
We used to not report fatal error and hang forever because worker
did not run any tests but also did not report any errors.

Also properly show stack-less errors.
2021-08-28 07:19:45 -07:00
Yury Semikhatsky 60b0f46b60
feat(fetch): support setHTTPCredentials (#8528) 2021-08-27 23:47:33 -07:00
Yury Semikhatsky 3727aa5b67
feat(fetch): send extra http headers (#8527) 2021-08-27 23:47:21 -07:00
Yury Semikhatsky 951b9ac21a
fix(fetch): handle cookies on redirects (#8519) 2021-08-27 15:28:36 -07:00
Max Schmitt f3dde0650f
feat(network): expose bodySize, transferSize, and headerSize (#8234) 2021-08-27 22:53:57 +02:00
Max Schmitt 89245de0ef
fix(har): rewrite sizes and make transferSize work in WK/Linux (#8504) 2021-08-27 20:42:45 +02:00
Yury Semikhatsky 768a97cfdc
feat(fetch): set user-agent and other default headers (#8491) 2021-08-27 08:26:19 -07:00
Michael Rienstra ed0c47a06f
fix(test-runner): minor error message typo (#8489) 2021-08-27 10:15:16 +02:00
Pavel Feldman 47ecd28a3d
fix(strict): erase injected script stack from strict error (#8493) 2021-08-26 21:21:19 -07:00
Pavel Feldman 4ed976f2e9
chore: remove isContextDestroyedError heuristic (#8456) 2021-08-26 18:44:49 -07:00
Yury Semikhatsky 210ad72228
fix: remove node-fetch dependency, use custom fetch implementation (#8486) 2021-08-26 16:18:54 -07:00
Max Schmitt 998f2ab959
chore: hide Route.fulfill._response from API (#8483) 2021-08-27 00:44:20 +02:00
Ross Wollman a1313727e8
fix(har): HAR artifacts need to be marked remote (#8462)
This is a follow-up fix to microsoft/playwright#8385.

Testing options are limited right now, but this change was confirmed
with a client running on my physical machine and a LaunchServer running
in a Docker container.

Before this change, the har.spec.ts only passed when the client and
server were on the some filesystem.

microsoft/playwright#8450 will likely give us options to test this in an
automated way in the official CI suite.
2021-08-26 11:26:08 -07:00
github-actions[bot] 183ebeaae5
feat(firefox): roll to r1288 (#8460)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-26 10:08:45 -04:00
Andrey Lushnikov 2198769f6c
fix(react-vue): support nested trees (#8467)
Turns out you can mount nested trees in both React and Vue.
This patch changes root discovery to support nested trees.

Fixes #8455
2021-08-26 03:07:33 -07:00
github-actions[bot] fe96cc274f
feat(webkit): roll to r1535 (#8457)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-26 11:47:34 +02:00
Pavel Feldman c627927bf5
fix: make preview take 3/4 of the screen (#8446) 2021-08-25 14:51:18 -07:00
Pavel Feldman 95be45967a
feat(strict): list ambiguous matches when throwing strict exception (#8449) 2021-08-25 14:51:03 -07:00
Dmitry Gozman 02bef1eded
fix(tracing): modernize old resources to new har format (#8453) 2021-08-25 14:36:52 -07:00
Ross Wollman cd110e6477
feat(har): Remotely accessible HAR file (#8385)
This change ensure's the HAR file is saved at `recordHar.path` on the
client instead of the server.

NB: The goal was to make this change transparent to the user and NOT
introduce any new APIs. Namely, I want to leave the API open for
potential `context.har.start()` and `context.har.stop()`.

This does BREAK servers that expect the HAR to be at the `recordHar.path`
on the server, but I think that's OK since there haven't been reports
of missing HAR on client making me think not many users are getting
HAR with client and server on different hosts anyways.

Closes #8355
2021-08-25 13:32:56 -07:00
Dmitry Gozman de85d8bb83
fix(test runner): do not special case test.fail (#8447)
This makes `test.fail` tests considered as passing when they actually fail:
- Stop restarting the worker.
- Retry when it passes instead of a fail.
- Behaves similar to regular tests in a `describe.serial` suite.
2021-08-25 12:19:50 -07:00
Dmitry Gozman e726c18788
chore: use 'mime' for various mimeType-extension mappings (#8426) 2021-08-25 11:18:35 -07:00
Joel Einbinder fc991fe897
chore(typescript): turn on noImplicitOverride (#7810) 2021-08-25 10:11:18 -04:00
Joel Einbinder 943c22c9c4
fix(protocol): remove unnused strict in QSA and add it to waitForSelector docs (#8140)
Strict doesn't make sense in querySelectorAll, but it was in the protocol.

And we had a strict option in ElementHandle.waitForSelector but it
was not surfaced in the docs/api.
2021-08-25 10:10:40 -04:00
Max Schmitt 8189de42cf
test: fix package installation tests (#8430) 2021-08-25 13:34:54 +02:00
Dmitry Gozman 29eb6cb777
chore: migrate tracing to har (#8417)
chore: migrate tracing to har

- `HarTracer` is used by both `HarRecorder` that implements
  `recordHar` context option, and by tracing.
- We keep the `trace.network` format for now, so it is not
  yet a valid har file, but it contains har entries.
2021-08-24 21:09:41 -07:00
Dmitry Gozman b188468fa4
fix(tracing): rewrite blob urls so that we can intercept them (#8423) 2021-08-24 17:05:26 -07:00
Max Schmitt 712a36649b
fix(test-runner): do not start web-server when tests are listed (#8414) 2021-08-24 23:39:24 +02:00
Yury Semikhatsky 7f02e9ebb1
chore: enable logical assignment babel plugin (#8416) 2021-08-24 14:29:20 -07:00
Yury Semikhatsky c0010d16c6
feat: introduce BrowserContext._fetch (#8349) 2021-08-24 14:29:04 -07:00
Joel Einbinder c9718359f1
fix(codegen): properly escape everything for windows (#8415) 2021-08-24 17:09:05 -04:00
Dmitry Gozman b0a7843247
chore: migrate tracing ResourceSnapshot to follow har entry format (#8391)
This will ease the migration of tracing to har.
2021-08-24 13:17:58 -07:00
Max Schmitt 8e20f13079
feat(routes): add support for the times option (#8399) 2021-08-24 20:45:50 +02:00
Yury Semikhatsky 59422a00f5
feat(route): rename method, add response option (#8386) 2021-08-24 11:07:54 -07:00
Joel Einbinder a8a3799e9d
fix(test-runner): use describe name in output dir (#8282) 2021-08-24 10:33:40 -04:00
Dmitry Gozman 47724fed5a
chore(tracing): rework start/export chunks (#8378)
Instead of filtering the whole trace file on export, we write
into separate trace file for each chunk. We also write a separate
trace.network file with all resources, because it is reused between
chunks.

This brings us towards `tracing.startFile()/stopFile()` api.
2021-08-23 16:08:09 -07:00
Joel Einbinder 0ed3c79d51
fix(selectors): nicer errors if the selector engine returns a bad value (#8259)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-08-23 22:54:02 +02:00
Dmitry Gozman 827a909d36
docs: deprecate timeout option in isVisible/isHidden methods (#8371) 2021-08-23 12:32:06 -07:00
Joel Einbinder 60829f8909
fix(codegen): escape tricky characters (#8350) 2021-08-23 12:22:19 -04:00
Dmitry Gozman f9b87268a7
fix(test runner): afterAll error should not mask beforeAll error (#8358) 2021-08-23 09:21:40 -07:00
Ross Wollman 25a4c7b3df
feat(launchServer): accept wsPath option (#8353) 2021-08-22 09:04:47 -07:00