Commit Graph

7163 Commits

Author SHA1 Message Date
Andrey Lushnikov
0682672242
chore: move comparator logic to playwright-core (#12232)
This will enable implementation of `toHaveScreenshot` on the
server-side.

Drive-by: drop blink-diff

References #9938
2022-02-18 14:39:17 -08:00
Andrey Lushnikov
b9e86b79ee
chore: refactor toMatchSnapshot implementation (#12206)
This patch prepares for the `toHaveScreenshot` implementation
by splitting common parts from `toMatchSnapshot`.

Drive-by: fix default extension generation from `.bin` to `.dat`
for unknown buffers.
2022-02-18 11:21:58 -08:00
github-actions[bot]
a558e6c2aa
browser(chromium): roll to r972766 (#12213)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 18:55:09 +01:00
github-actions[bot]
0518176f4a
feat(chromium): roll to r969391 (#12228)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 18:54:58 +01:00
Diego Pino
8a6169dcb1
browser(webkit) Follow-up r1612 (#12204) 2022-02-18 09:10:44 -08:00
Dmitry Gozman
edac84d072
feat(remote): send browser/channel/headless in a header (#12205) 2022-02-18 07:54:33 -08:00
Dmitry Gozman
34eec7eae7
fix(webServer): route output through reporters (#12198) 2022-02-18 07:54:01 -08:00
Rebely22
7696fec1fa
docs: selectors.md fix code parentheses misplaced (#12210) 2022-02-18 10:33:24 +01:00
Dmitry Gozman
15043801cb
chore: use transport for BrowserType.connect (#12196)
This gives us logging, ECONNRESET error handling and proper cleanup.
2022-02-17 20:48:14 -08:00
Andrey Lushnikov
a98babec69
feat(test-runner): introduce pixelCount and pixelRatio options (#12169)
This patch adds additional options to `toMatchSnapshot` method:
- `pixelCount` - acceptable number of pixels that differ to still
  consider images equal. Unset by default.
- `pixelRatio` - acceptable ratio of all image pixels (from 0 to 1) that differ to still
  consider images equal. Unset by default.

Fixes #12167, #10219
2022-02-17 15:44:03 -08:00
Diego Pino
bd08bbe123
browser(webkit): roll to 02/17/22 (#12173) 2022-02-17 15:20:02 -08:00
Andrey Lushnikov
c98d595bea
fix: support hiding caret in case of matching style rule (#12172) 2022-02-17 14:05:56 -08:00
Max Schmitt
6ec00a9ae5
devops: require Xcode 13.2 for CR (#12194) 2022-02-17 22:21:12 +01:00
Max Schmitt
21ae298015
fix(trace-viewer): don't crash when argument is null (#12186) 2022-02-17 22:12:42 +01:00
Max Schmitt
562da15af2
devops: build Chromium on mac 12 (#12191) 2022-02-17 21:21:13 +01:00
Max Schmitt
4115235f4d
feat(codegen): use web-first page assertions to match URL (#12177) 2022-02-17 20:52:35 +01:00
Max Schmitt
a667d94d45
chore(codegen): do not over-escape spaces (#12155) 2022-02-17 01:01:46 +01:00
Pavel Feldman
51344c6924
chore: parse-skip .tsx (#12143) 2022-02-16 15:45:35 -08:00
Andrey Lushnikov
086333cd60
feat(test-runner): support unnamed snapshots (#12161)
Fixes #9007
2022-02-16 14:22:01 -08:00
Max Schmitt
92045b7faf
feat(codgen): support radio buttons (#12157) 2022-02-16 19:10:00 +01:00
Dmitry Gozman
47cc7c4ae8
chore: refactor internal cli commands to use commander (#12146) 2022-02-16 09:54:12 -08:00
Yury Semikhatsky
7ee35ae30d
fix(html-report): open all test traces in one viewer (#12142) 2022-02-16 09:09:42 -08:00
Yury Semikhatsky
08fd8d0762
fix(tracing): do not capture iframes in head (#12126) 2022-02-16 09:09:15 -08:00
Pavel Feldman
d4deefbad3
feat(firefox): roll to r1317 (#12120) 2022-02-15 21:55:52 -08:00
Dmitry Gozman
85cb3c9713
test: add a test that fixture error after timeout is not a fatal error (#12141) 2022-02-15 18:05:20 -08:00
Andrey Lushnikov
65697d64be
test: fail canvas test on MacOS 11 and less (#12131) 2022-02-15 14:00:26 -08:00
Andrey Lushnikov
7789d0b73f
devops: fix telegram reporting across platforms (#12135)
Encoding emoji across platforms is a pain!
2022-02-15 14:00:15 -08:00
pierscowburn
5db7ce5964
fix: propagate exit code in experimental mode (#12070)
In experimental ESM mode a child process is forked in order to run the tests. Currently the exit code of this child process is not propagated to the exit code of the parent process, which means that the process exits with a status code of `0` even if some of the tests failed.

This makes it difficult to use Playwright in CI in experimental mode, as the CI pipeline as a whole will pass despite the test failures.

This change addresses this by propagating the exit code in the case where it is non-zero.
2022-02-15 13:10:35 -08:00
Andrey Lushnikov
e6d79a4f10
fix(docker): add missing dependency to the docker 1.19 (#12124)
The `libxtst6` is required in both amd64 and arm64.

Fixes #12075
2022-02-15 10:25:59 -08:00
Yury Semikhatsky
f15610b874
fix(fetch): always return non-empty body regardless of request method (#12102) 2022-02-15 09:06:21 -08:00
Andrey Lushnikov
363b8a6970
feat: support mask option in screenshot methods (#12072)
Fixes https://github.com/microsoft/playwright/issues/10162
2022-02-15 07:05:05 -08:00
Pavel Feldman
618cc66c8d
browser(firefox): manage scripts to evaluate on load on front-end (#12101) 2022-02-14 20:32:12 -08:00
Pavel Feldman
e9a135406c
chore: bump examples to use 1.19 (#12097) 2022-02-14 20:29:56 -08:00
Dmitry Gozman
5a0445b8da
feat(remote): let client enable/disable sock proxy (#12086) 2022-02-14 15:10:58 -08:00
Andrey Lushnikov
e9ca11d91b
chore(installation-tests): introduce npm_i to install local packages (#12093)
This patch introduces `npm_i` command to install locally-built versions of
Playwright packages instead of fetching them from the registry.

With this patch:

```bash
npm i ${PLAYWRIGHT_CORE_TGZ}` # never needed anymore
npm_i playwright-core # the right way to install local package
```

Note that you can pass any NPM arguments to `npm_i` and cannot use it to install non-playwright packages.
2022-02-14 14:52:15 -08:00
Andrey Lushnikov
ef21ce3f56
feat(test-runner): filter out syntax error stack traces (#12095)
Filter out long stack traces from babel when it fails compilation
due to syntax error in test.
2022-02-14 14:33:14 -08:00
github-actions[bot]
6ff23fc446
feat(webkit): roll to r1611 (#12087)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-14 22:48:47 +01:00
Andrey Lushnikov
9bce817a92
chore: improve installation tests (#12092)
* chore: improve installation tests

- all helper scripts and files are moved to `fixture-scripts`
  subfolder.
- `./run_all_tests.sh` now shows a counter to estimate progress
- function `copy_test_scripts` is no longer needed; all fixture
  scripts are automatically copied to test folder

Co-authored-by: Max Schmitt <max@schmitt.mx>

Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-02-14 12:23:08 -08:00
Dmitry Gozman
9814c592d2
fix(test runner): shutdown redundant workers (#12062) 2022-02-14 10:57:15 -08:00
Andrey Lushnikov
6c89f160e8
fix(highlight): drive-by fixes to selector highlight (#12083) 2022-02-14 10:32:18 -08:00
Yury Semikhatsky
5ea79c2ffa
devops: expect mac 12.2 (#12082) 2022-02-14 09:30:36 -08:00
Dmitry Gozman
fb00991a78
chore: intercept socks proxy in the driver (#12021) 2022-02-13 14:03:47 -08:00
Andrey Lushnikov
a0072af2f3
chore: make single installation test executable (#12055) 2022-02-11 20:30:32 -08:00
Andrey Lushnikov
2c59985bcd
chore: refactor installation tests (#12054)
This patch refactors installation tests. With this
refactoring:

- each test is a separate file
- to run a single test, just run the bash file
  * tests support optional `--no-build` flag to re-use previously
    built packages.
  * tests support optional `--debug` flag to see line-by-line test output
  * failed tests print a line that can be copied-and-pasted locally
    to debug the test
- run all tests with `//installation-tests/run_all_tests.sh`
  * test output is hidden for successful runs when run locally and is
    shown when test fails
  * runs all tests, and reports failed tests in the end
  * command output is split into groups when viewed on Github.
2022-02-11 17:06:37 -08:00
Pavel Feldman
96b5831a49
chore: add support private methods in TS (#12051) 2022-02-11 14:46:49 -08:00
Pavel Feldman
aee844eaed
chore: provisional installation test fix (#12049) 2022-02-11 14:46:36 -08:00
Dmitry Gozman
ccb09acdba
fix(remote): make playwright server work with firefox-beta (#12039)
It is not considered "channel", but rather a "tool".
2022-02-11 14:02:02 -08:00
Andrey Lushnikov
94fc45a3db
tests: fix installation tests (#12048)
Follow-up to da2cecbea0
2022-02-11 13:17:06 -08:00
Max Schmitt
7e7996a7b7
chore(dotnet): do not use global CLI and use ps1 instead (#12025)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2005
2022-02-11 11:26:16 -08:00
Andrey Lushnikov
619d1d8617
docs: add release notes for all the languages (#12045) 2022-02-11 11:24:14 -08:00