Commit Graph

5026 Commits

Author SHA1 Message Date
Dmitry Gozman
fca965cb98
browser(firefox): properly handle HSTS redirects (#7391)
When Firefox decides to perform an http->https redirect based on HSTS
information, it issues an "internal" redirect and cancels the http request.

Since there is no response for the http request, we forge 307 redirect
in this case, following Chromium lead.

The relevant code is in nsHttpChannel::StartRedirectChannelToHttps.
2021-06-30 12:59:27 -07:00
Anirudh Modi
8f2bfed659
feat: added more logging info for $ (#7344) 2021-06-30 11:17:09 -07:00
Pavel Feldman
e9246089d5
test(trace-viewer): start adding tests (#7393) 2021-06-29 22:35:50 -07:00
Joel Einbinder
a1f9fc3f32
fix(test runner): properly match test suffix (#7392) 2021-06-29 17:49:56 -07:00
Max Schmitt
18266722a1
browser(firefox): add Download.cancel (#7390) 2021-06-30 01:29:58 +02:00
Dmitry Gozman
fc0b8ad3f0
fix(tracing): record scroll position for all scrolled elements (#7388) 2021-06-29 16:20:15 -07:00
Joel Einbinder
7629587914
fix(test-runner): work with .mjs files (#7373) 2021-06-29 15:28:41 -07:00
Pavel Feldman
b1d66d54f0
fix(tracing): explicitly list actions to snapshot (#7376) 2021-06-29 15:28:15 -07:00
Dmitry Gozman
3ce1f5c33e
chore: avoid execSync when determining hostPlatform (#7386) 2021-06-29 13:39:30 -07:00
Dmitry Gozman
6b3614fd4c
feat(test runner): support test.setTimeout for the whole block (#7387)
This enables `test.setTimeout()` outside of the test body, that
affects all tests in the block (either file or describe).
2021-06-29 13:33:13 -07:00
Anish Karandikar
2166b98efc
docs(installation): Minor grammar edit (#7383) 2021-06-29 13:00:20 -07:00
Joel Einbinder
368880962f
fix(test-runner): better test match glob (#7382) 2021-06-29 11:49:50 -07:00
Dmitry Gozman
6aefa02e91
feat(test runner): improve reporters api (#7370)
- onEnd may return a Promise
- onEnd now takes a result for the full run
- onTimeout is replaced with onEnd(result)
2021-06-29 10:55:46 -07:00
Max Schmitt
a270fc5206
browser(firefox-beta): add transferSize to Network.requestFinished (#7369) 2021-06-29 09:46:42 +02:00
Pavel Feldman
7062278265
fix(trace): copy cached resources on write (optimization) (#7372) 2021-06-28 22:01:08 -07:00
Dmitry Gozman
1660334357
feat(install): docs and help (#7365)
Drive-by: remove test-intro and references to it.
2021-06-28 18:50:24 -07:00
Andrey Lushnikov
d576b8bca8
devops: support explicit GitHub sha for chromium-with-symbols build (#7367) 2021-06-28 14:26:15 -07:00
Dmitry Gozman
530523cb67
feat(setInputFiles): support label retargeting (#7364)
This way `page.setInputFiles('label')` works, similarly to other input actions.
2021-06-28 14:18:01 -07:00
Dmitry Gozman
014c224db6
docs(snapshots): add more details (#7366) 2021-06-28 14:17:28 -07:00
Pavel Feldman
a8d48a1a48
chore: remove hard-coded wrapApi names (#7347) 2021-06-28 13:27:38 -07:00
Max Schmitt
0776cf76a2
feat(test-runner): do only allow unique spec titles per suite (#7300) 2021-06-28 22:13:35 +02:00
Max Schmitt
8414bafd86
docs(python): add example for testing Chromium extensions (#7338) 2021-06-28 21:26:04 +02:00
Max Schmitt
9f9201420a
fix(websockets): filter for text and binary frames (#7360) 2021-06-28 21:23:29 +02:00
Max Schmitt
8fa93ae6be
browser(firefox): add transferSize to Network.requestFinished (#7355) 2021-06-28 21:22:55 +02:00
Ronie Martinez
409aeaa443
feat(codegen): Add type annotations to Python output and make PEP8-compliant (#7337) 2021-06-26 13:11:32 -07:00
Pavel Feldman
2fa436675f docs(cdp): more python cdp fixes (2) 2021-06-26 08:31:36 -07:00
Pavel Feldman
ff2e5f9120 docs(cdp): more python cdp fixes 2021-06-26 08:30:06 -07:00
Joel Einbinder
0af1f4399d
fix(test-runner): fix default export breaking on installation tests (#7331) 2021-06-25 22:52:04 -07:00
Pavel Feldman
02538fb587
fix(trace): account for last child node removal (#7332) 2021-06-25 18:52:36 -07:00
Pavel Feldman
ec47b03722
fix(trace): show interrupted actions in trace (#7329) 2021-06-25 17:14:19 -07:00
Joel Einbinder
7caf05b24a
fix(playwright-test): have the proper default export (#7328)
There are 3 ways to import `@playwright/test` library in the modern Node.js ecosystem:
- Using `require`: works great, this patch doesn't change it
- Using `import` statement from `.mjs` file - we have wrong `default` for @playwright/test that should be a `test`. This is what test checks for
- Using `import test from '@playwright/test'` from `.ts` file - was broken because TypeScript thought it's a CJS module, whereas it's a ESM module in reality.

Also, typescript types import from `.d.ts` file was broken because we had no default export (`export *` syntax does not export default).
2021-06-25 15:29:22 -07:00
Max Schmitt
701624c484
chore: roll playwright-test to 1.13.0-next-1624575246000 (#7291) 2021-06-25 22:53:14 +02:00
Max Schmitt
aabd1b2f7f
chore: move unnecessary deps to devDependencies (#7327) 2021-06-25 22:27:19 +02:00
Pavel Feldman
550b48f958
docs: fix the python cdp snippet (#7324) 2021-06-25 11:53:55 -07:00
Max Schmitt
9f3bccc200
fix(test-runner): move OverriddenExpectProperties outside the namespace (#7319) 2021-06-25 17:27:39 +02:00
Andrey Lushnikov
1157f622f3
fix(test-runner): default @playwright/test timeout to 0 (#7312)
All actions for the `@playwright/test` actions inside test should
have default 0 timeout. This way they will never clash with the
test timeout.
2021-06-24 23:28:01 -07:00
Pavel Feldman
b963dbbe3c
browser(webkit): add app icon on Mac (#7315) 2021-06-24 23:26:48 -07:00
Pavel Feldman
a0946afb6b
browser(webkit): add app icon on Linux (#7313) 2021-06-24 22:20:58 -07:00
Max Schmitt
908ad6921f
fix(test-runner): make it compatible when running as a sub-process (#7298)
Works around the following bug: https://github.com/nodejs/node/issues/12921
2021-06-25 00:54:06 +02:00
Daniel Kolesa
80eb64594b
browser(webkit): roll to 06/23/21 (#7278) 2021-06-24 13:41:22 -07:00
Max Schmitt
4c6deaa449
test: added tests for WebSocket over Socks proxy (#7235) 2021-06-24 18:50:16 +02:00
Pavel Feldman
e6bf0a07fe
feat(force): add fill, selectOption, selectText ({force}) (#7286) 2021-06-24 08:18:09 -07:00
Joel Einbinder
ba3f0ff6f5
fix(test-runner): remove unimplemented jest expect types (#7292) 2021-06-24 02:08:02 -07:00
Max Schmitt
bd86e70465
feat(test-runner): allow to focus a test in a location (#7208) 2021-06-24 10:02:34 +02:00
Pavel Feldman
5732307280
feat(inputValue): implement *.inputValue() (#7285) 2021-06-23 22:19:20 -07:00
Andrey Lushnikov
0d9cfd76c3
browser(chromium): roll Chromium to r895386 (#7287) 2021-06-23 18:55:29 -07: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
0d36cec600
chore: remove Playwright GitHub Action mentions (#7281) 2021-06-23 23:15:00 +02:00
Dmitry Gozman
4c6fa42810
fix(test runner): expose real stack traces and speed up locations (#7265)
Stop wrapping/prepending error messages so that we do not loose the stack trace. For this, update a few manually thrown errors with better messages (usually including a file path).

Speed up locations by doing manual `sourceMapSupport.wrapCallSite()` for a single call site. Performance gain in the runner process with 100 files x 100 tests each:
- 25% on the fresh run without babel cache;
- 80% on the cached run where babel is almost instant.

Also some obvious cleanups around stack traces (removing unused code).
2021-06-23 10:30:54 -07:00