2948 Commits

Author SHA1 Message Date
Pavel Feldman
7b27fc3916
chore: pass outputDir to uimode (#30941)
Fixes https://github.com/microsoft/playwright/issues/30886
2024-05-21 14:36:31 -07:00
Yury Semikhatsky
148d759a4c
fix(chromium): do not fetch intercepted request body from network (#30938)
Fixes https://github.com/microsoft/playwright/issues/30760
2024-05-21 12:49:47 -07:00
Joel Einbinder
d0644f5444
fix(electron): flaky startup if stderr comes in too fast (#30855)
Chromium's `DevTools listening on` message sometimes arrives before
Playwright is finished connecting to Node. Without this patch, it would
miss the message and fail to connect.
2024-05-21 12:15:05 -07:00
Dmitry Gozman
6290af3a08
feat(reporters): align and document environment variables (#30912)
- Documents `PLAYWRIGHT_FORCE_TTY` and `FORCE_COLOR` across terminal
reporters.
- New `PLAYWRIGHT_LIST_PRINT_STEPS`. Removes undocumented test-only
`PW_TEST_DEBUG_REPORTERS_PRINT_STEPS`.
- Replaces `PLAYWRIGHT_HTML_REPORT` with `PLAYWRIGHT_HTML_OUTPUT_DIR`
and `PW_TEST_HTML_REPORT_OPEN` with `PLAYWRIGHT_HTML_OPEN` for
consistency, supports older versions for backwards compatibility.
- New `PLAYWRIGHT_HTML_HOST`, `PLAYWRIGHT_HTML_PORT` and
`PLAYWRIGHT_HTML_ATTACHMENTS_BASE_URL`.
- New `PLAYWRIGHT_JUNIT_STRIP_ANSI` and
`PLAYWRIGHT_JUNIT_INCLUDE_PROJECT_IN_TEST_NAME`.
- Removes `PW_HTML_REPORT` that was set for unknown reason.
2024-05-21 10:46:52 -07:00
Max Schmitt
a93ad3dade
fix(fetch): allow UTF-8 in Location header (#30904) 2024-05-21 09:15:33 +02:00
Yury Semikhatsky
042896472b
fix: route.continue should not change multipart form data body (#30863)
The bug was fixed in https://github.com/microsoft/playwright/pull/30734.
This PR adds a test and updates interception logic to not send post data
when it is not modified.

Fixes https://github.com/microsoft/playwright/issues/30788
2024-05-20 16:36:57 -07:00
Lukas Bockstaller
437b14a903
fix: relative url path for ui mode (#29924)
This is a follow up #29564 

I did a deep dive on a redirect issue I observed in my infrastructure
and originally attributed to some configuration mistakes on my part.
I have code hosted on `example.com/code` and use subdomain proxying.
This leads to the uimode being exposed on
`example.com/code/proxy/{{port}}`.

Clicking on the open uimode link shown by vscode redirected with a 302
to `example.com/proxy/{{port}}`

The absolute redirect url overruled the relative path handling reverse
proxies rely on.

This PR turns the absolute into a relative url to avoid this issue.
2024-05-20 10:18:08 -07:00
Max Schmitt
162c18f586
feat(roll): roll Firefox to r1450 (#30865)
Fixes
https://github.com/microsoft/playwright/actions/runs/9120975643/job/25079367394
2024-05-19 16:28:32 +02:00
Playwright Service
b6a7d0a17e
feat(chromium): roll to r1119 (#30879)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-17 19:06:11 +02:00
Yury Semikhatsky
b375f10778
fix: fulfill with unassigned status codes (#30856)
Fixes https://github.com/microsoft/playwright/issues/30773
2024-05-17 09:32:40 -07:00
Dmitry Gozman
4ad94c1a8c
chore: print friendly localhost address from http server (#30853) 2024-05-17 08:55:12 -07:00
Playwright Service
c9df73bc59
feat(webkit): roll to r2010 (#30861)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-17 09:45:16 +02:00
Playwright Service
4efb788f99
feat(chromium-tip-of-tree): roll to r1222 (#30859)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-16 23:23:47 +02:00
Max Schmitt
1526f1b522
chore: freeze webkit on macOS-12 (#30854) 2024-05-16 20:10:27 +02:00
Playwright Service
3370f37e7b
feat(webkit): roll to r2009 (#30833) 2024-05-15 23:24:42 +02:00
Max Schmitt
90765a226f
fix(electron): allow launching with spaces in path (#30820)
Fixes https://github.com/microsoft/playwright/issues/30755
2024-05-15 18:20:00 +02:00
Playwright Service
fda9051c75
feat(webkit): roll to r2008 (#30818)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2024-05-15 11:34:39 +02:00
Yury Semikhatsky
fb319e6d3d
fix: match client step and server action by explicit stepId (#30641)
Matching bu `apiName@wallTime` fails when two actions start at the same
time, e.g. two parallel api requests. Moreover, it results in trace
actions that have parent set to themselves, which in turn causes
infinite loop in the trace viewer. To avoid this problems we write
stepId explicitly to the library trace and use those step ids to find
corresponding test runner steps.

The stepId is passed via zone in case of expect, because the protocol
step is quite deep in the call chain after or explicitly in case of API
call steps created by the test runner instrumentation.
2024-05-14 12:10:46 -07:00
Max Schmitt
b06c1dfff1
Revert "fix(highlight): highlight Top Layer elements (#30001)" (#30800)
This reverts commit a9322226623ee010be08380ff13c9243a044e923.

Closes https://github.com/microsoft/playwright/pull/30797 - maybe there
is a better way to get the page height?
`document.documentElement.scrollHeight` seems to not work on Firefox.
Relates https://github.com/microsoft/playwright/issues/30770
2024-05-14 17:23:52 +01:00
Yury Semikhatsky
873f3a03ac
chore(trace): add context create event for test runner (#30697)
Adding metadata event to the test.trace to simplify time computation
logic.
2024-05-14 09:00:33 -07:00
Playwright Service
f56f965461
feat(chromium-tip-of-tree): roll to r1221 (#30786)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-14 13:44:29 +01:00
Playwright Service
07ccd5ed7f
feat(webkit): roll to r2007 (#30776)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2024-05-14 10:33:00 +01:00
Dmitry Gozman
776b04e5ea
feat: APIRequestContext dispose reason (#30765)
Similarly to page.close, we pass test-runner specific reason to
facilitate better error messages.

```
  1) a.test.ts:10:11 › test

    Error: apiRequestContext.fetch: Fixture { request } from beforeAll cannot be reused in a test.
      - Recommended fix: use a separate { request } in the test.
      - Alternatively, manually create APIRequestContext in beforeAll and dispose it in afterAll.
    See https://playwright.dev/docs/api-testing#sending-api-requests-from-ui-tests for more details.

       9 |
      10 |       test('test', async () => {
    > 11 |         await context.fetch('http://example.com');
         |                       ^
      12 |       });
      13 |
```

Closes #29260.
2024-05-13 18:51:30 -07:00
Dmitry Gozman
8334191b94
fix(selector generator): properly escape re used in has-text (#30767)
Fixes #30499.
2024-05-13 12:40:46 -07:00
Yury Semikhatsky
64b4ac1732
fix(electron): record har file (#30748)
Fixes https://github.com/microsoft/playwright/issues/30747
2024-05-10 15:32:01 -07:00
Yury Semikhatsky
e728e90944
docs: waitForResponse method predicate example (#30739)
Fixes https://github.com/microsoft/playwright/issues/30731
2024-05-10 09:22:59 -07:00
Dmitry Gozman
0d004c9f3c
fix(chromium): concat all post data entries for request.postData() (#30734)
This already works in Firefox, but does not work in WebKit.
2024-05-09 14:08:38 -07:00
Playwright Service
cfde97b0a0
feat(chromium): roll to r1118 (#30728)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-09 17:06:43 +01:00
Playwright Service
8d588477a0
feat(chromium-tip-of-tree): roll to r1220 (#30725)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-09 17:06:31 +01:00
Dmitry Gozman
a5d384c1f6
docs: add section explaining scrolling (#30719)
Fixes #30643.
2024-05-08 21:04:05 -07:00
Playwright Service
4a1a63189f
feat(chromium-tip-of-tree): roll to r1219 (#30712) 2024-05-08 22:30:54 +01:00
Viktor Szépe
150cbcbdf3
chore: fix typos (#30645) 2024-05-08 19:40:03 +01:00
Rui Figueira
cf3ff6531a
chore: make NodeSnapshot type recursive and more (#30619)
Also, deviceDescriptors are now imported with ESM import instead of require()
2024-05-08 11:08:40 -07:00
Saswat Das
7c826719ec
chore: remove redundant parameters from isElementStyleVisibilityVisible (#30637) 2024-05-08 17:45:53 +01:00
Max Schmitt
a0938fc7a4
chore: set minimum Node.js requirement to 18 (#30684) 2024-05-08 17:41:27 +01:00
Pavel Feldman
979233e483
chore: print resolved host in the http server terminal (#30677) 2024-05-06 11:01:36 -07:00
Max Schmitt
aa0020878a
fix(chromium): allow pasting in DevTools without self-xss warning (#30653)
Fixes https://github.com/microsoft/playwright/issues/30425
2024-05-03 18:22:43 +00:00
Playwright Service
ce69236510
feat(chromium): roll to r1117 (#30646)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-03 15:29:02 +00:00
Yury Semikhatsky
d5b387159a
feat(fetch): sendImmediately (#30627)
Fixes https://github.com/microsoft/playwright/issues/30534
2024-05-02 16:30:12 -07:00
Playwright Service
5639cab4a4
feat(webkit): roll to r2005 (#30638)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-02 18:13:21 +00:00
Dmitry Gozman
fd92509dda
fix(role): extract tagName safely (#30636)
Fixes #30616.
2024-05-02 09:42:19 -07:00
Playwright Service
c1fbc753a7
feat(webkit): roll to r2004 (#30633)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-02 12:44:19 +00:00
Max Schmitt
980f9c6ad4
chore: drop firefox-asan (#30626) 2024-05-01 22:13:00 +00:00
Yury Semikhatsky
ff35f651e6
chore: delete expired location handler from client map (#30574) 2024-05-01 13:04:21 -07:00
Yury Semikhatsky
ad0938c659
chore: mark 1.45.0-next (#30598) 2024-04-29 17:19:05 -07:00
Pavel Feldman
96f3d19819
feat(ctrl_or_meta): add a universal ctrl-meta modifier (#30572)
Fixes https://github.com/microsoft/playwright/issues/12168
2024-04-29 08:15:12 -07:00
Yury Semikhatsky
ae9345d0bd
docs: add FormData to the examples (#30557) 2024-04-25 16:31:27 -07:00
Dmitry Gozman
6d20da568e
feat: expect(locator).toHaveRole(role) (#30555)
References #13517. Fixes #18332.
2024-04-25 15:26:10 -07:00
Dmitry Gozman
086ea79c25
chore: remove checkCoverage script (#30552)
We do not benefit from it for many years already.
2024-04-25 14:00:14 -07:00
Dmitry Gozman
9bd2aea130
feat(locator handler): address api review feedback (#30554)
- Remove `handler` argument from `removeLocatorHandler`.
- Rename `allowStayingVisible` into `noWaitAfter`.
- Improve logging related to locator handler.
- Remove experimental badges.
2024-04-25 14:00:02 -07:00