@serenity-js/playwright 3.25.0 → 3.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +1 -1
- package/lib/PlaywrightOptions.d.ts +2 -2
- package/lib/screenplay/abilities/BrowseTheWebWithPlaywright.d.ts +24 -23
- package/lib/screenplay/abilities/BrowseTheWebWithPlaywright.d.ts.map +1 -1
- package/lib/screenplay/abilities/BrowseTheWebWithPlaywright.js +24 -23
- package/lib/screenplay/abilities/BrowseTheWebWithPlaywright.js.map +1 -1
- package/lib/screenplay/models/PlaywrightBrowsingSession.d.ts +2 -2
- package/lib/screenplay/models/PlaywrightBrowsingSession.js +1 -1
- package/lib/screenplay/models/PlaywrightCookie.d.ts +1 -1
- package/lib/screenplay/models/PlaywrightCookie.js +1 -1
- package/lib/screenplay/models/PlaywrightModalDialogHandler.d.ts +1 -1
- package/lib/screenplay/models/PlaywrightModalDialogHandler.js +1 -1
- package/lib/screenplay/models/PlaywrightPage.d.ts +1 -1
- package/lib/screenplay/models/PlaywrightPage.js +1 -1
- package/lib/screenplay/models/PlaywrightPageElement.d.ts +1 -1
- package/lib/screenplay/models/PlaywrightPageElement.js +1 -1
- package/lib/screenplay/models/locators/PlaywrightLocator.d.ts +1 -1
- package/lib/screenplay/models/locators/PlaywrightLocator.js +1 -1
- package/lib/screenplay/models/locators/PlaywrightRootLocator.d.ts +1 -1
- package/lib/screenplay/models/locators/PlaywrightRootLocator.js +1 -1
- package/package.json +4 -4
- package/src/PlaywrightOptions.ts +2 -2
- package/src/screenplay/abilities/BrowseTheWebWithPlaywright.ts +24 -23
- package/src/screenplay/models/PlaywrightBrowsingSession.ts +2 -2
- package/src/screenplay/models/PlaywrightCookie.ts +1 -1
- package/src/screenplay/models/PlaywrightModalDialogHandler.ts +1 -1
- package/src/screenplay/models/PlaywrightPage.ts +1 -1
- package/src/screenplay/models/PlaywrightPageElement.ts +1 -1
- package/src/screenplay/models/locators/PlaywrightLocator.ts +1 -1
- package/src/screenplay/models/locators/PlaywrightRootLocator.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.25.1](https://github.com/serenity-js/serenity-js/compare/v3.25.0...v3.25.1) (2024-07-10)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **core:** all the API docs now link to the online Serenity/JS API documentation ([f8f451d](https://github.com/serenity-js/serenity-js/commit/f8f451dffdb4caaa2e31a860f59d59470f4856ad))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [3.25.0](https://github.com/serenity-js/serenity-js/compare/v3.24.1...v3.25.0) (2024-07-03)
|
|
7
18
|
|
|
8
19
|
|
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ of complex software systems faster, more collaborative and easier to scale.
|
|
|
17
17
|
👋 Join the Serenity/JS Community!
|
|
18
18
|
- Meet other Serenity/JS developers and maintainers on the [Serenity/JS Community chat channel](https://matrix.to/#/#serenity-js:gitter.im),
|
|
19
19
|
- Find answers to your Serenity/JS questions on the [Serenity/JS Forum](https://github.com/orgs/serenity-js/discussions/categories/how-do-i),
|
|
20
|
-
- Learn how to [contribute to Serenity/JS](https://serenity-js.org/contributing),
|
|
20
|
+
- Learn how to [contribute to Serenity/JS](https://serenity-js.org/community/contributing/),
|
|
21
21
|
- Support the project and gain access to [Serenity/JS Playbooks](https://github.com/serenity-js/playbooks) by becoming a [Serenity/JS GitHub Sponsor](https://github.com/sponsors/serenity-js)!
|
|
22
22
|
|
|
23
23
|
## Serenity/JS Playwright
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type * as playwright from 'playwright-core';
|
|
2
2
|
/**
|
|
3
|
-
* Playwright-specific options used to configure the ability to
|
|
3
|
+
* Playwright-specific options used to configure the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/)
|
|
4
4
|
*
|
|
5
5
|
* ## Learn more
|
|
6
6
|
* - [Playwright `Browser.newContext` options](https://playwright.dev/docs/api/class-browser#browser-new-context)
|
|
@@ -9,7 +9,7 @@ import type * as playwright from 'playwright-core';
|
|
|
9
9
|
*/
|
|
10
10
|
export interface PlaywrightOptions extends playwright.BrowserContextOptions {
|
|
11
11
|
/**
|
|
12
|
-
* Changes the default maximum navigation time for the browser context used by
|
|
12
|
+
* Changes the default maximum navigation time for the browser context used by [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/)
|
|
13
13
|
*
|
|
14
14
|
* #### Learn more
|
|
15
15
|
* - [Playwright `browserContext.setDefaultNavigationTimeout(timeout)`](https://playwright.dev/docs/api/class-browsercontext#browser-context-set-default-navigation-timeout)
|
|
@@ -3,18 +3,18 @@ import { BrowseTheWeb } from '@serenity-js/web';
|
|
|
3
3
|
import * as playwright from 'playwright-core';
|
|
4
4
|
import type { PlaywrightOptions } from '../../PlaywrightOptions';
|
|
5
5
|
/**
|
|
6
|
-
* This implementation of the
|
|
7
|
-
* enables the
|
|
6
|
+
* This implementation of the [ability](https://serenity-js.org/api/core/class/Ability/) to [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
7
|
+
* enables the [`Actor`](https://serenity-js.org/api/core/class/Actor/) to interact with web front-ends using [Playwright](https://playwright.dev/).
|
|
8
8
|
*
|
|
9
9
|
* ## Using Playwright to `BrowseTheWeb`
|
|
10
10
|
*
|
|
11
|
-
* In the example below, we configure the ability to
|
|
12
|
-
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS
|
|
11
|
+
* In the example below, we configure the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/) with a Playwright
|
|
12
|
+
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
13
13
|
* can create a new [`BrowserContext`](https://playwright.dev/docs/api/class-browsercontext) and
|
|
14
14
|
* instantiate Playwright [`page`s](https://playwright.dev/docs/api/class-page) as and when needed.
|
|
15
15
|
*
|
|
16
16
|
* This configuration allows Serenity/JS to control the process of launching and shutting down browser instances
|
|
17
|
-
* and is useful when your test runner, e.g. [Cucumber.js](/api/cucumber), doesn't offer this functionality.
|
|
17
|
+
* and is useful when your test runner, e.g. [Cucumber.js](https://serenity-js.org/api/cucumber), doesn't offer this functionality.
|
|
18
18
|
*
|
|
19
19
|
* ```ts
|
|
20
20
|
* import { actorCalled } from '@serenity-js/core'
|
|
@@ -40,17 +40,17 @@ import type { PlaywrightOptions } from '../../PlaywrightOptions';
|
|
|
40
40
|
*
|
|
41
41
|
* ## Using `BrowseTheWeb` with an existing Playwright `page`
|
|
42
42
|
*
|
|
43
|
-
* Test runners like [Playwright Test](/api/playwright-test/) manage Playwright browsers for you
|
|
43
|
+
* Test runners like [Playwright Test](https://serenity-js.org/api/playwright-test/) manage Playwright browsers for you
|
|
44
44
|
* and offer a [`page`](https://playwright.dev/docs/api/class-page) instance you can
|
|
45
|
-
* inject into the ability to
|
|
45
|
+
* inject into the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/).
|
|
46
46
|
*
|
|
47
|
-
* Note that [Serenity/JS Playwright Test module](/api/playwright-test/)
|
|
48
|
-
* automatically configures all your
|
|
49
|
-
* with an ability to
|
|
50
|
-
* so you don't need to do it by hand unless you want to override the
|
|
47
|
+
* Note that [Serenity/JS Playwright Test module](https://serenity-js.org/api/playwright-test/)
|
|
48
|
+
* automatically configures all your [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
49
|
+
* with an ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/),
|
|
50
|
+
* so you don't need to do it by hand unless you want to override the [default configuration](https://serenity-js.org/api/playwright-test/interface/SerenityOptions/).
|
|
51
51
|
*
|
|
52
|
-
* The example below demonstrates how to use the
|
|
53
|
-
* override the default
|
|
52
|
+
* The example below demonstrates how to use the [`BrowseTheWebWithPlaywright.usingPage`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/#usingPage) API and
|
|
53
|
+
* override the default [cast](https://serenity-js.org/api/core/class/Cast/) of actors.
|
|
54
54
|
*
|
|
55
55
|
* ```ts title="specs/example.spec.ts"
|
|
56
56
|
* import { describe, it, test } from '@playwright/playwright-test'
|
|
@@ -89,12 +89,13 @@ import type { PlaywrightOptions } from '../../PlaywrightOptions';
|
|
|
89
89
|
*
|
|
90
90
|
* ## Configuring Playwright
|
|
91
91
|
*
|
|
92
|
-
* If you're using Serenity/JS with [Playwright Test](/handbook/test-runners/playwright-test/),
|
|
92
|
+
* If you're using Serenity/JS with [Playwright Test](https://serenity-js.org/handbook/test-runners/playwright-test/),
|
|
93
93
|
* Serenity/JS will automatically pick up your configuration from the [`playwright.config.ts`](https://playwright.dev/docs/test-configuration) file.
|
|
94
94
|
*
|
|
95
|
-
* With other [test runners](/handbook/test-runners/), you can configure Playwright by:
|
|
95
|
+
* With other [test runners](https://serenity-js.org/handbook/test-runners/), you can configure Playwright by:
|
|
96
96
|
* - providing the browser-level configuration when calling [`BrowserType.launch`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch),
|
|
97
|
-
* - providing the browser context-level
|
|
97
|
+
* - providing the browser context-level [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/)
|
|
98
|
+
* when initialising the ability to `BrowseTheWebWithPlaywright`.
|
|
98
99
|
*
|
|
99
100
|
* The code snippet below demonstrates how to configure the browser and some popular browser context options,
|
|
100
101
|
* such as
|
|
@@ -134,16 +135,16 @@ import type { PlaywrightOptions } from '../../PlaywrightOptions';
|
|
|
134
135
|
* )
|
|
135
136
|
* ```
|
|
136
137
|
*
|
|
137
|
-
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS
|
|
138
|
+
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/), such as:
|
|
138
139
|
* - `defaultNavigationTimeout`, which changes the default maximum navigation timeout for the browser context,
|
|
139
140
|
* - `defaultTimeout`, which changes the default maximum time for all Playwright methods accepting the `timeout` option.
|
|
140
141
|
*
|
|
141
142
|
* ## Learn more
|
|
142
143
|
* - [Full list of Playwright `BrowserContextOptions`](https://playwright.dev/docs/api/class-browser#browser-new-context)
|
|
143
144
|
* - [Playwright website](https://playwright.dev/)
|
|
144
|
-
* -
|
|
145
|
-
* -
|
|
146
|
-
* -
|
|
145
|
+
* - [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
146
|
+
* - [`Ability`](https://serenity-js.org/api/core/class/Ability/)
|
|
147
|
+
* - [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
147
148
|
*
|
|
148
149
|
* @group Abilities
|
|
149
150
|
*/
|
|
@@ -151,11 +152,11 @@ export declare class BrowseTheWebWithPlaywright extends BrowseTheWeb<playwright.
|
|
|
151
152
|
static using(browser: playwright.Browser, options?: PlaywrightOptions): BrowseTheWebWithPlaywright;
|
|
152
153
|
static usingPage(page: playwright.Page, options?: PlaywrightOptions): BrowseTheWebWithPlaywright;
|
|
153
154
|
/**
|
|
154
|
-
* Automatically closes any open
|
|
155
|
+
* Automatically closes any open [pages](https://serenity-js.org/api/web/class/Page/) when the [SceneFinishes](https://serenity-js.org/api/core-events/class/SceneFinishes/)
|
|
155
156
|
*
|
|
156
157
|
* #### Learn more
|
|
157
|
-
* -
|
|
158
|
-
* -
|
|
158
|
+
* - [`PlaywrightBrowsingSession.closeAllPages`](https://serenity-js.org/api/playwright/class/PlaywrightBrowsingSession/#closeAllPages)
|
|
159
|
+
* - [`Discardable`](https://serenity-js.org/api/core/interface/Discardable/)
|
|
159
160
|
*/
|
|
160
161
|
discard(): Promise<void>;
|
|
161
162
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowseTheWebWithPlaywright.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWebWithPlaywright.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAMjE
|
|
1
|
+
{"version":3,"file":"BrowseTheWebWithPlaywright.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWebWithPlaywright.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAMjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiJG;AACH,qBAAa,0BAA2B,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,CAAE,YAAW,WAAW;IAEnG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,0BAA0B;IAIlG,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,0BAA0B;IAIhG;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAGjC"}
|
|
@@ -28,18 +28,18 @@ const web_1 = require("@serenity-js/web");
|
|
|
28
28
|
const playwright = __importStar(require("playwright-core"));
|
|
29
29
|
const models_1 = require("../models");
|
|
30
30
|
/**
|
|
31
|
-
* This implementation of the
|
|
32
|
-
* enables the
|
|
31
|
+
* This implementation of the [ability](https://serenity-js.org/api/core/class/Ability/) to [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
32
|
+
* enables the [`Actor`](https://serenity-js.org/api/core/class/Actor/) to interact with web front-ends using [Playwright](https://playwright.dev/).
|
|
33
33
|
*
|
|
34
34
|
* ## Using Playwright to `BrowseTheWeb`
|
|
35
35
|
*
|
|
36
|
-
* In the example below, we configure the ability to
|
|
37
|
-
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS
|
|
36
|
+
* In the example below, we configure the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/) with a Playwright
|
|
37
|
+
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
38
38
|
* can create a new [`BrowserContext`](https://playwright.dev/docs/api/class-browsercontext) and
|
|
39
39
|
* instantiate Playwright [`page`s](https://playwright.dev/docs/api/class-page) as and when needed.
|
|
40
40
|
*
|
|
41
41
|
* This configuration allows Serenity/JS to control the process of launching and shutting down browser instances
|
|
42
|
-
* and is useful when your test runner, e.g. [Cucumber.js](/api/cucumber), doesn't offer this functionality.
|
|
42
|
+
* and is useful when your test runner, e.g. [Cucumber.js](https://serenity-js.org/api/cucumber), doesn't offer this functionality.
|
|
43
43
|
*
|
|
44
44
|
* ```ts
|
|
45
45
|
* import { actorCalled } from '@serenity-js/core'
|
|
@@ -65,17 +65,17 @@ const models_1 = require("../models");
|
|
|
65
65
|
*
|
|
66
66
|
* ## Using `BrowseTheWeb` with an existing Playwright `page`
|
|
67
67
|
*
|
|
68
|
-
* Test runners like [Playwright Test](/api/playwright-test/) manage Playwright browsers for you
|
|
68
|
+
* Test runners like [Playwright Test](https://serenity-js.org/api/playwright-test/) manage Playwright browsers for you
|
|
69
69
|
* and offer a [`page`](https://playwright.dev/docs/api/class-page) instance you can
|
|
70
|
-
* inject into the ability to
|
|
70
|
+
* inject into the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/).
|
|
71
71
|
*
|
|
72
|
-
* Note that [Serenity/JS Playwright Test module](/api/playwright-test/)
|
|
73
|
-
* automatically configures all your
|
|
74
|
-
* with an ability to
|
|
75
|
-
* so you don't need to do it by hand unless you want to override the
|
|
72
|
+
* Note that [Serenity/JS Playwright Test module](https://serenity-js.org/api/playwright-test/)
|
|
73
|
+
* automatically configures all your [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
74
|
+
* with an ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/),
|
|
75
|
+
* so you don't need to do it by hand unless you want to override the [default configuration](https://serenity-js.org/api/playwright-test/interface/SerenityOptions/).
|
|
76
76
|
*
|
|
77
|
-
* The example below demonstrates how to use the
|
|
78
|
-
* override the default
|
|
77
|
+
* The example below demonstrates how to use the [`BrowseTheWebWithPlaywright.usingPage`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/#usingPage) API and
|
|
78
|
+
* override the default [cast](https://serenity-js.org/api/core/class/Cast/) of actors.
|
|
79
79
|
*
|
|
80
80
|
* ```ts title="specs/example.spec.ts"
|
|
81
81
|
* import { describe, it, test } from '@playwright/playwright-test'
|
|
@@ -114,12 +114,13 @@ const models_1 = require("../models");
|
|
|
114
114
|
*
|
|
115
115
|
* ## Configuring Playwright
|
|
116
116
|
*
|
|
117
|
-
* If you're using Serenity/JS with [Playwright Test](/handbook/test-runners/playwright-test/),
|
|
117
|
+
* If you're using Serenity/JS with [Playwright Test](https://serenity-js.org/handbook/test-runners/playwright-test/),
|
|
118
118
|
* Serenity/JS will automatically pick up your configuration from the [`playwright.config.ts`](https://playwright.dev/docs/test-configuration) file.
|
|
119
119
|
*
|
|
120
|
-
* With other [test runners](/handbook/test-runners/), you can configure Playwright by:
|
|
120
|
+
* With other [test runners](https://serenity-js.org/handbook/test-runners/), you can configure Playwright by:
|
|
121
121
|
* - providing the browser-level configuration when calling [`BrowserType.launch`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch),
|
|
122
|
-
* - providing the browser context-level
|
|
122
|
+
* - providing the browser context-level [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/)
|
|
123
|
+
* when initialising the ability to `BrowseTheWebWithPlaywright`.
|
|
123
124
|
*
|
|
124
125
|
* The code snippet below demonstrates how to configure the browser and some popular browser context options,
|
|
125
126
|
* such as
|
|
@@ -159,16 +160,16 @@ const models_1 = require("../models");
|
|
|
159
160
|
* )
|
|
160
161
|
* ```
|
|
161
162
|
*
|
|
162
|
-
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS
|
|
163
|
+
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/), such as:
|
|
163
164
|
* - `defaultNavigationTimeout`, which changes the default maximum navigation timeout for the browser context,
|
|
164
165
|
* - `defaultTimeout`, which changes the default maximum time for all Playwright methods accepting the `timeout` option.
|
|
165
166
|
*
|
|
166
167
|
* ## Learn more
|
|
167
168
|
* - [Full list of Playwright `BrowserContextOptions`](https://playwright.dev/docs/api/class-browser#browser-new-context)
|
|
168
169
|
* - [Playwright website](https://playwright.dev/)
|
|
169
|
-
* -
|
|
170
|
-
* -
|
|
171
|
-
* -
|
|
170
|
+
* - [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
171
|
+
* - [`Ability`](https://serenity-js.org/api/core/class/Ability/)
|
|
172
|
+
* - [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
172
173
|
*
|
|
173
174
|
* @group Abilities
|
|
174
175
|
*/
|
|
@@ -180,11 +181,11 @@ class BrowseTheWebWithPlaywright extends web_1.BrowseTheWeb {
|
|
|
180
181
|
return new BrowseTheWebWithPlaywright(new models_1.PlaywrightBrowsingSessionWithPage(page, options, playwright.selectors));
|
|
181
182
|
}
|
|
182
183
|
/**
|
|
183
|
-
* Automatically closes any open
|
|
184
|
+
* Automatically closes any open [pages](https://serenity-js.org/api/web/class/Page/) when the [SceneFinishes](https://serenity-js.org/api/core-events/class/SceneFinishes/)
|
|
184
185
|
*
|
|
185
186
|
* #### Learn more
|
|
186
|
-
* -
|
|
187
|
-
* -
|
|
187
|
+
* - [`PlaywrightBrowsingSession.closeAllPages`](https://serenity-js.org/api/playwright/class/PlaywrightBrowsingSession/#closeAllPages)
|
|
188
|
+
* - [`Discardable`](https://serenity-js.org/api/core/interface/Discardable/)
|
|
188
189
|
*/
|
|
189
190
|
async discard() {
|
|
190
191
|
await this.session.closeAllPages();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowseTheWebWithPlaywright.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWebWithPlaywright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0CAAgD;AAChD,4DAA8C;AAG9C,sCAGmB;AAEnB
|
|
1
|
+
{"version":3,"file":"BrowseTheWebWithPlaywright.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/BrowseTheWebWithPlaywright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0CAAgD;AAChD,4DAA8C;AAG9C,sCAGmB;AAEnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiJG;AACH,MAAa,0BAA2B,SAAQ,kBAAgC;IAE5E,MAAM,CAAC,KAAK,CAAC,OAA2B,EAAE,OAA2B;QACjE,OAAO,IAAI,0BAA0B,CAAC,IAAI,6CAAoC,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5H,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,IAAqB,EAAE,OAA2B;QAC/D,OAAO,IAAI,0BAA0B,CAAC,IAAI,0CAAiC,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IACtH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO;QACT,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IACvC,CAAC;CACJ;AApBD,gEAoBC"}
|
|
@@ -5,7 +5,7 @@ import { type PlaywrightOptions } from '../../PlaywrightOptions';
|
|
|
5
5
|
import { SerenitySelectorEngines } from '../../selector-engines';
|
|
6
6
|
import { PlaywrightPage } from '../models';
|
|
7
7
|
/**
|
|
8
|
-
* Playwright-specific implementation of
|
|
8
|
+
* Playwright-specific implementation of [`BrowsingSession`](https://serenity-js.org/api/web/class/BrowsingSession/).
|
|
9
9
|
*
|
|
10
10
|
* @group Models
|
|
11
11
|
*/
|
|
@@ -16,7 +16,7 @@ export declare abstract class PlaywrightBrowsingSession extends BrowsingSession<
|
|
|
16
16
|
private currentPlaywrightBrowserContext;
|
|
17
17
|
protected constructor(browserContextOptions: PlaywrightOptions, selectors: playwright.Selectors);
|
|
18
18
|
/**
|
|
19
|
-
* Returns
|
|
19
|
+
* Returns [basic meta-data](https://serenity-js.org/api/web/interface/BrowserCapabilities/) about the browser associated with this ability.
|
|
20
20
|
*
|
|
21
21
|
* **Please note** that since Playwright does not expose information about the operating system
|
|
22
22
|
* the tests are running on, **Serenity/JS assumes that the tests are running locally**
|
|
@@ -6,7 +6,7 @@ const web_1 = require("@serenity-js/web");
|
|
|
6
6
|
const selector_engines_1 = require("../../selector-engines");
|
|
7
7
|
const models_1 = require("../models");
|
|
8
8
|
/**
|
|
9
|
-
* Playwright-specific implementation of
|
|
9
|
+
* Playwright-specific implementation of [`BrowsingSession`](https://serenity-js.org/api/web/class/BrowsingSession/).
|
|
10
10
|
*
|
|
11
11
|
* @group Models
|
|
12
12
|
*/
|
|
@@ -2,7 +2,7 @@ import type { CookieData } from '@serenity-js/web';
|
|
|
2
2
|
import { Cookie } from '@serenity-js/web';
|
|
3
3
|
import type * as playwright from 'playwright-core';
|
|
4
4
|
/**
|
|
5
|
-
* Playwright-specific implementation of
|
|
5
|
+
* Playwright-specific implementation of [`Cookie`](https://serenity-js.org/api/web/class/Cookie/).
|
|
6
6
|
*
|
|
7
7
|
* @group Models
|
|
8
8
|
*/
|
|
@@ -5,7 +5,7 @@ const core_1 = require("@serenity-js/core");
|
|
|
5
5
|
const web_1 = require("@serenity-js/web");
|
|
6
6
|
const tiny_types_1 = require("tiny-types");
|
|
7
7
|
/**
|
|
8
|
-
* Playwright-specific implementation of
|
|
8
|
+
* Playwright-specific implementation of [`Cookie`](https://serenity-js.org/api/web/class/Cookie/).
|
|
9
9
|
*
|
|
10
10
|
* @group Models
|
|
11
11
|
*/
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ModalDialogHandler } from '@serenity-js/web';
|
|
2
2
|
import type * as playwright from 'playwright-core';
|
|
3
3
|
/**
|
|
4
|
-
* Playwright-specific implementation of
|
|
4
|
+
* Playwright-specific implementation of [`ModalDialogHandler`](https://serenity-js.org/api/web/class/ModalDialogHandler/).
|
|
5
5
|
*
|
|
6
6
|
* @group Models
|
|
7
7
|
*/
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.PlaywrightModalDialogHandler = void 0;
|
|
4
4
|
const web_1 = require("@serenity-js/web");
|
|
5
5
|
/**
|
|
6
|
-
* Playwright-specific implementation of
|
|
6
|
+
* Playwright-specific implementation of [`ModalDialogHandler`](https://serenity-js.org/api/web/class/ModalDialogHandler/).
|
|
7
7
|
*
|
|
8
8
|
* @group Models
|
|
9
9
|
*/
|
|
@@ -8,7 +8,7 @@ import { URL } from 'url';
|
|
|
8
8
|
import type { PlaywrightOptions } from '../../PlaywrightOptions';
|
|
9
9
|
import type { PlaywrightBrowsingSession } from './PlaywrightBrowsingSession';
|
|
10
10
|
/**
|
|
11
|
-
* Playwright-specific implementation of
|
|
11
|
+
* Playwright-specific implementation of [`Page`](https://serenity-js.org/api/web/class/Page/).
|
|
12
12
|
*
|
|
13
13
|
* @group Models
|
|
14
14
|
*/
|
|
@@ -33,7 +33,7 @@ const locators_1 = require("./locators");
|
|
|
33
33
|
const PlaywrightModalDialogHandler_1 = require("./PlaywrightModalDialogHandler");
|
|
34
34
|
const PlaywrightPageElement_1 = require("./PlaywrightPageElement");
|
|
35
35
|
/**
|
|
36
|
-
* Playwright-specific implementation of
|
|
36
|
+
* Playwright-specific implementation of [`Page`](https://serenity-js.org/api/web/class/Page/).
|
|
37
37
|
*
|
|
38
38
|
* @group Models
|
|
39
39
|
*/
|
|
@@ -2,7 +2,7 @@ import type { SwitchableOrigin } from '@serenity-js/web';
|
|
|
2
2
|
import { PageElement, SelectOption } from '@serenity-js/web';
|
|
3
3
|
import type * as playwright from 'playwright-core';
|
|
4
4
|
/**
|
|
5
|
-
* Playwright-specific implementation of
|
|
5
|
+
* Playwright-specific implementation of [`PageElement`](https://serenity-js.org/api/web/class/PageElement/).
|
|
6
6
|
*
|
|
7
7
|
* @group Models
|
|
8
8
|
*/
|
|
@@ -29,7 +29,7 @@ const web_1 = require("@serenity-js/web");
|
|
|
29
29
|
const scripts = __importStar(require("@serenity-js/web/lib/scripts"));
|
|
30
30
|
const tiny_types_1 = require("tiny-types");
|
|
31
31
|
/**
|
|
32
|
-
* Playwright-specific implementation of
|
|
32
|
+
* Playwright-specific implementation of [`PageElement`](https://serenity-js.org/api/web/class/PageElement/).
|
|
33
33
|
*
|
|
34
34
|
* @group Models
|
|
35
35
|
*/
|
|
@@ -3,7 +3,7 @@ import { Locator } from '@serenity-js/web';
|
|
|
3
3
|
import type * as playwright from 'playwright-core';
|
|
4
4
|
import type { PlaywrightRootLocator } from './PlaywrightRootLocator';
|
|
5
5
|
/**
|
|
6
|
-
* Playwright-specific implementation of
|
|
6
|
+
* Playwright-specific implementation of [`Locator`](https://serenity-js.org/api/web/class/Locator/).
|
|
7
7
|
*
|
|
8
8
|
* @group Models
|
|
9
9
|
*/
|
|
@@ -7,7 +7,7 @@ const selector_engines_1 = require("../../../selector-engines");
|
|
|
7
7
|
const promised_1 = require("../../promised");
|
|
8
8
|
const PlaywrightPageElement_1 = require("../PlaywrightPageElement");
|
|
9
9
|
/**
|
|
10
|
-
* Playwright-specific implementation of
|
|
10
|
+
* Playwright-specific implementation of [`Locator`](https://serenity-js.org/api/web/class/Locator/).
|
|
11
11
|
*
|
|
12
12
|
* @group Models
|
|
13
13
|
*/
|
|
@@ -2,7 +2,7 @@ import { RootLocator } from '@serenity-js/web';
|
|
|
2
2
|
import type * as playwright from 'playwright-core';
|
|
3
3
|
import { type PageFunction } from 'playwright-core/types/structs';
|
|
4
4
|
/**
|
|
5
|
-
* Playwright-specific implementation of
|
|
5
|
+
* Playwright-specific implementation of [`RootLocator`](https://serenity-js.org/api/web/class/RootLocator/).
|
|
6
6
|
*
|
|
7
7
|
* @group Models
|
|
8
8
|
*/
|
|
@@ -5,7 +5,7 @@ const web_1 = require("@serenity-js/web");
|
|
|
5
5
|
const tiny_types_1 = require("tiny-types");
|
|
6
6
|
const promised_1 = require("../../promised");
|
|
7
7
|
/**
|
|
8
|
-
* Playwright-specific implementation of
|
|
8
|
+
* Playwright-specific implementation of [`RootLocator`](https://serenity-js.org/api/web/class/RootLocator/).
|
|
9
9
|
*
|
|
10
10
|
* @group Models
|
|
11
11
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serenity-js/playwright",
|
|
3
|
-
"version": "3.25.
|
|
3
|
+
"version": "3.25.1",
|
|
4
4
|
"description": "Serenity/JS Screenplay Pattern library for Playwright",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Jan Molak",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"node": "^16.13 || ^18.12 || ^20"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@serenity-js/core": "3.25.
|
|
48
|
-
"@serenity-js/web": "3.25.
|
|
47
|
+
"@serenity-js/core": "3.25.1",
|
|
48
|
+
"@serenity-js/web": "3.25.1",
|
|
49
49
|
"playwright-core": "1.45.1",
|
|
50
50
|
"tiny-types": "1.22.0"
|
|
51
51
|
},
|
|
@@ -59,5 +59,5 @@
|
|
|
59
59
|
"ts-node": "10.9.2",
|
|
60
60
|
"typescript": "5.2.2"
|
|
61
61
|
},
|
|
62
|
-
"gitHead": "
|
|
62
|
+
"gitHead": "450b994115cf9f1a1547ef92ac9387e0c57821ce"
|
|
63
63
|
}
|
package/src/PlaywrightOptions.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type * as playwright from 'playwright-core';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* Playwright-specific options used to configure the ability to
|
|
4
|
+
* Playwright-specific options used to configure the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/)
|
|
5
5
|
*
|
|
6
6
|
* ## Learn more
|
|
7
7
|
* - [Playwright `Browser.newContext` options](https://playwright.dev/docs/api/class-browser#browser-new-context)
|
|
@@ -11,7 +11,7 @@ import type * as playwright from 'playwright-core';
|
|
|
11
11
|
export interface PlaywrightOptions extends playwright.BrowserContextOptions {
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
* Changes the default maximum navigation time for the browser context used by
|
|
14
|
+
* Changes the default maximum navigation time for the browser context used by [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/)
|
|
15
15
|
*
|
|
16
16
|
* #### Learn more
|
|
17
17
|
* - [Playwright `browserContext.setDefaultNavigationTimeout(timeout)`](https://playwright.dev/docs/api/class-browsercontext#browser-context-set-default-navigation-timeout)
|
|
@@ -9,18 +9,18 @@ import {
|
|
|
9
9
|
} from '../models';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* This implementation of the
|
|
13
|
-
* enables the
|
|
12
|
+
* This implementation of the [ability](https://serenity-js.org/api/core/class/Ability/) to [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
13
|
+
* enables the [`Actor`](https://serenity-js.org/api/core/class/Actor/) to interact with web front-ends using [Playwright](https://playwright.dev/).
|
|
14
14
|
*
|
|
15
15
|
* ## Using Playwright to `BrowseTheWeb`
|
|
16
16
|
*
|
|
17
|
-
* In the example below, we configure the ability to
|
|
18
|
-
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS
|
|
17
|
+
* In the example below, we configure the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/) with a Playwright
|
|
18
|
+
* [`Browser`](https://playwright.dev/docs/api/class-browser) so that Serenity/JS [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
19
19
|
* can create a new [`BrowserContext`](https://playwright.dev/docs/api/class-browsercontext) and
|
|
20
20
|
* instantiate Playwright [`page`s](https://playwright.dev/docs/api/class-page) as and when needed.
|
|
21
21
|
*
|
|
22
22
|
* This configuration allows Serenity/JS to control the process of launching and shutting down browser instances
|
|
23
|
-
* and is useful when your test runner, e.g. [Cucumber.js](/api/cucumber), doesn't offer this functionality.
|
|
23
|
+
* and is useful when your test runner, e.g. [Cucumber.js](https://serenity-js.org/api/cucumber), doesn't offer this functionality.
|
|
24
24
|
*
|
|
25
25
|
* ```ts
|
|
26
26
|
* import { actorCalled } from '@serenity-js/core'
|
|
@@ -46,17 +46,17 @@ import {
|
|
|
46
46
|
*
|
|
47
47
|
* ## Using `BrowseTheWeb` with an existing Playwright `page`
|
|
48
48
|
*
|
|
49
|
-
* Test runners like [Playwright Test](/api/playwright-test/) manage Playwright browsers for you
|
|
49
|
+
* Test runners like [Playwright Test](https://serenity-js.org/api/playwright-test/) manage Playwright browsers for you
|
|
50
50
|
* and offer a [`page`](https://playwright.dev/docs/api/class-page) instance you can
|
|
51
|
-
* inject into the ability to
|
|
51
|
+
* inject into the ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/).
|
|
52
52
|
*
|
|
53
|
-
* Note that [Serenity/JS Playwright Test module](/api/playwright-test/)
|
|
54
|
-
* automatically configures all your
|
|
55
|
-
* with an ability to
|
|
56
|
-
* so you don't need to do it by hand unless you want to override the
|
|
53
|
+
* Note that [Serenity/JS Playwright Test module](https://serenity-js.org/api/playwright-test/)
|
|
54
|
+
* automatically configures all your [actors](https://serenity-js.org/api/core/class/Actor/)
|
|
55
|
+
* with an ability to [`BrowseTheWebWithPlaywright`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/),
|
|
56
|
+
* so you don't need to do it by hand unless you want to override the [default configuration](https://serenity-js.org/api/playwright-test/interface/SerenityOptions/).
|
|
57
57
|
*
|
|
58
|
-
* The example below demonstrates how to use the
|
|
59
|
-
* override the default
|
|
58
|
+
* The example below demonstrates how to use the [`BrowseTheWebWithPlaywright.usingPage`](https://serenity-js.org/api/playwright/class/BrowseTheWebWithPlaywright/#usingPage) API and
|
|
59
|
+
* override the default [cast](https://serenity-js.org/api/core/class/Cast/) of actors.
|
|
60
60
|
*
|
|
61
61
|
* ```ts title="specs/example.spec.ts"
|
|
62
62
|
* import { describe, it, test } from '@playwright/playwright-test'
|
|
@@ -95,12 +95,13 @@ import {
|
|
|
95
95
|
*
|
|
96
96
|
* ## Configuring Playwright
|
|
97
97
|
*
|
|
98
|
-
* If you're using Serenity/JS with [Playwright Test](/handbook/test-runners/playwright-test/),
|
|
98
|
+
* If you're using Serenity/JS with [Playwright Test](https://serenity-js.org/handbook/test-runners/playwright-test/),
|
|
99
99
|
* Serenity/JS will automatically pick up your configuration from the [`playwright.config.ts`](https://playwright.dev/docs/test-configuration) file.
|
|
100
100
|
*
|
|
101
|
-
* With other [test runners](/handbook/test-runners/), you can configure Playwright by:
|
|
101
|
+
* With other [test runners](https://serenity-js.org/handbook/test-runners/), you can configure Playwright by:
|
|
102
102
|
* - providing the browser-level configuration when calling [`BrowserType.launch`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch),
|
|
103
|
-
* - providing the browser context-level
|
|
103
|
+
* - providing the browser context-level [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/)
|
|
104
|
+
* when initialising the ability to `BrowseTheWebWithPlaywright`.
|
|
104
105
|
*
|
|
105
106
|
* The code snippet below demonstrates how to configure the browser and some popular browser context options,
|
|
106
107
|
* such as
|
|
@@ -140,16 +141,16 @@ import {
|
|
|
140
141
|
* )
|
|
141
142
|
* ```
|
|
142
143
|
*
|
|
143
|
-
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS
|
|
144
|
+
* Note that in addition to all the standard Playwright BrowserContextOptions, you can also provide several others defined in Serenity/JS [`PlaywrightOptions`](https://serenity-js.org/api/playwright/interface/PlaywrightOptions/), such as:
|
|
144
145
|
* - `defaultNavigationTimeout`, which changes the default maximum navigation timeout for the browser context,
|
|
145
146
|
* - `defaultTimeout`, which changes the default maximum time for all Playwright methods accepting the `timeout` option.
|
|
146
147
|
*
|
|
147
148
|
* ## Learn more
|
|
148
149
|
* - [Full list of Playwright `BrowserContextOptions`](https://playwright.dev/docs/api/class-browser#browser-new-context)
|
|
149
150
|
* - [Playwright website](https://playwright.dev/)
|
|
150
|
-
* -
|
|
151
|
-
* -
|
|
152
|
-
* -
|
|
151
|
+
* - [`BrowseTheWeb`](https://serenity-js.org/api/web/class/BrowseTheWeb/)
|
|
152
|
+
* - [`Ability`](https://serenity-js.org/api/core/class/Ability/)
|
|
153
|
+
* - [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
153
154
|
*
|
|
154
155
|
* @group Abilities
|
|
155
156
|
*/
|
|
@@ -164,11 +165,11 @@ export class BrowseTheWebWithPlaywright extends BrowseTheWeb<playwright.Locator>
|
|
|
164
165
|
}
|
|
165
166
|
|
|
166
167
|
/**
|
|
167
|
-
* Automatically closes any open
|
|
168
|
+
* Automatically closes any open [pages](https://serenity-js.org/api/web/class/Page/) when the [SceneFinishes](https://serenity-js.org/api/core-events/class/SceneFinishes/)
|
|
168
169
|
*
|
|
169
170
|
* #### Learn more
|
|
170
|
-
* -
|
|
171
|
-
* -
|
|
171
|
+
* - [`PlaywrightBrowsingSession.closeAllPages`](https://serenity-js.org/api/playwright/class/PlaywrightBrowsingSession/#closeAllPages)
|
|
172
|
+
* - [`Discardable`](https://serenity-js.org/api/core/interface/Discardable/)
|
|
172
173
|
*/
|
|
173
174
|
async discard(): Promise<void> {
|
|
174
175
|
await this.session.closeAllPages();
|
|
@@ -8,7 +8,7 @@ import { SerenitySelectorEngines } from '../../selector-engines';
|
|
|
8
8
|
import { PlaywrightCookie, PlaywrightPage } from '../models';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Playwright-specific implementation of
|
|
11
|
+
* Playwright-specific implementation of [`BrowsingSession`](https://serenity-js.org/api/web/class/BrowsingSession/).
|
|
12
12
|
*
|
|
13
13
|
* @group Models
|
|
14
14
|
*/
|
|
@@ -25,7 +25,7 @@ export abstract class PlaywrightBrowsingSession extends BrowsingSession<Playwrig
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
|
-
* Returns
|
|
28
|
+
* Returns [basic meta-data](https://serenity-js.org/api/web/interface/BrowserCapabilities/) about the browser associated with this ability.
|
|
29
29
|
*
|
|
30
30
|
* **Please note** that since Playwright does not expose information about the operating system
|
|
31
31
|
* the tests are running on, **Serenity/JS assumes that the tests are running locally**
|
|
@@ -5,7 +5,7 @@ import type * as playwright from 'playwright-core';
|
|
|
5
5
|
import { ensure, isDefined } from 'tiny-types';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* Playwright-specific implementation of
|
|
8
|
+
* Playwright-specific implementation of [`Cookie`](https://serenity-js.org/api/web/class/Cookie/).
|
|
9
9
|
*
|
|
10
10
|
* @group Models
|
|
11
11
|
*/
|
|
@@ -3,7 +3,7 @@ import { AbsentModalDialog, AcceptedModalDialog, DismissedModalDialog, ModalDial
|
|
|
3
3
|
import type * as playwright from 'playwright-core';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* Playwright-specific implementation of
|
|
6
|
+
* Playwright-specific implementation of [`ModalDialogHandler`](https://serenity-js.org/api/web/class/ModalDialogHandler/).
|
|
7
7
|
*
|
|
8
8
|
* @group Models
|
|
9
9
|
*/
|
|
@@ -14,7 +14,7 @@ import { PlaywrightModalDialogHandler } from './PlaywrightModalDialogHandler';
|
|
|
14
14
|
import { PlaywrightPageElement } from './PlaywrightPageElement';
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
-
* Playwright-specific implementation of
|
|
17
|
+
* Playwright-specific implementation of [`Page`](https://serenity-js.org/api/web/class/Page/).
|
|
18
18
|
*
|
|
19
19
|
* @group Models
|
|
20
20
|
*/
|
|
@@ -8,7 +8,7 @@ import { ensure, isDefined } from 'tiny-types';
|
|
|
8
8
|
import type { PlaywrightLocator } from './locators';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Playwright-specific implementation of
|
|
11
|
+
* Playwright-specific implementation of [`PageElement`](https://serenity-js.org/api/web/class/PageElement/).
|
|
12
12
|
*
|
|
13
13
|
* @group Models
|
|
14
14
|
*/
|
|
@@ -9,7 +9,7 @@ import { PlaywrightPageElement } from '../PlaywrightPageElement';
|
|
|
9
9
|
import type { PlaywrightRootLocator } from './PlaywrightRootLocator';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* Playwright-specific implementation of
|
|
12
|
+
* Playwright-specific implementation of [`Locator`](https://serenity-js.org/api/web/class/Locator/).
|
|
13
13
|
*
|
|
14
14
|
* @group Models
|
|
15
15
|
*/
|
|
@@ -6,7 +6,7 @@ import { ensure, isDefined } from 'tiny-types';
|
|
|
6
6
|
import { promised } from '../../promised';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
|
-
* Playwright-specific implementation of
|
|
9
|
+
* Playwright-specific implementation of [`RootLocator`](https://serenity-js.org/api/web/class/RootLocator/).
|
|
10
10
|
*
|
|
11
11
|
* @group Models
|
|
12
12
|
*/
|