Pavel Feldman
8758cf8cbf
chore: migrate html reporter to vite ( #13116 )
2022-03-28 18:21:19 -07:00
Yury Semikhatsky
5734c18ef8
feat(route): add cors header in route.fulfill ( #12943 )
2022-03-25 14:56:57 -07:00
Pavel Feldman
07c1a27732
chore(deps): prepare deps for monorepo ( #13057 )
2022-03-25 08:43:29 -07:00
Dmitry Gozman
91408f2c5e
fix(storageState): provide nice error message for storage state issues ( #13019 )
2022-03-24 07:33:51 -07:00
Yury Semikhatsky
a8d80621b2
feat(chromium): large file uploads ( #12860 )
2022-03-18 09:00:52 -07:00
Andrey Lushnikov
88610c8b4c
fix: properly define apiName for web-first assertions ( #12706 )
...
Turns out relying on PWTRAP in stack is not reliable: depending on the
call structure, the stack might be cut unpredictably by Node.js.
This patch removes PWTRAP and instead plumbs explicit stack and
pre-set `apiName` all the way down to `wrapApiCall`.
2022-03-14 18:01:13 -07:00
Dmitry Gozman
d836ed41d3
feat(remote): send 'x-playwright-browser' header ( #12556 )
2022-03-07 10:30:53 -08:00
Max Schmitt
5fd43edcbb
chore: fix android tests after #12220 ( #12535 )
2022-03-05 00:18:03 +01:00
Karan Shah
fd1a1a2b1c
feat(android): Adding custom port parameter to connect to different adb server port ( #12220 )
2022-03-04 20:27:25 +01:00
Pavel Feldman
61a6cdde70
feat(api): expose locator.highlight ( #12420 )
2022-03-01 13:56:21 -08:00
Andrey Lushnikov
396d920145
feat(test-runner): implement expect(pageOrLocator).toHaveScreenshot ( #12242 )
...
Fixes #9938
2022-02-28 12:25:59 -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
Dmitry Gozman
5a0445b8da
feat(remote): let client enable/disable sock proxy ( #12086 )
2022-02-14 15:10:58 -08:00
Dmitry Gozman
fb00991a78
chore: intercept socks proxy in the driver ( #12021 )
2022-02-13 14:03:47 -08:00
Dmitry Gozman
66b5cf5ae1
feat(remote): make PlaywrightServer work with browserType.connect ( #11849 )
...
This changes PlaywrigtServer to serve connections like `ws://localhost:3333/?browser=chromium`:
- launches the browser;
- talks `browserType.connect`-style protocol over websocket;
- compatible with `connectOptions` fixture.
```js
await playwright.chromium.connect({ wsEndpoint: 'ws://localhost:3333/?browser=chrome' });
```
2022-02-10 16:36:23 -08:00
Dmitry Gozman
9c66068971
fix(connect): make route.fulfill({ response })
work ( #12006 )
2022-02-10 12:05:04 -08:00
Dmitry Gozman
ae7c52154f
fix(fixtures): make sure connected browser respects context options ( #11990 )
...
Connected browser was wired up to the wrong browserType object.
2022-02-09 15:25:15 -08:00
Yury Semikhatsky
706c897031
feat(fixtures): respect tracing config for APIRequestContext ( #11954 )
2022-02-09 08:54:09 -08:00
Pavel Feldman
9ce8572c78
chore: don't run debugger on pause() ( #11948 )
2022-02-08 14:24:13 -08:00
Pavel Feldman
dbd124d84b
chore: disable page.pause() when JS debugger is attached ( #11926 )
2022-02-07 19:21:58 -08:00
Dmitry Gozman
7912c515a3
fix(fixtures): account for default options being undefined ( #11916 )
2022-02-07 17:11:36 -08:00
Dmitry Gozman
f587a43932
feat(locator): "has" option ( #11411 )
...
This introduces `locator('div', { has: locator })` syntax that matches elements containing other elements.
Can be used together with `hasText`.
Internally, has selector engine takes an inner selector escaped with double-quotes:
`div >> has="li >> span >> text=Foo" >> span`.
2022-02-02 16:55:50 -08:00
Dmitry Gozman
687a16b848
feat(locator): introduce locator.page() getter ( #11630 )
2022-01-26 07:58:58 -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
Ross Wollman
64e7557fb9
fix: falsey behavior in route.continue, page.post, testInfo.attach ( #11421 )
...
In several of the Playwright APIs, falsey values were not handled correctly. This changeset adds tests (and some fixes):
- route.continue: If options.postData was the empty string, the continue failed to override the post data.
- page.post (application/json with options.data: false|''|0|null): Raw falsey values were getting dropped (i.e. you can't do the equivalent of curl --header application/json … -d 'false'). This has been fixed with most values across all browsers, but an additional fix is needed for 'null' which the channel serializer treats extra specially.
- testInfo.attach: This didn't get reported as an error when options.path was the empty string, but should have been.
#11413 (and its fix #11414 ) inspired this search as they are the same
class of bug.
2022-01-24 15:06:36 -08:00
campersau
4d42f6a1c4
chore: remove unused _waitingForObject from Connection ( #11474 )
2022-01-24 18:58:57 +01:00
Max Schmitt
f29a673b4c
fix: do not mute route handler exceptions ( #11555 )
2022-01-22 22:19:32 +01:00
Yury Semikhatsky
ab9d5a0dc4
chore(tracing): add tracing to APIRequestContext ( #11502 )
2022-01-22 11:25:13 -08:00
Max Schmitt
b79daec8e0
chore: make it possible to override Locator.dragTo(strict) ( #11457 )
2022-01-18 17:51:15 +01: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
William Bergeron-Drouin
a70f4e6410
fix(android): use isRegExp for a more robust check in different execution contexts ( #11359 )
2022-01-12 11:04:18 -08:00
Pavel Feldman
a12e76b52b
chore: implement locator._highlight / playwright._hideHighlight ( #11339 )
2022-01-12 07:37:48 -08:00
Dmitry Gozman
4efb30999f
feat(request): show request context methods as steps ( #11337 )
2022-01-11 17:33:41 -08:00
Pavel Feldman
dc07fa6da6
fix(locator.count): do not touch main workd when computing count ( #11256 )
2022-01-07 15:52:14 -08:00
Dmitry Gozman
8e75dbffaa
fix(errors): waitForEvent/Request/Response should point to the api call ( #11229 )
2022-01-06 14:47:52 -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
Dmitry Gozman
dd57843404
fix(inspector): do not show internal calls ( #10982 )
...
Also mark setDefault{Navigation,}Timeout as always internal.
2021-12-16 17:17:24 -08:00
Yury Semikhatsky
fcccac0c08
fix(tracing): return early if no trace was produced ( #10953 )
...
This fixes [page/page-set-input-files.spec.ts](https://devops.aslushnikov.com/flakiness2.html#filter_spec=page%2Fpage-set-input-files.spec.ts&commits=50&test_parameter_filters=%5B%5B%22browserName%22%2C%5B%5B%22electron%22%2C%22exclude%22%5D%5D%5D%2C%5B%22platform%22%2C%5B%5B%22Android%22%2C%22exclude%22%5D%5D%5D%2C%5B%22video%22%2C%5B%5Btrue%2C%22exclude%22%5D%5D%5D%2C%5B%22trace%22%2C%5B%5Btrue%2C%22include%22%5D%5D%5D%5D×tamp=1639590204582 ) failures.
2021-12-15 17:19:00 -08:00
Pavel Feldman
04e82ce71c
feat(api): make withText an option ( #10922 )
2021-12-14 15:37:31 -08:00
Max Schmitt
67b16497cc
chore: move setting PW User-Agent on connectOverCDP to the server side ( #10899 )
2021-12-13 17:20:04 -08:00
Yury Semikhatsky
a2a8967bed
chore: create trace.zip in driver for local runs ( #10868 )
2021-12-13 14:40:29 -08:00
Dmitry Gozman
9491f6652d
fix(steps): do not show unnecessary steps for internal waitForEventInfo ( #10889 )
2021-12-13 13:32:53 -08:00
Yury Semikhatsky
aaa8b07770
chore(tracing): collect source names on server ( #10862 )
2021-12-10 14:07:22 -08:00
Yury Semikhatsky
976af162b0
feat(tracing): pack sources to trace on the driver side ( #10815 )
2021-12-09 17:21:17 -08:00
Dmitry Gozman
4996e184bf
fix(electron): make recordVideo work ( #10810 )
2021-12-08 17:34:50 -08:00
Max Schmitt
fdb633dc8b
fix: support regexp flags with locator.withText() ( #10779 )
2021-12-07 19:33:04 -08:00
Max Schmitt
300a7f9b44
Revert "chore: validate client/server version match for remote connections ( #10542 )" ( #10766 )
...
This reverts commit 41070a2f55
.
2021-12-07 14:45:05 -08:00
Dmitry Gozman
516360be5f
fix(waitForEvent): include timeout value in the timeout message ( #10738 )
2021-12-06 15:42:57 -08:00
Pavel Feldman
f583f1604c
feat(locator.withText): allow narrowing locators to those with text ( #10688 )
2021-12-03 09:27:06 -08:00
Pavel Feldman
31e0a63fcd
feat(toBeChecked): allow passing checked: false ( #10665 )
2021-12-02 10:31:26 -08:00