Dmitry Gozman
416b56a0c8
fix: await expect.poll in docs ( #13743 )
2022-04-25 20:22:53 +01:00
Andrey Lushnikov
cfe92e1608
feat(test-runner): implement expect.poll
( #12815 )
...
This patch implements `expect.poll()` method that polls given
predicate until a given synchronous predicate completes.
Usage:
```js
// wait until page gets 3 frames.
await expect.poll(() => page.frames().length, {
timeout: 1000,
message: 'custom error message',
}).toBe(3);
```
Fixes #10235
2022-03-18 16:31:26 -07:00
Yury Semikhatsky
b96bbc6ad7
docs: simplify test-assertions.md, avoid duplication ( #12475 )
2022-03-03 10:06:14 -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
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
Andrey Lushnikov
6d7321e211
docs: update docs on expects ( #11949 )
2022-02-08 14:44:44 -08:00
Dmitry Gozman
9e08b97b69
docs: restore expect docs in the guide ( #11946 )
2022-02-08 13:15:17 -08:00
Andrey Lushnikov
ba0c7e679b
feat(test-runner): support expect.soft ( #11800 )
...
Soft expects will still fail the test, but will not abort it's execution. As a consequence of this:
- `TestResult` now might have multiple errors, which is reflected with a new `testResult.erros: TestError[]` field.
- `TestInfo` now might have multiple errors as well, which is reflected with a new `testInfo.errors: TestError[]` field.
Fixes #7819
2022-02-02 18:33:51 -08:00
Andrey Lushnikov
2336692e8a
feat: support clarification message for expect ( #11735 )
...
The clarification message is displayed in the HTML report as the name of the step:

It is also shown in terminal output:

Fixes #7816
2022-01-31 17:14:59 -08:00
Max Schmitt
af28a779be
docs: migrate JS assertions over to Java/Python assertions ( #10431 )
2021-11-24 21:58:35 +01:00
Dmitry Gozman
fde2f6a77f
docs: separate doc for test timeouts ( #10448 )
2021-11-19 17:06:46 -08:00
Dmitry Gozman
49337890d2
docs: improve documentation for assertions and test config ( #9890 )
2021-10-29 15:25:52 -07:00
Kenneth Lum
a72930a7bb
docs: add the general rule to expect the opposite of the matchers ( #9772 )
2021-10-28 08:35:35 -07:00
Yury Semikhatsky
ddb70a6d35
docs(expect): default timeout ( #9658 )
2021-10-20 12:06:02 -07:00
Yury Semikhatsky
2a2a3d2ed9
docs(expect): group locator methods, remove extra > ( #9625 )
2021-10-19 13:54:26 -07:00
Dmitry Gozman
8dc8777ab4
feat(expect): toContainText(array) ( #9160 )
...
This matches when each expected item from the array
is matched to one of the resolved elements, in order.
Note this performs both "sub-array" and "substring" matching.
Drive-by: documentation fixes.
Drive-by: added "selector resolved to 3 elements" log line
when expecting arrays.
2021-09-27 11:14:35 -07:00
Dmitry Gozman
620712a5d9
feat(expect): support array of RegExp objects in toHaveText/toHaveClass ( #8667 )
2021-09-02 15:48:04 -07:00
Andrey Lushnikov
8dbec497a8
docs: fix random typos ( #8179 )
2021-08-13 08:59:38 -07:00
Pavel Feldman
290f601dae
feat(expect): introduce explicit default async expect timeout ( #8071 )
2021-08-07 22:08:56 -07:00
Pavel Feldman
3424f59e67
chore(expect): polish matcher names, remote arguable ones ( #8060 )
2021-08-06 16:58:42 -07:00
Pavel Feldman
79e8592146
docs: refresh getting started docs ( #8054 )
2021-08-06 14:02:41 -07:00