Commit graph

942 commits

Author SHA1 Message Date
Yury Semikhatsky a61b544932
docs(java): add waitForCondition method (#21768)
https://github.com/microsoft/playwright-java/issues/1228
2023-03-17 13:02:59 -07:00
Dmitry Gozman f484b833ae
docs: update getByLabel docs to mention aria attributes (#21765)
References #21624.
2023-03-17 12:48:07 -07:00
Dmitry Gozman 3a80d119e0
chore: update routeFromHAR options for release (#21764) 2023-03-17 11:49:45 -07:00
Max Schmitt 3ceac4bf53
docs: drop duplicate JS code snippets from test-api (#21466)
https://github.com/microsoft/playwright/issues/21385
2023-03-16 19:01:15 +01:00
Max Schmitt 6c75c01fde
docs(dotnet): don't use C# option names (#21709)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2513

Drive-by: hide C# option names
2023-03-16 09:23:31 -07:00
Dmitry Gozman 40a6eff8f2
feat: support name option in tracing.startChunk() (#21692) 2023-03-15 17:34:56 -07:00
Dmitry Gozman 69a94ed044
docs: update default timeouts in js to be zero and mention config (#21675)
Fixes #19018.
2023-03-14 16:34:30 -07:00
Max Schmitt ba6b41d017
docs(locator): fix Locator frameLocator params (#21662) 2023-03-14 17:15:43 +01:00
Dmitry Gozman c9837dfcc7
docs: add flakiness note to locator.all (#21645) 2023-03-13 19:33:36 -07:00
Max Schmitt c9eac69f2b
fix(types): accept string in expect().toMatch() (#21454)
Fixes https://github.com/microsoft/playwright/issues/21453
2023-03-07 17:53:50 +01:00
Dmitry Gozman 0c5d46bb94
feat: allow chaining locators with Locator.locator(anotherLocator) (#21391) 2023-03-03 14:50:53 -08:00
Pavel Feldman 2cbafd7adf
chore: mark waitForNavigation as deprecated consistently (#21309) 2023-03-01 12:40:50 -08:00
NoamGaash e17e0e40f8
feat(routeFromHAR): add arguments (#21223) 2023-02-27 15:27:38 -08:00
Joel Einbinder eba86fcc53
fix(doc): electron evaluate evaluates in electron not worker (#20892) 2023-02-27 12:49:25 -08:00
Max Schmitt 1432c406ad
docs: fix toMatch code snippet typo (#21077)
Fixes https://github.com/microsoft/playwright/issues/21014
2023-02-22 00:38:30 +01:00
Dmitry Gozman 6fbb265a58
chore: release notes for 1.31 for java, python, csharp (#20969) 2023-02-16 18:11:01 -08:00
Yury Semikhatsky ba6d055bc5
docs: Route.fetch.maxRedirects in java (#20968) 2023-02-16 17:02:12 -08:00
Yury Semikhatsky eadcab6b9f
fix(docs): move callback of Worker.waitForClose to the end of param list (#20966) 2023-02-16 15:32:12 -08:00
Dmitry Gozman 0b7f9055a3
chore: fix docs for python and java (#20962) 2023-02-16 11:48:38 -08:00
Dmitry Gozman ffc2477a00
chore: 1.31 release notes for js (#20933) 2023-02-16 09:35:01 -08:00
Andrey Lushnikov 72942e81d5
chore: fixes to toBeInViewport (#20870) 2023-02-13 15:21:40 -08:00
Andrey Lushnikov fdcd7b549d
chore: mark comparator option back as experimental (#20816)
This reverts commit 303c5998f8.

Reason for revert: I tried enabling `ssim-cie94` by default on
ionic-framework test suite, and it proves to be overly strict for their
usecase.
2023-02-13 11:11:44 -08:00
Dmitry Gozman 77b598110f
fix(docs): inline java, js and csharp overrides (#20833)
This fixes the order of arguments as well as many incorrect arguments
around `WaitFor()` methods.
2023-02-10 15:14:28 -08:00
Andrey Lushnikov 68e170ef89
feat: implement expect(locator).toBeInViewport() (#20668)
The method accepts a `ratio` option to assert the ratio
of the element in viewport. `ratio` defaults to `Number.MIN_VALUE`.

NOTE: this reverts commit d950f5b6ee and
adds `ratio` option support + does the rename.

Fixes #8740
2023-02-10 04:33:22 -08:00
Dmitry Gozman 56276184ae
chore: inline docs from python.md (#20792)
These are currently messed up, with non-python options all over the
place.
2023-02-09 18:24:32 -08:00
Dmitry Gozman 59121a3c37
chore: remove unnecessary extra options from docs (#20785)
Python-only methods should not reference js-only options.
2023-02-09 08:57:44 -08:00
Andrey Lushnikov 303c5998f8
feat: release "comparator" option from experiment (#20720)
The option defines a comparator to be used to compare images.
Possible values are `"pixelmatch"` and `"ssim-cie94"`.

Note: This reverts commit 8167f8bf54.
2023-02-07 08:51:48 -08:00
Yury Semikhatsky 86dd29a15e
docs: custom selectors registration (#20687)
https://github.com/microsoft/playwright/issues/20424
2023-02-06 13:32:00 -08:00
Dmitry Gozman f46883e58e
feat(expect): add GenericAssertions documentation (#20564)
References #20432.
2023-02-01 16:55:52 -08:00
Dmitry Gozman 6f699cd346
docs: clarify headers propagation to redirects (#20572)
References #20501.
2023-02-01 16:55:03 -08:00
Dmitry Gozman 6ad4687f4d
feat(route): add maxRedirects option to Route.fetch (#20567)
References #20501.
2023-02-01 14:43:21 -08:00
Yury Semikhatsky 0d0968076e
docs: update .net console example comments (#20503)
https://github.com/microsoft/playwright-java/issues/1168
2023-01-30 09:10:22 -08:00
chimurai f72d400952
chore: fix typos (#20473) 2023-01-30 09:53:28 +01:00
Yury Semikhatsky 532ca3f7b3
fix: throw on tap when hasTouch=false (#20457)
Fixes #20430
2023-01-27 15:51:57 -08:00
Jeremy Hutchinson bc134551fb
docs(dotnet): add support for CDPSession (#20053)
Implemented in https://github.com/microsoft/playwright-dotnet/pull/2448

Signed-off-by: Jeremy Hutchinson <jrhutch@live.com>
Co-authored-by: Jeremy Hutchinson <jehutchi@microsoft.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-01-26 11:49:10 +01:00
Pavel Feldman 5761a62b1c
docs: clarify the null value for the viewport (#20333)
Fixes https://github.com/microsoft/playwright/issues/20284
2023-01-25 17:48:18 -08:00
chamu228 112c7bda45
docs(java): fix Java doc of playwright create method (#20356) 2023-01-25 09:51:16 +01:00
Dmitry Gozman d950f5b6ee
chore: remove toIntersectViewport for the next release (#20232)
Mostly reverts #19901.
2023-01-19 15:04:09 -08:00
Andrey Lushnikov 1b8b20dc25
chore: drop locator.viewportRatio() method (#20131)
As per API review discussion, we'd like to refrain from
exposing this method.
2023-01-19 08:46:45 -08:00
Yury Semikhatsky c36827433d
docs: fix java console message snippet (#20171)
Fixes https://github.com/microsoft/playwright-java/issues/1168
2023-01-17 11:04:43 -08:00
Max Schmitt 341b50fd25
chore: return Promise<any> in {page,context}.unroute (#20135) 2023-01-17 19:14:47 +01:00
Pavel Feldman e065d608b6
chore: introduce defineConfig for easier JS typing (#20061)
Fixes https://github.com/microsoft/playwright/issues/19694
2023-01-12 13:12:02 -08:00
Max Schmitt 0fe327c21b
chore: return Promise<any> in {page,context}.route (#20005)
Fixes https://github.com/microsoft/playwright/issues/19855
Closes https://github.com/microsoft/playwright/pull/19856
2023-01-10 18:07:17 +01:00
Pavel Feldman 6022a4098f
chore: deprecate page.waitForNavigation, locator.elementHandle (#19977) 2023-01-09 20:04:04 -08:00
Dmitry Gozman 7d2cc06355
docs: add usage sections to Locator methods (#19968) 2023-01-09 13:06:25 -08:00
Max Schmitt e3d615e9f2
docs: add Electron troubleshooting note (#19954)
Fixes https://github.com/microsoft/playwright/issues/19854

Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2023-01-09 18:39:54 +01:00
Andrey Lushnikov 2a49c5e498
feat(expect): introduce expect(locator).toIntersectViewport() (#19901)
This is a new web-first assertion that should be used like this:

```ts
test('should work', async ({ page }) => {
  const locator = page.locator('body');
  // New web-first assertion.
  await expect(locator).toIntersectViewport();
  // The same functionality.
  await expect.poll(() => locator.viewportRatio()).toBeGreaterThan(0);
});
```

Fixes #8740
2023-01-06 16:56:24 -08:00
Dmitry Gozman b376110b77
docs: add proper usage for some test apis (#19925) 2023-01-06 10:26:23 -08:00
Andrey Lushnikov 3883799d68
feat: introduce locator.viewportRatio (#19761)
References #8740
2023-01-05 10:49:32 -08:00
Dmitry Gozman 599ae30313
chore: update .net generator with deprecated/discouraged (#19843) 2023-01-03 23:03:38 +01:00
Yusuke Iwaki b2820fccda
docs(python): fix example code of Route.fetch (#19840) 2023-01-03 11:05:09 -08:00
Sang Nguyen f88b22d0c0
docs: fix wrong waitForResponse example in Node.js (#19701) 2022-12-27 09:12:43 -08:00
Max Schmitt bb2a2c7331
fix: render discouraged / deprecated types (#19596)
Fixes https://github.com/microsoft/playwright/issues/19591
2022-12-20 16:19:07 +01:00
Jean-François Greffier 6846765a9c
docs: fix docs links (#19510)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-12-20 13:17:52 +01:00
Yury Semikhatsky b5f908d31f
docs: remove Serializable from Route.*.postData in java (#19532)
We only support String and byte[] and throw otherwise, align the types
with it.
2022-12-16 11:14:29 -08:00
Yury Semikhatsky d01952576d
docs: route.fetch.postData in java (#19527) 2022-12-16 10:14:02 -08:00
Max Schmitt 1e31afd9d7
docs: fix locator all since version (#19509)
Also a CP candidate.
2022-12-16 18:02:26 +01:00
Pavel Feldman 3afd83c8cc
chore: withdraw locator.enumerate (#19484) 2022-12-15 10:13:56 -08:00
Pavel Feldman 17a0074459
feat(api): introduce Locator.all, enumerate (#19461) 2022-12-14 16:42:50 -08:00
Andrey Lushnikov 8167f8bf54
chore: hide "comparator" option from documentation and types (#19441) 2022-12-14 09:58:19 -08:00
Pavel Feldman d1559a0fcc
chore: route.fetch(postData) (#19436) 2022-12-13 14:01:39 -08:00
Pavel Feldman 6cadc56ea3
feat(api): allow getByTestId(regex) (#19419) 2022-12-13 08:43:13 -08:00
Yury Semikhatsky 0cb1e97528
docs: strictSelectors does not affect Locators (#19414)
Fixes https://github.com/microsoft/playwright/issues/19398
2022-12-12 15:09:44 -08:00
Pranav Jain 59118b83f9
feat(android): add support for passing CR args & proxy when launching browser (#19212)
Fixes https://github.com/microsoft/playwright/issues/19211
2022-12-12 16:15:19 +01:00
Pavel Feldman 7aa3935dcc
chore: match selected options by both value and label (#19316) 2022-12-07 09:04:32 -08:00
Andrey Lushnikov cac67fb94f
chore: do not use "threshold" option for the ssim-cie94 comparator (#19314) 2022-12-06 17:03:13 -08:00
Dmitry Gozman e55a2bdf16
docs: rework Selectors to Other Locators (#19244)
- Replace links to `selectors.md` with `locators.md`.
- Remove sections that are covered by Locators docs.
- Restructure the rest of selectors doc, update them in terms of
locators.

Fixes #18992.
2022-12-02 21:48:37 -08:00
Pavel Feldman 9b35ef3b8d
docs: introduce the concept of details (#19242) 2022-12-02 17:35:21 -08:00
Andrey Lushnikov 6d82460a02
feat: implement a new image comparison function (#19166)
This patch implements a new image comparison function, codenamed
"ssim-cie94". The goal of the new comparison function is to cancel out
browser non-determenistic rendering.

To use the new comparison function:

```ts
await expect(page).toHaveScreenshot({
  comparator: 'ssim-cie94',
});
```

As of Nov 30, 2022, we identified the following sources of
non-determenistic rendering for Chromium:
- Anti-aliasing for certain shapes might be different due to the
  way skia rasterizes certain shapes.
- Color blending might be different on `x86` and `aarch64`
architectures.

The new function employs a few heuristics to fight these
differences.

Consider two non-equal image pixels `(r1, g1, b1)` and `(r2, g2, b2)`:
1. If the [CIE94] metric is less then 1.0, then we consider these pixels
   **EQUAL**. (The value `1.0` is the [just-noticeable difference] for
   [CIE94].). Otherwise, proceed to next step.
1. If all the 8 neighbors of the first pixel match its color, or
   if the 8 neighbors of the second pixel match its color, then these
   pixels are **DIFFERENT**. (In case of anti-aliasing, some of the
   direct neighbors have to be blended up or down.) Otherwise, proceed
   to next step.
1. If SSIM in some locality around the different pixels is more than
   0.99, then consider this pixels to be **EQUAL**. Otherwise, mark them
   as **DIFFERENT**. (Local SSIM for anti-aliased pixels turns out to be
   very close to 1.0).

[CIE94]: https://en.wikipedia.org/wiki/Color_difference#CIE94
[just-noticeable difference]:
https://en.wikipedia.org/wiki/Just-noticeable_difference
2022-12-02 15:22:05 -08:00
Max Schmitt 62b28c89b4
docs(assertions): fix wrong toHaveText param description (#19213)
Fixes https://github.com/microsoft/playwright/issues/19202
2022-12-01 09:14:06 -08:00
Pavel Feldman 2fd0982372
docs: improve API mocking docs (#19189) 2022-11-30 19:29:14 -08:00
Pavel Feldman f0e8d8f074
feat(api): introduce route.fetch and route.fulfill(json) (#19184) 2022-11-30 17:26:19 -08:00
Dmitry Gozman 6721ea4d3a
docs: fix string AriaRole in java/csharp (#19183) 2022-11-30 13:46:33 -08:00
Dmitry Gozman 499324961a
docs: remove Promise.all from examples (#19154)
Replaced with explicit `popupPromise` variable.
2022-11-30 12:36:35 -08:00
Pavel Feldman 89bdaf2441
chore: rename ScreenshotAssertions to SnapshotAssertions (#19150) 2022-11-29 16:57:03 -08:00
Dmitry Gozman 65b0fb055d
docs: note assertion methods that only work with playwright test runner (#19116)
Fixes #18963.
2022-11-28 10:32:48 -08:00
Pavel Feldman be2139f0ac
docs: split assertions list into langs (#19039) 2022-11-24 08:25:24 -08:00
Max Schmitt 30debb5110
docs(python): expand assertion List types (#18975)
The following was before:

```txt
typing.Union[
    typing.List[typing.Union[typing.Pattern[str], str]],
    typing.Pattern[str],
    str,
]
```

but it should be:

```txt
typing.Union[
    typing.List[typing.Pattern[str]],
    typing.List[str],
    typing.List[typing.Union[typing.Pattern[str], str]],
    typing.Pattern[str],
    str,
]
```

Otherwise mypy yells at us.

See https://github.com/microsoft/playwright-python/issues/1524
2022-11-23 11:32:16 -10:00
Pavel Feldman f9a32e0927
chore: follow up to deprecation changes (#19025) 2022-11-23 12:32:14 -08:00
Pavel Feldman f97dcd4c79
docs: annotate deprecated methods (#19005) 2022-11-23 08:40:47 -08:00
Dmitry Gozman d6ab1a90bf
docs: fix typos in some snippets (#18966)
Fixes #18898.
2022-11-21 10:47:38 -08:00
Pavel Feldman 620e8547d4
chore: generate usage: sections based on snippets (#18965) 2022-11-21 10:40:21 -08:00
Pavel Feldman 3fb4b3bbf9
chore: normalize api markdown (#18942) 2022-11-21 09:30:32 -08:00
Max Schmitt c2e3704f86
docs(dotnet): wrong AddInitScriptAsync snippet (#18893)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2399
2022-11-17 10:58:49 -10:00
Dmitry Gozman 0387d96cd5
chore: multiply overloaded options in csharp (#18818)
This way we'll get the same treatment in docs generator as well as
dotnet api generator.

This also adds non-suffixed aliases for string options, e.g. `Name` in
addition to `NameString` and `NameRegex`.

Fixes #18407.
2022-11-15 15:46:54 -08:00
Dmitry Gozman a7b2b04588
fix(getByRole): name and exact (#18719)
Following the `getByText()` and other methods:

- By default, matching is substring and case-insensitive. Before, it was
only case-insensitive, but not substring.
- With new option `exact: true`, matching is full string and
case-sensitive.
- Matching always normalizes whitespace.
- Codegen generates `exact: false` by default.
- `internal:role` treats `[name="foo"i]` as non-exact match.

Various fixes:
- Updated `getByRole` docs to match the reality.
- Locator generator edge cases.
2022-11-11 15:58:36 -08:00
Andrey Lushnikov 251cc9e229
chore: fix docs (#18751) 2022-11-11 13:44:40 -08:00
Andrey Lushnikov f3a99fdd69
chore: address API review comments for the snapshotPathTemplate (#18716)
This patch:
- updates documentation to lead users from `TestConfig.snapshotDir` and
  `testInfo.snapshotSuffix` to `TestConfig.snapshotPathTemplate` as a
  better and more flexible alternative.
- drops `{snapshotSuffix}` from documentation
- stops using `snapshotSuffix = ''` in our own tests and switches us
  to the `snapshotPathTemplate`.
- adds `{testName}` token.
2022-11-10 17:23:57 -08:00
Dmitry Gozman 7c80b77c57
feat(clear): remove clear() methods from all classes except Locator (#18703)
The preferred way is to use the locator, so we should not encourage the
use of `ElementHandle` or `Page` in the new APIs.
2022-11-10 12:29:14 -08:00
Andrey Lushnikov f52fa4ceba
chore(snapshotPathTemplate): address review comments (#18702) 2022-11-10 11:37:41 -08:00
Andrey Lushnikov 6d491f928d
feat(playwright-test): introduce snapshotPathTemplate configuration (#18568)
This configuration option allows to set a string with template
values for precise control over snapshot path location.

An example of `snapshotPathTemplate` usage:

```ts
// playwright.config.ts
// Notice the `testDir` configuration!
export default {
  testDir: './tests',
  snapshotPathTemplate: './__screenshots__/{platform}/{projectName}/{testFilePath}/{arg}{ext}',
}
```

Currently supported "magic tokens" inside the `snapshotPathTemplate`
are:

- `{testDir}` - project's `testDir`
- `{snapshotDir}` - project's `snapshotDir`
- `{platform}` - `process.platform`
- `{projectName}` - Project's sanitized name
- `{testFileDir}` - Directories in relative path from `testDir` to test
  file path (e.g. `page/` in the example below)
- `{testFileName}` - Test file name (with extension) (e.g.
  `page-click.spec.ts` in the example below)
- `{testFilePath}` - Relative path from `testDir` to test file path
  (e.g. `page/page-click.spec.ts` in the example below)
- `{ext}` - snapshot extension (with dots)
- `{arg}` - joined snapshot name parts, without extension (e.g.
`foo/bar/baz` in the example below)
- `{snapshotSuffix}` - `testInfo.snapshotSuffix` value.

Consider the following file structure:

```
playwright.config.ts
tests/
└── page/
    └── page-click.spec.ts
```

The following `page-click.spec.ts`:

```ts
// page-click.spec.ts
import { test, expect } from '@playwright/test';

test('should work', async ({ page }) => {
  await expect(page).toHaveScreenshot(['foo', 'bar', 'baz.png']);
});
```

Fixes #7792
2022-11-09 15:29:07 -08:00
Kazuya Takei 05471df8bb
docs(python): remove not-needed semicolons from code snippets (#18589) 2022-11-07 08:28:07 -08:00
Max Schmitt 245260b365
docs(python): Page.emulateMedia.media "null" value follow-up (#18555)
Follow-up of 91f7e3963d.
2022-11-03 17:50:32 -07:00
Max Schmitt 91f7e3963d
docs(python): have enum value to reset emulated media (#18550) 2022-11-03 12:38:02 -07:00
Pavel Feldman a7f5f2d7a1
chore: allow not overriding media when creating context (#18413) 2022-10-31 09:09:52 -07:00
Max Schmitt 445404abb7
docs: fix dotnet RegisterAsync/python jshandle example (#18408)
Fixes https://github.com/microsoft/playwright-dotnet/issues/2359
Fixes https://github.com/microsoft/playwright-python/issues/1607
2022-10-28 09:58:54 -07:00
Dmitry Gozman c4404ea98f
docs: add examples and clarifications to getByText (#18380)
Also be more explicit about normalizing whitespace, event with exact
match.

Fixes #17831.
2022-10-27 10:27:18 -07:00
Dmitry Gozman eb1c92630e
docs: update locators doc to use new APIs (#18352) 2022-10-26 15:30:22 -07:00
Max Schmitt e25537f941
feat(android): add AndroidDevice.close event (#18306) 2022-10-25 18:18:14 -07:00
Jean-François Greffier 0fe1998c72
feat(api): add clear() (#18296)
Add `clear()` method as a convenience shortcut for `fill('')`.
Implemented for AndroidDevice, ElementHandle, Frame, Locator and Page.

Fixes https://github.com/microsoft/playwright/issues/14041
2022-10-25 12:56:11 -07:00
Dmitry Gozman 329b3eadb4
feat: locator.blur() (#18303)
Note this is only available on Locator. Fixes #10724.
2022-10-25 06:10:40 -07:00
Max Schmitt 805312b722
feat(android): add Android.{launchServer,connect} (#18263)
Fixes https://github.com/microsoft/playwright/issues/17538
2022-10-24 17:23:11 -07:00
Sean Killeen 7ae447ea0f
docs: fix typos (#17919) 2022-10-20 13:46:37 -07:00
AlenPaulVarghese 696f6f029a
docs: fixed a typo, in the documentation (#18218) 2022-10-20 13:35:17 -07:00
Pavel Feldman 05678c9986
docs: add custom test id attribute snippet (#18210)
Fixes https://github.com/microsoft/playwright/issues/18203
2022-10-20 10:54:57 -07:00
Max Schmitt e986e88c55
docs: fix wrong getByLabelText example (#18036) 2022-10-12 13:02:45 -07:00
Oliver Sand 6b01df6d92
fix: fix typo in treeitem role typing (#17952) 2022-10-10 20:57:55 +03:00
Yury Semikhatsky 639b28db3b
fix: noWaitAfter option for hover (#17856)
Fixes https://github.com/microsoft/playwright/issues/17833
2022-10-07 12:43:48 -07:00
Yury Semikhatsky b140b29df0
docs: clarify routeFromHAR.update semantics (#17887) 2022-10-07 11:27:25 -07:00
Dmitry Gozman df4498e7ee
docs: mention that exact option is ignored for regex (#17912) 2022-10-07 10:19:13 -07:00
Pavel Feldman eb4baf76bf
feat(api): make aria roles an enum (#17885) 2022-10-06 11:34:22 -07:00
Pavel Feldman 8810b55504
feat(api): shorted getByLabel, getByPlaceholder (#17816) 2022-10-04 10:29:26 -07:00
Dmitry Gozman b07690f408
docs: use getBy... in documentation (#17795) 2022-10-03 17:02:46 -07:00
Han Yeong-woo ce2ded1f7e
docs(assertions): fix wrong link (#17733) 2022-09-30 11:07:14 +02:00
Pavel Feldman bfb8a43ece
feat(api): all getByTitle, getByAltText (#17724) 2022-09-29 21:45:44 -07:00
Pavel Feldman 083fb4401c
feat(api): add getByPlaceholderText (#17722) 2022-09-29 18:12:49 -07:00
Pavel Feldman b4ee84fb0c
chore(api): remove locator.get() (#17709) 2022-09-29 12:50:52 -07:00
Pavel Feldman e3a2316013
feat(api): add getByLabelText (#17684) 2022-09-29 11:06:58 -07:00
Pavel Feldman d8f67eb75d
feat(api): introduce getByTestId (#17645) 2022-09-27 21:06:07 -07:00
Pavel Feldman d9a28bd244
feat(api): introduce get/getByText/getByRole (#17577) 2022-09-27 16:13:56 -07:00
Pavel Feldman bfd38bf7df
chore: introduce md templates (#17632) 2022-09-27 10:29:34 -07:00
Yusuke Iwaki f5d7089819
fix: accept post data params for request.get and request.head (#17566) 2022-09-26 09:28:07 -07:00
Philip Langer 26150b7064
docs: fix typo persistet -> persisted (#17498) 2022-09-21 13:58:34 +02:00
Yury Semikhatsky e62e84015c
docs(evaluate): clarify semantics of expression string (#17472) 2022-09-20 11:31:56 -07:00
Max Schmitt ffbfacd732
docs: add code snippets for drag'n drop (#17390)
Fixes https://github.com/microsoft/playwright.dev/issues/775
2022-09-19 13:00:46 +02:00
Ross Wollman 8d639ae50e
chore: revert toHaveAttribute type sig and overloads (#17406)
Relates #16517.

Revert "docs(python): add missing NotToHaveAttribute overloads (#17371)"

This reverts commit 2e1ea29614.

Revert "docs(release-notes): add 1.26 release notes for language ports
(#17345)"

This reverts commit 4b8a85e69d.

Revert "test: unflake "should support boolean attribute with options"
(#17024)"

This reverts commit 1dc05bd4c6.

Revert "fix: support toHaveAttribute(name, options) (#16941)"

This reverts commit f30ac1d678.

Revert "feat: expect(locator).toHaveAttribute to assert attribute
presence (#16767)"

This reverts commit 622c73cc1e.
2022-09-16 11:17:35 -07:00
Ross Wollman 85a5c690a4
docs(python): add missing NotToBe{Visible,Editable,Enabled} params (#17381)
Follow up to:

- https://github.com/microsoft/playwright/pull/17058
- https://github.com/microsoft/playwright/pull/17065
- https://github.com/microsoft/playwright/pull/17207

Blocks https://github.com/microsoft/playwright-python/issues/1534.
2022-09-15 16:54:47 -07:00
Ross Wollman 2e1ea29614
docs(python): add missing NotToHaveAttribute overloads (#17371)
Follow up to https://github.com/microsoft/playwright/pull/16941
2022-09-15 12:57:47 -07:00
Max Schmitt 59c32bf2c6
Revert "chore(generator): use new .NET test attributes (#17172)" (#17344)
This reverts commit 15add13a6a.
2022-09-14 22:44:38 +02:00
Max Schmitt 4b8a85e69d
docs(release-notes): add 1.26 release notes for language ports (#17345) 2022-09-14 22:38:19 +02:00
Yury Semikhatsky 35a86a2d02
docs(fetch): post file examples (#17312) 2022-09-13 16:05:57 -07:00
Jean-François Greffier 81bcbd284f
docs: migration typos (#17247) 2022-09-12 17:41:49 +02:00
Yury Semikhatsky 24ee456d43
chore: make maxRedirects available in java, improve docs. tests (#17227) 2022-09-09 13:25:36 -07:00
Vincenzo Gasparo 17b203affb
feat: added follow and redirect arguments to fetch (#17033) 2022-09-09 12:14:42 -07:00
Dmitry Gozman bca13bc35a
feat(assertions): support toBeVisible({ visible }) (#17207) 2022-09-09 08:33:23 -07:00
Max Schmitt aad745acab
docs: provide examples for connectOverCDP (#17189) 2022-09-08 18:00:28 +02:00
Max Schmitt 15add13a6a
chore(generator): use new .NET test attributes (#17172) 2022-09-08 01:44:58 +02:00
Dmitry Gozman f0c5810609
feat(assertions): support toBeEditable({ editable }) (#17065) 2022-09-06 12:50:45 -07:00
Dmitry Gozman 306ab34aa3
feat(assertions): support toBeEnabled({ enabled }) (#17058) 2022-09-06 11:40:34 -07:00
Dmitry Gozman 1dc2a33896
docs: clarify that toBeHidden works when nothing matches (#17057) 2022-09-02 16:36:19 -07:00
Yury Semikhatsky f30ac1d678
fix: support toHaveAttribute(name, options) (#16941) 2022-08-30 17:53:00 -07:00
DetachHead bcf2a06e53
docs: explain that the Selectors.register script is executed in the page context (#16917) 2022-08-30 09:17:17 -07:00
campersau a10bd6a7c6
docs: fix csharp type examples (#16888)
* docs: fix csharp type examples

* Apply suggestions from code review

Co-authored-by: Max Schmitt <max@schmitt.mx>

Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-29 11:54:02 +02:00
JJetmar b93668e301
docs: spelling fix (#16842)
Co-authored-by: Ross A. Wollman <ross.wollman@gmail.com>
2022-08-26 12:57:18 -07:00
Andrey Lushnikov 622c73cc1e
feat: expect(locator).toHaveAttribute to assert attribute presence (#16767)
This patch changes `expect(locator).toHaveAttribute()` so that the
`value` argument can be omitted. When done so, the method will
assert attribute existance.

Fixes #16517
2022-08-25 05:28:34 -07:00
Max Schmitt 9341bf12c6
docs(dotnet): enable api response assertions (#16799) 2022-08-24 08:30:47 -07:00
Max Schmitt be33ec817b
feat(webkit): add forced colors media query override (#16654) 2022-08-19 14:19:54 +02:00
mt-xing 411ec4479c
docs: Tiny grammar fix on Page class API page (#16649) 2022-08-18 14:26:23 -07:00
Pavel Feldman 3cd8d6e513
chore(docs): revert recent changes temporarily (#16590) 2022-08-16 22:00:54 -07:00
Debbie O'Brien 26623a0a77
docs: selectors guide merge (#16571)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-16 16:14:02 +02:00
Yury Semikhatsky d048822c58
docs: deprecate Page.accessibility (#16385) 2022-08-09 12:26:43 -07:00
Kian-Meng Ang 22f0723c72
docs: fix typos in docs (#16370)
Co-authored-by: Debbie O'Brien <debs-obrien@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-09 15:47:17 +02:00
Dmitry Gozman 424431fcfe
docs: explain toHaveText and toContainText in more details (#16283) 2022-08-05 10:27:17 -07:00
Yury Semikhatsky d3d1287e4b
docs(java): setDefaultTimeout -> setDefaultAssertionTimeout (#16264) 2022-08-04 11:58:46 -07:00
Max Schmitt b34da61524
docs: be more clear about connect/launchServer version match (#16134) 2022-08-02 18:59:42 +02:00
Yury Semikhatsky 6e4624120e
docs(java): PlaywrightAssertions.setDefaultTimeout (#16123) 2022-08-01 18:51:27 -07:00
Ross Wollman 11b7bf0dc3
docs(video): caveat regarding saveAs throwing (#16120)
Resolves https://github.com/microsoft/playwright-python/issues/1462.

Relates https://github.com/microsoft/playwright-python/pull/1474, https://github.com/microsoft/playwright-java/pull/1020
2022-08-01 15:34:29 -07:00
Max Schmitt f2c991b00f
docs(dotnet): unify used namespaces (#15968)
docs(dotnet): unifiy used namespaces
2022-07-26 21:18:35 +02:00
Leon 267614341c
docs: spelling fixes (#15746) 2022-07-17 20:13:45 -07:00
Yury Semikhatsky 582b5e08b2
docs: clarify toHaveURL parameter semantics (#15723) 2022-07-15 11:09:20 -07:00
Yury Semikhatsky d62baa005f
docs: hide experimental service worker api in language ports (#15722)
* Revert "docs: expose BrowserContext.serviceWorkers to Java/.NET (#15635)"

This reverts commit 43906d0f7b.

* Revert "docs: expose BrowserContext.serviceWorker to Java/.NET (#15616)"

This reverts commit cfcc35b9a6.

* Make Request.serviceWorker available only in js
* Make sw doc js specific
2022-07-15 10:57:18 -07:00
Max Schmitt 4bba41ab8f
Revert "feat(matchers): add toContainClass (#15491)" (#15670)
This reverts commit e4debd0bf6.
2022-07-14 22:03:37 +02:00
Yury Semikhatsky e37514b43c
docs: dragAndDrop source/target descriptions (#15658) 2022-07-14 09:42:26 -07:00
Ross Wollman 43906d0f7b
docs: expose BrowserContext.serviceWorkers to Java/.NET (#15635) 2022-07-13 15:02:03 -07:00
Max Schmitt cfcc35b9a6
docs: expose BrowserContext.serviceWorker to Java/.NET (#15616) 2022-07-13 17:54:49 +02:00
Max Schmitt ee7d60fcee
docs: migrate page actions to locator actions 2/n (#15603) 2022-07-13 11:50:18 +02:00
Max Schmitt e4debd0bf6
feat(matchers): add toContainClass (#15491) 2022-07-12 23:17:10 +02:00
Max Schmitt 428cdc073c
docs: migrate page actions to locator actions 1/n (#15586) 2022-07-12 22:39:31 +02:00
jfp1992 7b881cf0fe
docs: fix typo bonding > bounding (#15442)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-07-11 22:13:06 +02:00
Pavel Feldman 6181b0dcaf
docs: annotate since (#15386) 2022-07-05 17:24:50 -07:00
Ross Wollman 6cb3236acd
feat(chromium): Service Worker Network Instrumentation and Inspection (#14716)
Adds Chromium support for Service Worker Networking (interception/routing, Request/Response events, and HAR).

Resolves #1090.
Depends on #14714 and #14714.
Supercedes #14321.
Follow up #14711.

Landed upstream patches:
- https://chromium-review.googlesource.com/c/chromium/src/+/3510917
- https://chromium-review.googlesource.com/c/chromium/src/+/3526571
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3566669
- https://chromium-review.googlesource.com/c/chromium/src/+/3544685
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3610924
- https://chromium-review.googlesource.com/c/chromium/src/+/3689949
2022-07-01 12:49:43 -07:00
Ross Wollman 9cafab382b
docs: clarify use of browser.close (#15255) 2022-06-29 18:41:21 -07:00
Pavel Feldman 6a8d835145
chore: allow updating har while routing (#15197) 2022-06-28 15:09:36 -07:00
Sébastien Règne f43fe4855d
docs: fix route.fallback typo (#15173) 2022-06-28 13:46:54 -07:00
Yury Semikhatsky 7ebd81c1fa
docs(java): more FormData examples (#15156) 2022-06-27 14:02:13 -07:00
Pavel Feldman 8c590cb2af
chore: undeprecate sync headers() (#15152) 2022-06-27 10:34:32 -07:00
Stuart Lang eba2bdffb9
docs: fix typo: surved -> served (#15105) 2022-06-24 15:06:57 +02:00
Yury Semikhatsky 997aac59ff
docs: recordHar content and mode options for language ports (#15097) 2022-06-23 18:55:15 -07:00
Pavel Feldman 7bd72716f9
feat(har): introduce the slim mode (#15053) 2022-06-22 14:44:12 -07:00
Dmitry Gozman 033c250f6d
fix(har): remove types/har.d.ts, update har.ts per spec (#15046)
Drive-by: typo fix in `notFound` option name.
2022-06-22 12:16:29 -07:00
Pavel Feldman 9525bedc1f
feat(har): re-add routeFromHAR (#15024) 2022-06-21 22:12:37 -07:00
Ross Wollman 0f8114f6a8
docs: replace serviceWorkers workaround (#14902) 2022-06-20 19:31:19 -07:00
Pavel Feldman 5e6b493bc9
doc(har): add more details into the har doc (#14998) 2022-06-20 17:54:39 -07:00
Dmitry Gozman e3da3ebfa4
feat(har): do not expose HAR types, remove HARResponse fulfill (#14992) 2022-06-20 15:19:54 -07:00
Pavel Feldman be64e9ce66
chore(har): attach resources for .zip hars (#14938) 2022-06-16 18:27:25 -07:00
Pavel Feldman 245c33a5d4
feat(har): allow storing content as separate files (#14934) 2022-06-16 16:33:32 -07:00
Dmitry Gozman cddf3293cf
docs: mention chaining in locator.filter (#14920) 2022-06-16 10:05:30 -07:00
Yury Semikhatsky b88c89548e
docs: update har options for non-js ports (#14899) 2022-06-15 16:57:42 -07:00
Yury Semikhatsky c349c1d57f
feat: newContext.har (#14892)
Replaced {Page,BrowserContext}.(un)routeFromHar with browser.newContext.har.
2022-06-15 16:35:44 -07:00
Ross Wollman 1ed2e46f07
docs: recordHar.urlFilter for non-js clients (#14894) 2022-06-15 15:40:21 -07:00
Yury Semikhatsky df63ae9dce
docs: update strict routeFromHar default value (#14886) 2022-06-15 09:32:40 -07:00
Yury Semikhatsky 259c8d64a5
feat: Page.routeFromHar (#14870) 2022-06-15 08:41:46 -07:00
Yury Semikhatsky e00a26a11d
feat(route): fulfill with HARResponse (#14865) 2022-06-14 15:07:22 -07:00
Pavel Feldman 9cf068ad06
feat(fallback): allow falling back w/ overrides (#14849) 2022-06-13 17:56:16 -07:00
Ross Wollman 61536098be
docs: fix serviceWorkers formatting (#14845) 2022-06-13 15:18:24 -07:00
Pavel Feldman dcdd3c3cdb
feat(route): explicitly fall back to the next handler (#14834) 2022-06-13 12:30:51 -07:00
Pavel Feldman 76abb3a5be
chore: unify tab generation (#14802) 2022-06-10 17:34:31 -07:00
Yury Semikhatsky 5617e5c613
docs: route.har options for non-js clients (#14804) 2022-06-10 16:53:01 -07:00
Yury Semikhatsky e94ec8a85f
docs: fix toHaveValues param type for java and .net (#14803) 2022-06-10 16:34:56 -07:00
Dmitry Gozman 7c0bff15ca
feat(fulfill): improve fulfilling from har (#14789)
- `har` option is now an object `{ path, fallback }`.
- Allows falling back to `abort()`, `continue()` or throwing.
- Matches based on url + method.
- Follows redirects in the HAR file.
- Nice error/stack when throwing.
- Tests.
2022-06-10 14:26:45 -07:00
Dmitry Gozman e975aef961
feat(route): fulfill from har (#14720)
feat(route): fulfill from har

This allows to use pre-recorded HAR file to fulfill routes.
2022-06-08 20:29:03 -07:00
Ross Wollman 85d03714d9
feat: add allow/block serviceWorkers option (#14714)
Adds cross-browser support for easily allowing/blocking Service Workers via a Context option.

Includes plumbing for Playwright Test's `use`.

Resolves #14522.

Relates #1090.
Supercedes #14321.
2022-06-08 18:27:51 -04:00
Ross Wollman fccee89b41
feat: add Response.fromServiceWorker flag (#14715)
Resolves #14666.

Relates #1090.
Supercedes #14321.
2022-06-08 17:34:19 -04:00
Dmitry Gozman fdcdd58d7f
feat(har): introduce urlFilter (#14693)
This is a glob or regex pattern that filters entries recorder in the HAR.
2022-06-07 18:09:47 -07:00
Sébastien Règne 4c2fc6b6eb
feat(browser): add Browser.BrowserType() method (#14468) 2022-06-06 09:46:08 -07:00
Ross Wollman 978854b859
chore: move multi-select assertion to toHaveValues (#14595)
Follow-up to e0a87e52d7
2022-06-02 16:01:34 -04:00
Ross Wollman e0a87e52d7
feat: support multi-select/combo box with toHaveValue (#14555) 2022-06-02 12:10:28 -04:00
Dmitry Gozman d00efa0dfe
feat(expect): add ignoreCase option to toHaveText and toContainText (#14534) 2022-06-02 05:52:53 -07:00
Max Schmitt 77537d6b59
docs(dotnet): enable request interception (#14517) 2022-05-31 17:46:16 +02:00
Yury Semikhatsky c1aecc7d50
docs: maxDiffPixels description typo (#14456) 2022-05-29 09:46:06 -07:00
Andrey Lushnikov 3fd435d1d3
docs: fix docs for toHaveScreenshot (#14280) 2022-05-24 10:54:32 -07:00
Max Schmitt 7f640d8a49
docs(dotnet): add API testing (#13889) 2022-05-23 22:12:57 +03:00
Yury Semikhatsky 3c6146c9ec
docs: give value parameter proper name (#14256) 2022-05-18 09:59:07 -07:00
Max Schmitt 9256de5f48
chore: fix wrong toHaveScreenshot defaults in docs (#14200) 2022-05-16 22:26:23 +03:00
Pavel Feldman 56a5f2c506
fix(types): fix the toHaveScreenshot types (#14174)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-05-16 07:53:46 -07:00
Dmitry Gozman 0e2855348c
feat(locators): remove layout locators (#14129) 2022-05-12 18:50:19 +01:00
Max Schmitt 2844623109
docs: add route class -> networking guide reference (#14092) 2022-05-11 16:07:00 +01:00
Yury Semikhatsky 3dc5a7c05a
docs: fix method name in java example (#14036) 2022-05-09 09:18:19 -07:00
Andrey Lushnikov 5aa82dc5e4
chore: un-experiment expect(pageOrLocator).toHaveScreenshot() (#14033)
This patch un-experiments `expect(pageOrLocator).toHaveScreenshot()`
method.

Fixes #13526
2022-05-09 08:34:03 -07:00
Dmitry Gozman 6931d89eaf
feat(locators): rename locator.that to locator.filter (#14025) 2022-05-08 21:59:40 +01:00
Dmitry Gozman c3cf7ee4a7
feat(layout locators): remove maxDistance option (#14013) 2022-05-08 07:18:16 +01:00
Andrey Lushnikov 5a5bb36d28
chore: nuke "fonts" screenshot option (#14004)
It was never released since it wasn't working as expected on WebKit WPE.

Fixes #12839
2022-05-06 17:54:17 -07:00
Dmitry Gozman 54dd6d01e5
feat(locator): layout options (leftOf, rightOf, above, below, near) (#13821)
This also includes corresponding selector engines `left-of` and others,
modeled after existing `has` selector engine.
2022-05-03 10:33:33 +01:00
Dmitry Gozman dc3f2d26c4
docs: add details to the element screenshot methods (#13847) 2022-04-29 17:36:09 +01:00
Max Schmitt a0c24c01c8
chore: fix docs links for .NET roll (#13787) 2022-04-27 16:06:30 +02:00
Dmitry Gozman 97750ccf9a
feat: locator.that (#13731)
Filters existing locator by options, currently `has` and `hasText`.
2022-04-25 20:06:18 +01:00
Dmitry Gozman d2bdb1d7cf
docs: explain label retargeting in selectors doc and some input actions (#13725) 2022-04-25 13:55:41 +01:00
Max Schmitt 4a3180aca9
chore: make Android host option configurable (#13685) 2022-04-21 22:16:42 +02:00
Guriy Samarin cde7c5df44
docs(dotnet): migrate to top-level style code snippets (#13559) 2022-04-19 20:23:26 +02:00
Yury Semikhatsky 0a401b2d86
docs: clarify semantics of redirected response (#13636) 2022-04-19 09:36:38 -07:00
Yury Semikhatsky ed0dcdabc9
docs: clarify toBeDisabled behavior (#13616) 2022-04-18 17:06:01 -07:00
Dmitry Gozman c86c2e8762
feat: restore toHaveScreenshot as experimental feature (#13549)
- Restore docs.
- Make `TestConfig.expect` generated.
- Allow experimental properties with "e" marker: `- foo e<float>`.
2022-04-14 13:22:42 -07:00
Dmitry Gozman 20dcc45afa
feat: support experimental doc entries (#13446)
feat: support experimental doc entries

- Params/options/members are marked as experimental in the docs.
- `experimental.d.ts` is generated that contains all types and
  includes experimental features.
- `experimental.d.ts` is references in our tests so that we
  can test experimental features.
- `fonts` option is restored as experimental.
2022-04-13 16:13:30 -07:00
Dmitry Gozman 1e1df6395f
chore: generate expect types (#13439) 2022-04-11 10:42:19 -07:00
Yury Semikhatsky 1ee42a366d
docs: mark fetch params as optional again (#13479) 2022-04-11 10:01:32 -07:00
kaivean d65263f151
feat(android): allow getting webviews by socket name (#13248) 2022-04-08 20:52:16 +02:00
Yury Semikhatsky 10b8a8b199
docs(java): clarify source list format (#13431) 2022-04-08 10:44:48 -07:00
Steve Zhang de518338ce
docs: fix class-coverage snippet for v8toIstanbul (#13371)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-04-07 18:34:45 +02:00
Dmitry Gozman c68f57d2d0
docs: mark optional properties/arguments explicitly with "?" (#13369)
Previously, we were guessing whether something is optional from the
comment (looking for stuff like "defaults to" or "optional").

To remove this error-prone technique, every optional property or
argument (but not option) is explicitly marked with "?".
2022-04-06 19:02:10 -07:00
Akul Srivastava d9d826b7f6
docs: fixes typo (#13094)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-04-06 12:00:51 +02:00
Dmitry Gozman e31a5b690a
chore: unrelease toHaveScreenshot and screenshotsDir (#13304) 2022-04-05 08:34:51 -07:00
Max Schmitt cb4fba5e56
docs: fix toMatchSnapshot optional name usage (#13321) 2022-04-05 15:34:04 +02:00
Dmitry Gozman a09b8dfa36
chore: unrelease 'fonts' screenshot option (#13300) 2022-04-04 14:51:11 -07:00
Dmitry Gozman 4e1fb1728f
docs: small clarifications to hasText and has-text (#13298) 2022-04-04 13:18:03 -07:00
Pavel Feldman 8232497c88
feat(electron): expose app process(), detach on exit (#13280) 2022-04-04 11:50:46 -07:00
kaivean 5d2e8918d8
feat(android): add androidDevice.options.omitDriverInstall (#13249) 2022-04-02 16:00:38 -07:00
Dmitry Gozman a200fe3528
feat(screenshot): rename "size" option to "scale" (#13254)
Drive-by: fix `caret` handling in `toHaveScreenshot`.
2022-04-01 12:28:40 -07:00
Yury Semikhatsky 7d7fe3c618
fix(route): remove cors option, compare origin (#13231) 2022-03-31 19:21:21 -07:00
Andrey Lushnikov a9989852d5
feat(vrt): new option "caret" for taking screenshots (#13164)
This has two values:
- `"hide"` to hide input caret for taking screenshot
- `"initial"` to keep caret behavior unchanged

Defaults to `"hide"`.

Fixes #12643
2022-03-29 17:48:13 -07:00
Dmitry Gozman eb09306db2
feat(connect): add connectOptions.timeout (#13163) 2022-03-29 15:03:43 -07:00
Yury Semikhatsky 5734c18ef8
feat(route): add cors header in route.fulfill (#12943) 2022-03-25 14:56:57 -07:00
Max Schmitt c8cc62a2e6
chore: add link validation for docs (#13047) 2022-03-25 19:30:45 +01:00
Andrew Hayward ab39cfcb18
docs: fixing example code in accessibility API docs (#12664)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-03-23 11:50:35 +01:00
Max Schmitt 4aa7677f98
docs(dotnet): fix EvalueHandleAsync typo (#12920) 2022-03-22 16:36:21 +01:00
Yury Semikhatsky 0adf5536af
docs(fetch): clarify cookie handling (#12892) 2022-03-21 13:20:17 -07:00
Max Schmitt 01beb6310a
docs: mention locator.nth is zero based (#12750)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2022-03-14 21:06:44 +01:00
Yury Semikhatsky 19de9cacc3
docs: delete verification guide (#12698) 2022-03-12 09:32:54 -08:00
Andrey Lushnikov b51157bdea
feat: bring back maxDiffPixels in toMatchSnapshot (#12627)
This patch reverts 2 commits that removed the feature from the method:
- "fix: explicitly ignore maxDiffPixels in toMatchSnapshot (#12570)"
  commit b8af8458d6.
- "chore: remove `maxDiffPixels` from toMatchSnapshot (#12539)"
  commit a3dff45974.
2022-03-10 18:41:16 -08:00
Andrey Lushnikov 42765804bc
chore: add "allow" as a default value for animations. (#12663) 2022-03-10 17:15:36 -08:00
Andrey Lushnikov 49e66c7f08
feat(screenshot): introduce new "fonts" option for screenshots (#12661)
This option will wait for webfonts to load before taking screenshots.
2022-03-10 16:54:36 -08:00
Yury Semikhatsky cf643ff04c
docs: remove unsupported permission "push" from docs (#12654) 2022-03-10 14:00:25 -08:00
Dmitry Gozman a388bb2302
feat(screenshot): size:'css'|'device' option (#12634)
With this experimental option, screenshot dimensions are in CSS pixels,
not physical device pixels, effectively ignoring the device scale factor.
2022-03-10 13:07:10 -08:00
Yury Semikhatsky 79c8746fd2
docs: add name for screenshot animations option (#12601) 2022-03-08 16:02:31 -08:00
Andrey Lushnikov a3dff45974
chore: remove maxDiffPixels from toMatchSnapshot (#12539)
References #12441
2022-03-04 18:27:04 -08:00
Andrey Lushnikov 4953fc4845
chore: introduce toHaveScreenshot configuration options (#12507)
References https://github.com/microsoft/playwright/issues/12441
2022-03-04 17:30:43 -08: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
Andrey Lushnikov b45c788a33
fix(disable-animations): rename boolean to enum (#12503)
Enums are more flexible in the long run since they let us easily
extend API.

References #12441
2022-03-04 11:02:59 -08:00
Andrey Lushnikov 279e579097
chore: address pixelCount and pixelRatio review comments (#12501)
- documentation fixes
- rename pixelCount to maxDiffPixels
- rename pixelRatio to maxDiffPixelRatio
2022-03-03 23:17:31 -08:00
Max Schmitt 42b9fc1cd9
docs(dotnet): move Expect to method on harness (#12498) 2022-03-03 23:05:13 +01:00
Yury Semikhatsky b96bbc6ad7
docs: simplify test-assertions.md, avoid duplication (#12475) 2022-03-03 10:06:14 -08:00
Yury Semikhatsky 5db93e6ddf
docs: asertions.not is a property (#12474) 2022-03-02 15:03:33 -08:00
Yury Semikhatsky a413c0f94c
docs: restore assertions timeout option in js (#12467) 2022-03-02 12:43:16 -08: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
Max Schmitt b8728248fa
docs: merge assertions with verification doc (#12361) 2022-02-25 22:58:41 +01:00
Max Schmitt 52932172e7
docs(python): fix set_viewport_size in emulation.md (#12271) 2022-02-22 20:15:46 +01:00
Max Schmitt 768242db12
docs(dotnet): enable web-first assertions (#12113) 2022-02-21 14:01:53 +01: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
Max Schmitt 2815180162 docs(python): enable Route.fulfill.response 2022-02-11 15:26:02 +01:00
Andrey Lushnikov 3c88d4126c
docs: move common screenshot options to params.md (#12008) 2022-02-10 12:31:17 -08:00
Andrey Lushnikov 6f87955243
feat: introduce disableAnimations option for screenshots (#11870)
This option stops all kinds of CSS animations while doing screenshot:
- CSS animations
- CSS transitions
- Web Animations

Animations get different treatment depending on animation duration:
- finite animations are fast-forwarded to its end, issuing the
  `transitionend` event.
- Infinite animations are resetted to its beginning, and then
  resumed after the screenshot.

References #9938, fixes #11912
2022-02-09 12:52:11 -08:00
Pavel Feldman 3a898c285e docs: fix python snippet 2022-02-08 08:02:28 -08:00
Aarni Koskela 6881db6817
docs: fix typo in Python APIRequestContext example (#11861)
`playwright.chromium` should be `p.chromium`, etc.
2022-02-04 16:36:30 +01: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
Yury Semikhatsky e7bd62f202
docs(electron): minimal version (#11792) 2022-02-01 14:45:30 -08:00
Caio Agiani b6b60decdf
fix: typos (#11789) 2022-02-01 11:09:41 -08:00
Yury Semikhatsky 129d9d3643
docs(tracing): clarify capture semantics (#11756) 2022-01-31 11:44:10 -08:00
Leonardo Henrique Tsuda 7dc2dce709
fix response status assertion on python example (#11723) 2022-01-28 11:50:14 -08:00
Meir Blachman 5cbedf8823
docs: fix frame locator docs for python sync (#11689) 2022-01-28 16:41:13 +01:00
Yury Semikhatsky b436fbbbf4
docs(java): route.fulfill with APIResponse (#11711) 2022-01-27 15:43:38 -08:00
Dmitry Gozman 687a16b848
feat(locator): introduce locator.page() getter (#11630) 2022-01-26 07:58:58 -08:00
Max Schmitt a13f71d328
docs(python): enable Python response assertions (#11609) 2022-01-25 18:53:49 +01:00
Andrey Lushnikov 82c8baf9f6
docs: add Java 1.18 release notes (#11477) 2022-01-19 09:25:52 -08:00
Max Schmitt 4fa7aa0ff7
docs(python): enable tracing sources collection (#11453) 2022-01-18 13:05:59 +01:00
Max Schmitt 60e7caf91c
docs(dotnet): enable collecting tracing sources (#11410) 2022-01-16 17:57:01 +01:00
Dmitry Gozman 73fed66896
docs: add comments to Promise.all snippets with explanation (#11379)
Drive-by: more locators.
2022-01-13 10:38:22 -08:00
Andrey Lushnikov 2a0930c7a4
docs: clarification about trailing slash in docs (#11326)
Fixes #10557
2022-01-11 07:50:58 -08:00
Pavel Feldman 303d49e8de
docs: add a toHaveClass hint (#11249) 2022-01-07 09:13:46 -08:00
Yury Semikhatsky 670d6c3e27
docs: range boundary for [200..299] (#11232) 2022-01-06 15:46:08 -08:00
Yury Semikhatsky d629fe57ab
docs: make toBeOK async, expose in java (#11227) 2022-01-06 14:40:44 -08:00