Yury Semikhatsky
59df541de5
fix: fulfill intercepted response with empty body ( #8151 )
2021-08-11 14:47:05 -07:00
Yury Semikhatsky
1694b3e90c
feat(firefox): response interception after redirects ( #8148 )
2021-08-11 12:48:30 -07:00
Yury Semikhatsky
41770bf444
feat(webkit): response interception after redirects ( #8017 )
2021-08-11 11:14:50 -07:00
Pavel Feldman
1d4e2fe98c
feat(nth): make nth and visible selectors public ( #8142 )
2021-08-11 11:06:09 -07:00
Dmitry Gozman
052e0e197c
fix(types): allow specifying scope when overriding fixtures ( #8139 )
...
Otherwise it show a confusing error.
2021-08-11 10:44:15 -07:00
Yury Semikhatsky
e9e3349e2f
test: update sameSite cookie expectations on WebKit Win ( #8138 )
2021-08-11 10:27:41 -07:00
Dmitry Gozman
a5e0965087
feat(test runner): implement test.describe.serial ( #8132 )
2021-08-10 21:26:45 -07:00
Joel Einbinder
64da74fba8
feat(test-runner): allow non-ascii characters in the output dir path ( #8093 )
2021-08-10 21:24:35 -07:00
Pavel Feldman
21b510c6e7
chore(tracing): remove resource id ( #8131 )
2021-08-10 21:23:31 -07:00
Andrey Lushnikov
4975f4179e
feat: make React and Vue selectors experimental ( #8106 )
2021-08-10 17:21:16 -07:00
Andrey Lushnikov
792986c92d
feat: support props matching in react and vue selectors ( #8104 )
2021-08-10 17:10:14 -07:00
Dmitry Gozman
c9c1ea6546
fix(test runner): disallow use(workerFixture) in describes ( #8119 )
...
Using a worker fixture forces a new worker. This might be unexpected
when part of the test file runs in one worker, and another runs
in another worker. Top-level use of worker fixtures is still fine.
2021-08-10 16:32:32 -07:00
Dmitry Gozman
9d6c7cdf20
fix(test runner): ensure we run after hooks after failures ( #8102 )
2021-08-10 10:54:05 -07:00
Dmitry Gozman
2744cd6c9a
feat(test runner): remove createContext fixture ( #8109 )
...
We can now use `browser.newContext()` or `browser.newPage()` instead.
2021-08-10 09:26:36 -07:00
Yury Semikhatsky
75981bc0aa
fix(tests): do not throw if page did not produce video ( #8112 )
...
Fixes #8103
2021-08-10 01:24:14 -07:00
Dmitry Gozman
3bf3318350
fix(test runner): make sure options, trace and screenshot apply to all contexts ( #8083 )
...
- Uses some auto fixtures to set default options and instrumentation on BrowserType.
- Moves screenshot, trace and video to worker-scoped fixtures.
- Throws in page/context when used from beforeAll/afterAll.
- Plumbs around BrowserType to be accessible from Browser and BrowserContext.
2021-08-09 18:09:11 -07:00
Dmitry Gozman
e638c4597f
fix(test runner): do not swallow afterAll failure ( #8099 )
2021-08-09 14:21:53 -07:00
Andrey Lushnikov
29f7dfa3ee
feat(chromium): roll Chromium to M94 ( #8047 )
2021-08-09 13:57:17 -07:00
Dmitry Gozman
87548f94c1
feat(test runner): support test fixtures in beforeAll/afterAll ( #8082 )
...
Each hook gets its own test scope. This is not too useful for
object fixtures like `page` (although one can use a page in
`beforeAll` to save storage state), but much more useful for option
fixtures like `viewport`.
2021-08-09 13:26:33 -07:00
Dmitry Gozman
41949e559e
Revert "feat(test runner): file scope fixtures ( #7969 )" ( #8081 )
...
This reverts commit 1bbf86d060
,
leaving small improvements around.
2021-08-09 12:33:16 -07:00
Joel Einbinder
91394b257c
test(test-runner): add tests to show that grep is case insensitive ( #8091 )
2021-08-09 14:05:51 -04:00
Andrey Lushnikov
f455b6edc0
feat: introduce vue selector engine ( #8070 )
...
This patch adds support for the `vue` selector engine that allows
selecting DOM elements based on the component name.
> **NOTE**: `vue` engine supports Vue2 and Vue2.
References #7189
2021-08-09 01:34:52 -07:00
Pavel Feldman
290f601dae
feat(expect): introduce explicit default async expect timeout ( #8071 )
2021-08-07 22:08:56 -07:00
Andrey Lushnikov
f3ba2b54ff
feat: introduce react selectors ( #8069 )
...
This patch adds support for the `react` selector engine that allows
selecting DOM elements based on the component name.
> **NOTE**: in case of multi-root components (React.Fragment), `react`
engine will select all root DOM elements.
> **NOTE**: `react` engine supports react v15+.
References #7189
2021-08-07 16:51:39 -07:00
Pavel Feldman
40fb9d85e0
feat(test-result): render image diff ( #8061 )
2021-08-07 15:47:03 -07:00
Pavel Feldman
559d6242f0
chore: roll test runner to ToT ( #8063 )
2021-08-07 02:11:01 -07:00
Pavel Feldman
3424f59e67
chore(expect): polish matcher names, remote arguable ones ( #8060 )
2021-08-06 16:58:42 -07:00
Pavel Feldman
efb4af8489
chore: roll test runner to ToT ( #8025 )
2021-08-06 16:58:08 -07:00
Dmitry Gozman
5f297b6894
feat(junit reporter): add attachments to stdout ( #8059 )
...
`JUnitReporter` follows the common format for attachments in JUnit reports,
recognized by GitLab and Jenkins among others.
2021-08-06 15:47:54 -07:00
Pavel Feldman
2e63c59157
feat(trace-viewer): show remote object previews in console ( #8024 )
2021-08-06 11:37:36 -07:00
Dmitry Gozman
73b7230931
fix(trace viewer): render snapshots with correct viewport size ( #8020 )
2021-08-05 16:04:09 -07:00
Dmitry Gozman
d846c05619
fix(test runner): make obtainWorker() resolve with null when stopping ( #8018 )
...
This ensures that we properly exit from `Dispatcher.run()`, print
epilogue and set the right exit code.
2021-08-05 15:00:00 -07:00
Pavel Feldman
a8d404cd29
feat(test-runner): basic html reporter ( #7994 )
2021-08-05 13:36:47 -07:00
Max Schmitt
98f9f050a1
fix(isVisible): do not throw when element is not connected ( #8012 )
2021-08-05 21:10:33 +02:00
Yury Semikhatsky
7454647d8e
test: fix another EOL in expectations ( #8009 )
2021-08-05 08:59:48 -07:00
Yury Semikhatsky
28fb3c776a
feat: response interception after redirects in chromium ( #7910 )
2021-08-05 08:49:02 -07:00
Max Schmitt
611a8556c8
test: fix flaky locator-convenience test
2021-08-05 11:56:34 +02:00
Dmitry Gozman
9ab60f66bf
feat(tracing): allow calling tracing.start multiple times ( #7992 )
...
Subsequent invocations reset the trace. This removes the `tracing._reset` method.
Also fixed a bug where BASE element was not reset properly.
Also fixed a bug where tracing would affect the result of protocol call
by setting `callMetadata.error` property.
2021-08-04 21:11:35 -07:00
Dmitry Gozman
1bbf86d060
feat(test runner): file scope fixtures ( #7969 )
...
These are reset after running tests from a single file.
2021-08-04 21:11:02 -07:00
Max Schmitt
3e491114f2
test: fix some failing locators tests ( #7989 )
2021-08-04 23:36:27 +02:00
Yury Semikhatsky
8a7cfc08a6
test: use os-speific EOL sequence in test expectaions ( #7988 )
2021-08-04 20:54:52 +02:00
Max Schmitt
b88199d93e
test: fix locator-misc-1 tests on Android ( #7985 )
2021-08-04 20:11:17 +02:00
Max Schmitt
869f8d541b
chore: PlaywrightClient/Server enhancements ( #7980 )
...
- ensure timeout results in a meaningful message
- add onDisconnect handler
2021-08-04 19:45:33 +02:00
Pavel Feldman
542019f3a1
chore: roll test runner to ToT ( #7977 )
2021-08-03 22:19:27 -07:00
Dmitry Gozman
ea4f42b7ed
feat(report): add video to attachments ( #7976 )
2021-08-03 17:07:57 -07:00
Dmitry Gozman
3e05d8e9fa
feat(tracing): introduce _reset() and _export() ( #7974 )
...
`tracing._export({ path })` exports current tracing state into a file
and does not require tracing to be stopped.
`tracing._reset()` resets current tracing state, but keeps resources
around so they can be referenced in the future snapshots. Does not stop.
The usage pattern is:
```js
await tracing.start({ screenshots: true, snapshots: true });
// ...
await tracing._reset();
// Do stuff, it will all be in the export below.
await tracing._export({ path });
// ...
await tracing.stop();
```
2021-08-03 16:08:06 -07:00
Yury Semikhatsky
c08117d384
test: fulfilled intercepted response body ( #7975 )
2021-08-03 15:29:51 -07:00
Max Schmitt
385d489b35
feat(test-runner): re-enable web server ( #7906 )
...
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-08-03 23:24:14 +02:00
Max Schmitt
2236d74f3f
chore: locator code style nits ( #7972 )
2021-08-03 13:32:39 -07:00
Dmitry Gozman
c406b23387
feat(tracing): do not store scripts in trace ( #7970 )
...
We do not need them for snapshots.
2021-08-03 13:05:58 -07:00