Commit graph

1710 commits

Author SHA1 Message Date
Andrey Lushnikov 81d4b4334b
cherry-pick(release-1.12): account for last child node removal (#7335)
PR #7332 SHA 02538fb587

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-25 23:08:45 -07:00
Andrey Lushnikov c25e00be61
cherry-pick(release-1.12): support constructed CSSStyleSheet (#7334)
PR #7084 SHA 10a82f862c

Fixes #7085

Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-06-25 23:06:45 -07:00
Andrey Lushnikov 6a2175ef65
cherry-pick(release-1.12): show interrupted actions in trace (#7333)
PR #7329 SHA ec47b03722

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-25 23:05:08 -07:00
Andrey Lushnikov 96fc610408
cherry-pick(release-1.12): default @playwright/test timeout to 0 (#7321)
PR #7312 SHA 1157f622f3
2021-06-25 11:24:38 -07:00
Andrey Lushnikov 9a3c01db41
cherry-pick(release-1.12): capture error and pending calls when timing out (#7309)
PR #7193 SHA  388c6f5

Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2021-06-24 18:11:36 -07:00
Andrey Lushnikov 18353085eb
cherry-pick(release-1.12): property handle artifacts in context of preserveOutput (#7307)
PR #7181 SHA 82a50b0

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-24 18:02:55 -07:00
Andrey Lushnikov 8874eeae88
cherry-pick(release-1.12): allow specifying video size (#7306)
- feat(test runner): add tests for playwright-specific fixtures (#6952)
- PR #7158 SHA 184f2c2

Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2021-06-24 17:59:12 -07:00
Andrey Lushnikov fd1708f683
cherry-pick(release-1.12): accept relative paths for outputDir (#7303)
PR #7149 SHA 4c2a3fb

Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-06-24 17:29:38 -07:00
Andrey Lushnikov 8d89233e07
cherry-pick(release-1.12): video: 'retain-on-failure' leaves empty folders behind (#7302)
PR #7125 SHA 9550106

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-24 17:18:16 -07:00
Andrey Lushnikov 6ad4e7a58f
cherry-pick(release-1.12): roll Firefox to r1271 (#7075)
Cherry-Pick #7067 SHA d6831df26f

NOTE: this cherry-pick updates only firefox-stable build revision
and keeps the firefox-beta as-is since it's been rolled already.
Thus, the new test is explicitly skipped on firefox-beta.

Fixes #7015
2021-06-11 11:10:49 -07:00
Andrey Lushnikov e13965e0d5
cherry-pick(release-1.12): resolve global hooks relative to the config dir (#7074)
Cherry-Pick #7061 SHA 49a8f67c0f

Fixes #7004

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-11 11:00:27 -07:00
Andrey Lushnikov ac0fa733a7
cherry-pick(release-1.12): do not stall on dialogs (#7073)
Cherry-Pick #7059 SHA cbce7cbdec

Fixes #7048

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-11 11:00:15 -07:00
Andrey Lushnikov 9c07499f2e
cherry-pick(release-1.120: do not fail when removing non-existent video (#7072)
Cherry-Pick #7060 SHA e4d93cd1f3

Fixes #7058

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-11 11:00:06 -07:00
Andrey Lushnikov 4c807b3e62
cherry-pick(release-1.12): allow generating tests (#7071)
- Cherry-Pick PR #7049 SHA 3b1bae8a40
- Cherry-Pick PR #7069 SHA afa9d69b63

Fixes #7020

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-11 10:41:18 -07:00
Andrey Lushnikov 576cf68a6e
cherry-pick(release-1.12): support passing slowMo option (#6999)
PR #6991 SHA 178489d091

References #6984

Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-06-09 14:17:58 -07:00
Andrey Lushnikov af4d008e53
cherry-pick(release-1.12): fix @playwright/test plumbing (#6994)
Cherry-pick #6992 SHA 6788b9cf8c

Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-06-09 13:06:28 -07:00
Andrey Lushnikov 0d845e0f82
cherry-pick(release-1.12): do not merge srcset urls (#6997)
Cherry-pick PR #6995 SHA 19d69b792d

References #6982

Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-06-09 12:33:27 -07:00
Pavel Feldman 021f51cc1f
feat(trace): add a trace option into the test runner (#6961)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-06-08 11:22:07 -07:00
Joel Einbinder 93f6b57ca5
feat(playwright-test): scan the world (#6935)
Running `npx playwright test` results in a cryptic error message that says to check `--help` for more information.

I started to rewrite it, but I think instead it would be much nicer if we just treated `npx playwright test` as an alias for `npx playwright test -c .`. There is a comment in the code that worries this will be slow because it will scan the world. However we need to support this case anyway for the tests-next-to-code pattern.

It looks like this should be fast because we ignore node_modules/.gitignore entries. If this is still too slow we should make it faster. If we can't make it faster we should throw a more specific error telling the user how to make it faster.
2021-06-08 11:02:16 -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
Andrey Lushnikov 55da16d8cd
Revert "feat: switch to the Firefox Stable equivalent by default (#6926)" (#6947)
This reverts commit a25b11659be8887b700311180fcd3653aa9e472b.

In a discussion with Dmitry Gozman we decided to revert this and instead
proceed with the following approach:
- rename `//browser_patches/firefox` to `//browser_patches/firefox-beta`
- rename `//browser_patches/firefox-stable` folder to
  `//browser_patches/firefox`

In all of the folders, we will keep the `BUILD_NUMBER` original so that
it doesn't clash on the CDN.
2021-06-07 15:55:01 -07:00
Andrey Lushnikov a1e8d2d531
feat: switch to the Firefox Stable equivalent by default (#6926)
This patch:
- starts downloading Firefox Stable equivalent by default
- starts running Firefox-Stable on our smoke tests (tests-1)
- starts running Firefox-Beta on our CQ1 tests (tests-2)

Note: there's a little confusion right now with browser names:
- `firefox-stable` - firefox-stable equivalent
- `firefox`- firefox-beta equivalent

I'll rename `firefox` to `firefox-beta` in a follow-up.

Fixes #6817
2021-06-07 15:00:23 -07:00
Andrey Lushnikov d0eaec368b
chore: clarify that we download Playwright browser builds (#6938) 2021-06-07 14:16:42 -07:00
Joel Einbinder 8960584b78
fix(chromium): drag and drop works in chromium (#6207)
Waiting for #6203 to percolate to the cdn. But this all works locally.

Fixes #1094
2021-06-07 10:27:34 -07:00
Andrey Lushnikov cfd49b5c01
feat: support npx playwright install msedge (#6861) 2021-06-07 00:23:22 -07:00
Dmitry Gozman b556ee6f5b
chore: brush up playwright-test types (#6928) 2021-06-06 20:18:47 -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 82041b2f74
test: roll to folio@0.4.0-alpha28 (#6918) 2021-06-04 20:54:58 -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
Dmitry Gozman a83646684a
fix(tracing): error handling (#6888)
- Reject when ZipFile signals an error.
- Make sure snapshotter does not save trace events after stop().
- Await pending blob writes on stop().
2021-06-04 14:52:16 -07:00
Max Schmitt ff3ad7a3d1
fix(android): to not call Browser.setDownloadBehavior (#6913) 2021-06-04 21:46:53 +02:00
Dmitry Gozman 233f1874da
feat(inspector): remove snapshots (#6909) 2021-06-04 10:47:19 -07:00
Yury Semikhatsky a96491cbbb
feat(downloads): subscribe to download events in Browser domain instead of Page (#6082) 2021-06-04 09:54:29 -07:00
Dmitry Gozman 21b00d0bcc
test: roll to folio@0.4.0-alpha27 (#6897) 2021-06-03 22:06:59 -07:00
Dmitry Gozman 85786b1a11
feat(trace viewer): fix UI issues (#6890) 2021-06-03 21:52:29 -07:00
Dmitry Gozman d4482f3ad3
chore: do not use Array.from in injected script (#6876)
This method is most often overridden by some bad polyfill that
does not work correctly and breaks `$eval` and `$$eval` methods.

As a best-effort fix, use a `[...iterable]` throughout the code.
2021-06-03 15:10:02 -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
Pavel Feldman b2143a951b
chore: make tracing zero config (#6859) 2021-06-02 22:00:34 -07:00
Dmitry Gozman 837ee08a53
fix(waitForSelector): retry when context is gone during node adoption (#6851)
There is a small window after finishing the "rerunnable task" where
we adopt the node to the main world and navigation could destroy the context.
2021-06-02 20:17:24 -07:00
Max Schmitt c09726b023
test: add tests for port-forwarding via playwrightclient (#6860)q 2021-06-03 02:19:01 +02:00
Max Schmitt e91e49e533
feat(port-forwarding): add playwrightclient support (#6786) 2021-06-02 23:35:17 +02: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
Karan Shah 254ec155eb
feat(user-agent): Adding User-Agent in headers while making connection to browser (#6813) 2021-06-02 11:36:58 -07:00
Andrey Lushnikov 17b6f06b98
feat: install media pack on windows with npx playwright install-deps (#6836)
Chromium on Windows requires Media Pack to be installed. This patch
moves media pack installation under the `npx playwright install-deps`
umbrella.
2021-06-02 10:47:10 -07:00
Yury Semikhatsky 2fde9bc13f
fix(webkit): use new awaitPromise parameter instead of separate command (#6852) 2021-06-02 10:04:47 -07:00
Pavel Feldman d28f45b6ee
api(tracing): export -> stop({path}) (#6802) 2021-06-02 10:04:25 -07:00
Yury Semikhatsky f9c8b78c07
feat(webkit): bump to 1490 (#6842) 2021-06-02 09:08:55 -07:00
Andrey Lushnikov 919d258356
feat: support npx playwright install chrome (#6835)
This will install latest-and-greatest chrome stable.
2021-06-01 23:16:55 -07: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