301 Commits

Author SHA1 Message Date
Joel Einbinder
c6641321a0
chore: fix spelling error in comment (#12038) 2022-02-11 09:51:13 -08:00
Dmitry Gozman
1f6b84f445
fix(mac): avoid printing empty line to stderr on mac (#11991)
It turns out, `sw_vers` prints an empty stderr line and we inherit it.
2022-02-09 15:34:10 -08:00
Pavel Feldman
1b3c7c03b6
chore: fix(stack): ignore stack frames inside whole core (#11935) 2022-02-08 10:33:50 -08:00
Andrey Lushnikov
b0daa7754f
feat: filter stack traces to exclude test runner frames (#11795)
Before:

```bash
Running 1 test using 1 worker
  1) [chromium] › tests/example.spec.ts:3:1 › should work ==========================================

    Error: expect(received).toBe(expected) // Object.is equality

    Expected: 2
    Received: 1

      2 |
      3 | test('should work', async({page}) => {
    > 4 |   expect(1).toBe(2);
        |             ^
      5 | });
      6 |

        at Proxy.<anonymous> (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/expect.ts:151:30)
        at /Users/andreylushnikov/tmp/tests/example.spec.ts:4:13
        at /Users/andreylushnikov/prog/playwright/packages/playwright-test/src/workerRunner.ts:335:13
        at runNextTicks (node:internal/process/task_queues:61:5)
        at processImmediate (node:internal/timers:437:9)
        at TestInfoImpl._runFn (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/testInfo.ts:164:7)
        at WorkerRunner._runTestWithBeforeHooks (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/workerRunner.ts:317:24)
        at TimeoutRunner.run (/Users/andreylushnikov/prog/playwright/packages/playwright-core/src/utils/async.ts:48:14)
        at TestInfoImpl._runWithTimeout (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/testInfo.ts:151:7)
        at WorkerRunner._runTestOrAllHook (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/workerRunner.ts:276:5)
        at WorkerRunner._runSuite (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/workerRunner.ts:190:11)
        at WorkerRunner.run (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/workerRunner.ts:137:9)
        at process.<anonymous> (/Users/andreylushnikov/prog/playwright/packages/playwright-test/src/worker.ts:87:5)
```

after:

```
Running 1 test using 1 worker
  1) [chromium] › tests/example.spec.ts:3:1 › should work ==========================================

    Error: expect(received).toBe(expected) // Object.is equality

    Expected: 2
    Received: 1

      2 |
      3 | test('should work', async({page}) => {
    > 4 |   expect(1).toBe(2);
        |             ^
      5 | });
      6 |

        at /Users/andreylushnikov/tmp/tests/example.spec.ts:4:13
```
2022-02-01 18:40:44 -08:00
Andrey Lushnikov
2336692e8a
feat: support clarification message for expect (#11735)
The clarification message is displayed in the HTML report as the name of the step:

![image](https://user-images.githubusercontent.com/746130/151852652-48194140-5ea4-439d-afee-12583a8caf71.png)

It is also shown in terminal output:

![image](https://user-images.githubusercontent.com/746130/151852666-5c956ef1-6e94-4bc2-8e55-b58688dfc7e0.png)

Fixes #7816
2022-01-31 17:14:59 -08:00
Andrey Lushnikov
3a4e506479
chore: extract SigIntWatcher (#11749)
This is to reduce the size of the long `_run` method in the `runner.ts`.
It also might come handy around the codebase.
2022-01-31 08:51:22 -08:00
Xiaoxing Ye
a35c249fdc
fix: quote path to prevent space issue (#11733)
Co-authored-by: Xiaoxing Ye <xiaoye@microsoft.com>
2022-01-29 09:56:58 -08:00
Andrey Lushnikov
0606afb2e6
chore: rename env variables (#11661)
These variables aren't CLI-only anymore, so pick some more general
names for them.

Note: all language ports would need to follow-up with the rename
after the next roll.

Fixes #11450
2022-01-27 09:06:43 -08:00
Dmitry Gozman
800b813d4b
chore(test runner): prepare to per-fixture timeout (#11605)
This reworks DeadlineRunner to use exception to signal timeout. This way,
we'll be able to run fixtures against a shared deadline vs their own
deadline and still get an easy control-flow timeout handling.
2022-01-25 11:22:28 -08:00
Andrey Lushnikov
42876a0528
fix: support PWDEBUG=0 to disable debug (#11611)
Fixes #11606
2022-01-25 08:40:24 -08:00
Andrey Lushnikov
e10cb4a619
devops: fix Firefox on Ubuntu 20.04 aarch64 (#11602)
Turns out Firefox 96 now requires libxtst6 on Ubuntu 20.04 aarch64.
2022-01-24 16:20:28 -08:00
Yury Semikhatsky
c510819407
fix(windows): hide child console window when running PrintDeps (#11468) 2022-01-19 10:38:51 -08:00
Max Schmitt
fb22c859d6
chore: add browser like UA to browser fetcher (#11006)
Drive-by: unify all Playwright user agents across the board.

Co-authored-by: Andrey Lushnikov <lushnikov@chromium.org>
2022-01-14 02:46:17 -08:00
Dmitry Gozman
9d5bf0e90d
fix(test runner): fixture teardown double error, testInfo.attach() (#11365)
- Use file path, not content to calculate the attachment hash.
- Always cleanup fixture from the list on teardown, to avoid reporting
  teardown error multiple times: from the test, and from the cleanup.
2022-01-13 10:38:47 -08:00
Pavel Feldman
feb7148b3f
chore: don't write into stdout from the test runner, use reporters instead (#11367) 2022-01-12 19:52:40 -08:00
Andrey Lushnikov
13dd41c2e3
devops: fix self-hosted runner stack collection (#11169)
In case of self-hosted github runners, it's much easier to checkout
under `playwright-internal` folder name instead of a default
`playwright` name. This confuses our stack collection.

This patch makes it generic.
2022-01-04 06:23:28 -08:00
Andrey Lushnikov
237b4d5821
devops: download new MacOS 12 WebKit builds (#11066)
Drive-by: simplify management of executable paths since they are
the same for each platform.

References #11031
2021-12-29 20:40:45 -08:00
Andrey Lushnikov
056d310e20
feat(ffmpeg): roll ffmpeg to 1007 (#11081)
This build:
- Includes a native build for Mac Arm64
- Changes executable name for the linux arm64 build
2021-12-29 20:10:29 -08:00
Dmitry Gozman
f933759ad1
chore(test runner): minor improvements (#11067)
- Types for fixture options and more.
- Refined type for deadline runner.
2021-12-22 09:59:58 -08:00
Max Schmitt
5610974312
chore: fix installing of branded browsers under non-root (#10640) 2021-12-06 14:49:22 -08:00
Pavel Feldman
f583f1604c
feat(locator.withText): allow narrowing locators to those with text (#10688) 2021-12-03 09:27:06 -08:00
Saransh Miglani
ca1064e6c1
download code re-organized (#10568) 2021-11-29 08:53:33 -08:00
Max Schmitt
da02c2e2c8
chore: add --dry-run to install-deps CLI command (#10520) 2021-11-25 01:04:42 +01:00
Max Schmitt
85197e68c9
chore: support range requests in trace viewer http server (#10434) 2021-11-23 21:37:55 +01:00
Max Schmitt
e87b56a2e5
chore: verify supported Node.js version during runtime (#10406) 2021-11-19 19:05:17 +01:00
Pavel Feldman
b302152789
chore(zones): prepare to remove wrapApiCall, introduce zones (#10427) 2021-11-18 22:30:09 -08:00
Andrey Lushnikov
82002b2803
fix: fix proper-lock-file configuration (#10356)
Turns out we were using wrong formula; with the config we had in place,
proper-lock-file would give up to aquire lock after 49 seconds of
waiting.

With the proper configuration, we'll keep re-trying for 10 minutes.

Fixes #10354
2021-11-16 13:49:01 -08:00
Max Schmitt
3a64da7a54
fix: do not show taskkill.exe output (#10244) 2021-11-11 18:32:22 +01:00
Max Schmitt
ac629afd46
chore: fix API name capitalisation with APIRequestContext (#10240) 2021-11-11 08:46:17 -08:00
Dmitry Gozman
75efeb1e08
fix: resolve ip using grid/api/testsession endpoint (#10196)
For Selenium 4, we use se:cdp ws proxy, pointing it to the hub url.
For Selenium 3, we use grid api to try and get the target node ip.
2021-11-09 14:41:13 -08:00
Andrey Lushnikov
d34f9972ab
feat: proper launch doctor for WebKit on Arm64 Ubuntu 20.04 (#10172)
This patch:
- consolidates all distribution-specific information in a single
  location
- updates list of required dependencies for WebKit on Arb64 Ubuntu 20.04
2021-11-09 10:55:13 -08:00
Andrey Lushnikov
4b14c466d4
feat: download webkit arm64 build for ubuntu 20.04 (#10151) 2021-11-08 14:56:08 -08:00
Andrey Lushnikov
8bf8f49746
feat: support Firefox for Ubuntu 20.04 arm64 download (#10100) 2021-11-05 17:02:48 -07:00
Max Schmitt
ceedf45d4a
fix: support .mjs files with Playwright Inspector (#10043) 2021-11-05 12:28:52 +01:00
Andrey Lushnikov
009478b8d5
feat: download Chromium Linux arm64 builds (#9994) 2021-11-02 16:58:22 -07:00
Andrey Lushnikov
d1b43fafd3
fix: a nicer lockfile message (#9952)
Fixes #9574
2021-11-01 17:48:18 -07:00
Max Schmitt
a2c414cd88
chore: add Microsoft Edge Stable on Linux (#9915) 2021-11-01 22:03:51 +01:00
Max Schmitt
bff84c5391
fix: PowerShell execution policies (#9885) 2021-10-29 22:42:51 +02:00
Max Schmitt
dd1d3c3ed9 Revert "chore: migrate away from ps1 in install-deps on Windows (#9876)"
This reverts commit 59a406a586de5cbe39ce092b591c2c2271936f1c.
2021-10-29 20:12:46 +02:00
Max Schmitt
59a406a586
chore: migrate away from ps1 in install-deps on Windows (#9876) 2021-10-29 19:32:56 +02:00
Dmitry Gozman
e8c512dbeb
fix(cleanup): use rimraf.sync on process exit (#9862)
Currently we call async `removeFolders` from a synchronous
`process.on('exit')` handler, which should not work.
2021-10-28 19:28:16 -07:00
Pavel Feldman
2e4722d460
test: migrate to upstream fixtures (#9835) 2021-10-28 08:31:30 -07:00
Max Schmitt
fef5c38b3e
chore: remove Win/32bit from registry (#9790) 2021-10-27 23:48:17 +02:00
Max Schmitt
be64b5f6e2
chore: add missing dynamic sdkLanguage based CLI invocations (#9817) 2021-10-27 18:58:13 +02:00
Pavel Feldman
273122b761
chore: align internal test harness w/ @playwright/test (#9796) 2021-10-26 13:45:53 -07:00
Pavel Feldman
2d4db7a6f0
fix(stack): hide test runner stack frames (#9735) 2021-10-25 11:49:59 -07:00
Pavel Feldman
e31b96cc26
feat(tracing): make context.request appear in the trace (#9555) 2021-10-15 15:22:49 -07:00
Andrey Lushnikov
4fa6d1e723
feat(firefox): roll to r1296 (#9494) 2021-10-14 11:35:39 +02:00
github-actions[bot]
a885e95646
feat(firefox-beta): roll to r1293 (#9456) 2021-10-13 14:32:35 -07:00
Pavel Feldman
cdfe075b2a
chore(traceviewer): drop intermediate iframe, add drop handler (#9455) 2021-10-12 21:21:06 -07:00