@quickpickle/vitest-browser 0.2.2 → 0.3.0
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 +18 -0
- package/dist/VitestBrowserWorld.cjs +9 -0
- package/dist/VitestBrowserWorld.cjs.map +1 -1
- package/dist/VitestBrowserWorld.d.ts +20 -0
- package/dist/VitestBrowserWorld.mjs +9 -0
- package/dist/VitestBrowserWorld.mjs.map +1 -1
- package/dist/actions.steps.cjs +30 -30
- package/dist/actions.steps.cjs.map +1 -1
- package/dist/actions.steps.mjs +30 -30
- package/dist/actions.steps.mjs.map +1 -1
- package/dist/outcomes.steps.cjs +44 -44
- package/dist/outcomes.steps.cjs.map +1 -1
- package/dist/outcomes.steps.mjs +44 -44
- package/dist/outcomes.steps.mjs.map +1 -1
- package/package.json +3 -3
- package/src/VitestBrowserWorld.ts +29 -0
- package/src/actions.steps.ts +30 -30
- package/src/outcomes.steps.ts +44 -44
package/dist/outcomes.steps.mjs
CHANGED
|
@@ -29,34 +29,34 @@ expect.extend({
|
|
|
29
29
|
// Text on page
|
|
30
30
|
Then('I should see {string}( on the page)', async function (world, text) {
|
|
31
31
|
await world.expectText(world.page, text);
|
|
32
|
-
});
|
|
32
|
+
}, -10);
|
|
33
33
|
Then('I should not/NOT see {string}( on the page)', async function (world, text) {
|
|
34
34
|
await world.expectText(world.page, text, false);
|
|
35
|
-
});
|
|
35
|
+
}, -10);
|
|
36
36
|
Then('the text {string} should be visible( on the page)', async function (world, text) {
|
|
37
37
|
await world.expectText(world.page, text);
|
|
38
|
-
});
|
|
38
|
+
}, -10);
|
|
39
39
|
Then('the text {string} should not/NOT be visible( on the page)', async function (world, text) {
|
|
40
40
|
await world.expectText(world.page, text, false);
|
|
41
|
-
});
|
|
41
|
+
}, -10);
|
|
42
42
|
// ================
|
|
43
43
|
// Elements on page
|
|
44
44
|
Then('I should see a/an/the {string} {word}', async function (world, identifier, role) {
|
|
45
45
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
46
46
|
await world.expectElement(locator);
|
|
47
|
-
});
|
|
47
|
+
}, -10);
|
|
48
48
|
Then('I should not/NOT see a/an/the {string} {word}', async function (world, identifier, role) {
|
|
49
49
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
50
50
|
await world.expectElement(locator, false);
|
|
51
|
-
});
|
|
51
|
+
}, -10);
|
|
52
52
|
Then('I should see a/an/the {string} (element )with (the )(text ){string}', async function (world, identifier, text) {
|
|
53
53
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
54
54
|
await world.expectElement(locator);
|
|
55
|
-
});
|
|
55
|
+
}, -10);
|
|
56
56
|
Then('I should not/NOT see a/an/the {string} (element )with (the )(text ){string}', async function (world, identifier, text) {
|
|
57
57
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
58
58
|
await world.expectElement(locator, false);
|
|
59
|
-
});
|
|
59
|
+
}, -10);
|
|
60
60
|
// ================
|
|
61
61
|
// Actions
|
|
62
62
|
Then('{string} should have been clicked/doubleclicked/dblclicked', async function (world, text) {
|
|
@@ -65,7 +65,7 @@ Then('{string} should have been clicked/doubleclicked/dblclicked', async functio
|
|
|
65
65
|
expect(world.actions.clicks.find((el) => (el && el?.textContent === text))).not.toBeNull();
|
|
66
66
|
else
|
|
67
67
|
expect(world.actions.doubleClicks.find((el) => (el && el?.textContent === text))).not.toBeNull();
|
|
68
|
-
});
|
|
68
|
+
}, -10);
|
|
69
69
|
Then('(the ){string} {word} should have been clicked/doubleclicked/dblclicked', async function (world, identifier, role) {
|
|
70
70
|
let single = world.info.step?.match(/ clicked$/);
|
|
71
71
|
let element = world.getLocator(world.page, identifier, role);
|
|
@@ -73,98 +73,98 @@ Then('(the ){string} {word} should have been clicked/doubleclicked/dblclicked',
|
|
|
73
73
|
expect(world.actions.clicks.find((el) => (el === element))).not.toBeNull();
|
|
74
74
|
else
|
|
75
75
|
expect(world.actions.doubleClicks.find((el) => (el === element))).not.toBeNull();
|
|
76
|
-
});
|
|
76
|
+
}, -10);
|
|
77
77
|
// ================
|
|
78
78
|
// Element state
|
|
79
79
|
Then('a/an/the {string} {word} should be visible/hidden/invisible', async function (world, identifier, role) {
|
|
80
80
|
let state = world.info.step?.match(/(\w+)$/)[0];
|
|
81
81
|
let locator = world.getLocator(world.page, identifier, role);
|
|
82
82
|
await world.expectElement(locator, true, state === 'visible');
|
|
83
|
-
});
|
|
83
|
+
}, -10);
|
|
84
84
|
Then('a/an/the {string} (element )with (the )(text ){string} should be visible/hidden/invisible', async function (world, identifier, text) {
|
|
85
85
|
let state = world.info.step?.match(/(\w+)$/)[0];
|
|
86
86
|
let locator = world.getLocator(world.page, identifier, 'element', text);
|
|
87
87
|
await world.expectElement(locator, true, state === 'visible');
|
|
88
|
-
});
|
|
88
|
+
}, -10);
|
|
89
89
|
// Then('a/an/the {string} {word} should be attached/detatched', async function (world:VitestBrowserWorld, identifier, role) {
|
|
90
90
|
// let state = world.info.step?.match(/(\w)$/)![0] as 'attached'|'detached'
|
|
91
91
|
// let locator = world.getLocator(world.page, identifier, role)
|
|
92
|
-
// await locator.waitFor({ state
|
|
93
|
-
// })
|
|
92
|
+
// await locator.waitFor({ state })
|
|
93
|
+
// }, -10)
|
|
94
94
|
// Then('a/an/the {string} (element )with (the )(text ){string} should be attached/detatched', async function (world:VitestBrowserWorld, identifier, text) {
|
|
95
95
|
// let state = world.info.step?.match(/(\w)$/)![0] as 'attached'|'detached'
|
|
96
96
|
// let locator = world.getLocator(world.page, identifier, 'element', text)
|
|
97
|
-
// await locator.waitFor({ state
|
|
98
|
-
// })
|
|
97
|
+
// await locator.waitFor({ state })
|
|
98
|
+
// }, -10)
|
|
99
99
|
// disabled / enabled
|
|
100
100
|
Then('a/an/the {string} {word} should be disabled', async function (world, identifier, role) {
|
|
101
101
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
102
102
|
await expect(locator).toBeDisabled();
|
|
103
|
-
});
|
|
103
|
+
}, -10);
|
|
104
104
|
Then('a/an/the {string} {word} should be enabled', async function (world, identifier, role) {
|
|
105
105
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
106
106
|
await expect(locator).toBeEnabled();
|
|
107
|
-
});
|
|
107
|
+
}, -10);
|
|
108
108
|
Then('a/an/the {string} (element )with (the )(text ){string} should be disabled', async function (world, identifier, text) {
|
|
109
109
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
110
110
|
await expect(locator).toBeDisabled();
|
|
111
|
-
});
|
|
111
|
+
}, -10);
|
|
112
112
|
Then('a/an/the {string} (element )with (the )(text ){string} should be enabled', async function (world, identifier, text) {
|
|
113
113
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
114
114
|
await expect(locator).toBeEnabled();
|
|
115
|
-
});
|
|
115
|
+
}, -10);
|
|
116
116
|
// checked / unchecked
|
|
117
117
|
Then('a/an/the {string} {word} should be checked', async function (world, identifier, role) {
|
|
118
118
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
119
119
|
await expect(locator).toBeChecked();
|
|
120
|
-
});
|
|
120
|
+
}, -10);
|
|
121
121
|
Then('a/an/the {string} {word} should be unchecked', async function (world, identifier, role) {
|
|
122
122
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
123
123
|
await expect(locator).not.toBeChecked();
|
|
124
|
-
});
|
|
124
|
+
}, -10);
|
|
125
125
|
Then('a/an/the {string} (element )with (the )(text ){string} should be checked', async function (world, identifier, text) {
|
|
126
126
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
127
127
|
await expect(locator).toBeChecked();
|
|
128
|
-
});
|
|
128
|
+
}, -10);
|
|
129
129
|
Then('a/an/the {string} (element )with (the )(text ){string} should be unchecked', async function (world, identifier, text) {
|
|
130
130
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
131
131
|
await expect(locator).not.toBeChecked();
|
|
132
|
-
});
|
|
132
|
+
}, -10);
|
|
133
133
|
// focused / unfocused
|
|
134
134
|
Then('a/an/the {string} {word} should be focused/active', async function (world, identifier, role) {
|
|
135
135
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
136
136
|
await expect(locator).toHaveFocus();
|
|
137
|
-
});
|
|
137
|
+
}, -10);
|
|
138
138
|
Then('a/an/the {string} {word} should be unfocused/blurred', async function (world, identifier, role) {
|
|
139
139
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
140
140
|
await expect(locator).not.toHaveFocus();
|
|
141
|
-
});
|
|
141
|
+
}, -10);
|
|
142
142
|
Then('a/an/the {string} (element )with (the )(text ){string} should be focused/active', async function (world, identifier, text) {
|
|
143
143
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
144
144
|
await expect(locator).toHaveFocus();
|
|
145
|
-
});
|
|
145
|
+
}, -10);
|
|
146
146
|
Then('a/an/the {string} (element )with (the )(text ){string} should be unfocused/blurred', async function (world, identifier, text) {
|
|
147
147
|
let locator = await world.getLocator(world.page, identifier, 'element', text);
|
|
148
148
|
await expect(locator).not.toHaveFocus();
|
|
149
|
-
});
|
|
149
|
+
}, -10);
|
|
150
150
|
Then('a/an/the {string} {word} should be in(side) (of )the viewport', async function (world, identifier, role) {
|
|
151
151
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
152
152
|
// @ts-ignore
|
|
153
153
|
await expect(locator).toBeInTheViewport();
|
|
154
|
-
});
|
|
154
|
+
}, -10);
|
|
155
155
|
Then('a/an/the {string} {word} should be out(side) (of )the viewport', async function (world, identifier, role) {
|
|
156
156
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
157
157
|
// @ts-ignore
|
|
158
158
|
expect(locator).not.toBeInTheViewport();
|
|
159
|
-
});
|
|
159
|
+
}, -10);
|
|
160
160
|
// Then('a/an/the {string} (element )with (the )(text ){string} should be in(side) (of )the viewport', async function (world:VitestBrowserWorld, identifier, text) {
|
|
161
161
|
// let locator = await world.getLocator(world.page, identifier, 'element', text)
|
|
162
162
|
// await isInViewport(world, locator)
|
|
163
|
-
// })
|
|
163
|
+
// }, -10)
|
|
164
164
|
// Then('a/an/the {string} (element )with (the )(text ){string} should be out(side) (of )the viewport', async function (world:VitestBrowserWorld, identifier, text) {
|
|
165
165
|
// let locator = await world.getLocator(world.page, identifier, 'element', text)
|
|
166
166
|
// await isInViewport(world, locator)
|
|
167
|
-
// })
|
|
167
|
+
// }, -10)
|
|
168
168
|
// Values
|
|
169
169
|
Then('a/an/the (value of ){string} should contain/include/be/equal {string}', async function (world, identifier, expected) {
|
|
170
170
|
let exact = world.info.step?.match(/ should (?:be|equal) ['"]/) ? true : false;
|
|
@@ -175,7 +175,7 @@ Then('a/an/the (value of ){string} should contain/include/be/equal {string}', as
|
|
|
175
175
|
let actual = (await locator.element())?.value ?? '';
|
|
176
176
|
await expect(actual).toContain(expected);
|
|
177
177
|
}
|
|
178
|
-
});
|
|
178
|
+
}, -10);
|
|
179
179
|
Then('a/an/the (value of )(the ){string} {word} should contain/include/be/equal {string}', async function (world, identifier, role, expected) {
|
|
180
180
|
let exact = world.info.step?.match(/ should (?:be|equal) ['"]/) ? true : false;
|
|
181
181
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
@@ -185,7 +185,7 @@ Then('a/an/the (value of )(the ){string} {word} should contain/include/be/equal
|
|
|
185
185
|
let actual = (await locator.element())?.value ?? '';
|
|
186
186
|
await expect(actual).toContain(expected);
|
|
187
187
|
}
|
|
188
|
-
});
|
|
188
|
+
}, -10);
|
|
189
189
|
Then('a/an/the (value of )(the ){string} should not/NOT contain/include/be/equal {string}', async function (world, identifier, expected) {
|
|
190
190
|
let exact = world.info.step?.match(/ should (?:not|NOT) (?:be|equal) ['"]/) ? true : false;
|
|
191
191
|
let locator = await world.getLocator(world.page, identifier, 'input');
|
|
@@ -195,7 +195,7 @@ Then('a/an/the (value of )(the ){string} should not/NOT contain/include/be/equal
|
|
|
195
195
|
let actual = (await locator.element())?.value ?? '';
|
|
196
196
|
await expect(actual).not.toContain(expected);
|
|
197
197
|
}
|
|
198
|
-
});
|
|
198
|
+
}, -10);
|
|
199
199
|
Then('a/an/the (value of )(the ){string} {word} should not/NOT contain/include/be/equal {string}', async function (world, identifier, role, expected) {
|
|
200
200
|
let exact = world.info.step?.match(/ should (?:not|NOT) (?:be|equal) ['"]/) ? true : false;
|
|
201
201
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
@@ -205,36 +205,36 @@ Then('a/an/the (value of )(the ){string} {word} should not/NOT contain/include/b
|
|
|
205
205
|
let actual = (await locator.element())?.value ?? '';
|
|
206
206
|
await expect(actual).not.toContain(expected);
|
|
207
207
|
}
|
|
208
|
-
});
|
|
208
|
+
}, -10);
|
|
209
209
|
Then('a/an/the (value of ){string} should be/equal {int}', async function (world, identifier, expected) {
|
|
210
210
|
let locator = await world.getLocator(world.page, identifier, 'input');
|
|
211
211
|
await expect(locator).toHaveValue(expected);
|
|
212
|
-
});
|
|
212
|
+
}, -10);
|
|
213
213
|
Then('a/an/the (value of )(the ){string} {word} should be/equal {int}', async function (world, identifier, role, expected) {
|
|
214
214
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
215
215
|
await expect(locator).toHaveValue(expected);
|
|
216
|
-
});
|
|
216
|
+
}, -10);
|
|
217
217
|
Then('a/an/the (value of )(the ){string} should not/NOT be/equal {int}', async function (world, identifier, expected) {
|
|
218
218
|
let locator = await world.getLocator(world.page, identifier, 'input');
|
|
219
219
|
await expect(locator).not.toHaveValue(expected);
|
|
220
|
-
});
|
|
220
|
+
}, -10);
|
|
221
221
|
Then('a/an/the (value of )(the ){string} {word} should not/NOT be/equal {int}', async function (world, identifier, role, expected) {
|
|
222
222
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
223
223
|
await expect(locator).not.toHaveValue(expected);
|
|
224
|
-
});
|
|
224
|
+
}, -10);
|
|
225
225
|
// Visual regression testing
|
|
226
226
|
Then('(the )screenshot/snapshot should match', async function (world) {
|
|
227
227
|
await world.expectScreenshotMatch(world.page);
|
|
228
|
-
});
|
|
228
|
+
}, -10);
|
|
229
229
|
Then('(the )screenshot/snapshot {string} should match', async function (world, name) {
|
|
230
230
|
await world.expectScreenshotMatch(world.page, name);
|
|
231
|
-
});
|
|
231
|
+
}, -10);
|
|
232
232
|
Then('(the )screenshot/snapshot of the {string} {word} should match', async function (world, identifier, role) {
|
|
233
233
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
234
234
|
await world.expectScreenshotMatch(locator);
|
|
235
|
-
});
|
|
235
|
+
}, -10);
|
|
236
236
|
Then('(the )screenshot/snapshot {string} of the {string} {word} should match', async function (world, name, identifier, role) {
|
|
237
237
|
let locator = await world.getLocator(world.page, identifier, role);
|
|
238
238
|
await world.expectScreenshotMatch(locator, name);
|
|
239
|
-
});
|
|
239
|
+
}, -10);
|
|
240
240
|
//# sourceMappingURL=outcomes.steps.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outcomes.steps.mjs","sources":["../src/outcomes.steps.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"outcomes.steps.mjs","sources":["../src/outcomes.steps.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quickpickle/vitest-browser",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Support files for running Gherkin/Cucumber tests in Vitest Browser mode, for testing components.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"BDD",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"repository": {
|
|
24
24
|
"type": "git",
|
|
25
|
-
"url": "https://github.com/dnotes/quickpickle
|
|
25
|
+
"url": "https://github.com/dnotes/quickpickle"
|
|
26
26
|
},
|
|
27
27
|
"author": "David Hunt",
|
|
28
28
|
"license": "ISC",
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
"vitest-browser-react": "^0.1.1",
|
|
100
100
|
"vitest-browser-svelte": "^0.1.0",
|
|
101
101
|
"vitest-browser-vue": "^0.2.0",
|
|
102
|
-
"quickpickle": "^1.
|
|
102
|
+
"quickpickle": "^1.11.0"
|
|
103
103
|
},
|
|
104
104
|
"scripts": {
|
|
105
105
|
"build": "rollup -c && FORMAT=cjs rollup -c",
|
|
@@ -10,10 +10,32 @@ import { Buffer } from 'buffer'
|
|
|
10
10
|
/// <reference types="@vitest/browser/providers/playwright" />
|
|
11
11
|
|
|
12
12
|
export interface VitestWorldConfigSetting extends VisualConfigSetting {
|
|
13
|
+
/**
|
|
14
|
+
* The directory in which components are kept, relative to the project root.
|
|
15
|
+
*/
|
|
13
16
|
componentDir?: string;
|
|
17
|
+
/**
|
|
18
|
+
* The default timeout in milliseconds for all methods that accept a timeout option.
|
|
19
|
+
* This should always be lower than the QuickPickle stepTimeout, or After functions may fail to run.
|
|
20
|
+
* @default 1000
|
|
21
|
+
*/
|
|
22
|
+
defaultTimeout?: number;
|
|
23
|
+
/**
|
|
24
|
+
* The default timeout in milliseconds for actions like click, fill, etc.
|
|
25
|
+
* If 0 or not set, uses defaultTimeout.
|
|
26
|
+
*/
|
|
27
|
+
actionTimeout?: number;
|
|
28
|
+
/**
|
|
29
|
+
* The default timeout in milliseconds for navigation actions like goto, reload, etc.
|
|
30
|
+
* If 0 or not set, uses defaultTimeout.
|
|
31
|
+
* @default 3000
|
|
32
|
+
*/
|
|
33
|
+
navigationTimeout?: number;
|
|
14
34
|
}
|
|
15
35
|
|
|
16
36
|
export const defaultVitestWorldConfig:VitestWorldConfigSetting = {
|
|
37
|
+
defaultTimeout: 1000,
|
|
38
|
+
navigationTimeout: 3000,
|
|
17
39
|
componentDir: '', // directory in which components are kept, relative to project root
|
|
18
40
|
screenshotDir: 'screenshots', // directory in which to save screenshots, relative to project root (default: "screenshots")
|
|
19
41
|
screenshotOpts: { // options for the default screenshot comparisons
|
|
@@ -78,6 +100,13 @@ export class VitestBrowserWorld extends VisualWorld implements VitestBrowserWorl
|
|
|
78
100
|
let browserContext = await import('@vitest/browser/context')
|
|
79
101
|
this.browserPage = browserContext.page;
|
|
80
102
|
this.userEvent = browserContext.userEvent;
|
|
103
|
+
// Set default timeouts on browserPage if it supports it (Playwright provider)
|
|
104
|
+
if (typeof (this.browserPage as any).setDefaultTimeout === 'function') {
|
|
105
|
+
(this.browserPage as any).setDefaultTimeout(this.worldConfig.actionTimeout || this.worldConfig.defaultTimeout)
|
|
106
|
+
}
|
|
107
|
+
if (typeof (this.browserPage as any).setDefaultNavigationTimeout === 'function') {
|
|
108
|
+
(this.browserPage as any).setDefaultNavigationTimeout(this.worldConfig.navigationTimeout || this.worldConfig.defaultTimeout)
|
|
109
|
+
}
|
|
81
110
|
}
|
|
82
111
|
|
|
83
112
|
get page():Locator {
|
package/src/actions.steps.ts
CHANGED
|
@@ -32,23 +32,23 @@ Given('I render (the ){string}( component) with the following props/properties:'
|
|
|
32
32
|
|
|
33
33
|
When('I click/press/tap/touch (on ){string}', async function (world:VitestBrowserWorld, identifier) {
|
|
34
34
|
let locator = world.page.getByText(identifier, { exact:true })
|
|
35
|
-
await locator.click(
|
|
36
|
-
})
|
|
35
|
+
await locator.click()
|
|
36
|
+
}, -10)
|
|
37
37
|
When('I click/press/tap/touch (on )the {string} {word}', async function (world:VitestBrowserWorld, identifier, role) {
|
|
38
38
|
let locator = world.getLocator(world.page, identifier, role)
|
|
39
|
-
await locator.click(
|
|
40
|
-
})
|
|
39
|
+
await locator.click()
|
|
40
|
+
}, -10)
|
|
41
41
|
|
|
42
42
|
When('I focus/select/activate (on ){string}', async function (world:VitestBrowserWorld, identifier) {
|
|
43
43
|
let locator = world.page.getByText(identifier, { exact:true });
|
|
44
44
|
(locator.element() as HTMLElement)?.focus()
|
|
45
45
|
await expect(locator).toHaveFocus()
|
|
46
|
-
})
|
|
46
|
+
}, -10)
|
|
47
47
|
When('I focus/select/activate (on )the {string} {word}', async function (world:VitestBrowserWorld, identifier, role) {
|
|
48
48
|
let locator = world.getLocator(world.page, identifier, role);
|
|
49
49
|
(locator.element() as HTMLElement).focus()
|
|
50
50
|
await expect(locator).toHaveFocus()
|
|
51
|
-
})
|
|
51
|
+
}, -10)
|
|
52
52
|
|
|
53
53
|
// ================
|
|
54
54
|
// Typing
|
|
@@ -58,20 +58,20 @@ When("for/in/on (the ){string} I type {string}", async function (world: VitestBr
|
|
|
58
58
|
const element = locator.element() as HTMLElement;
|
|
59
59
|
element.focus();
|
|
60
60
|
await world.userEvent.keyboard(value);
|
|
61
|
-
})
|
|
61
|
+
}, -10)
|
|
62
62
|
When("for/in/on (the ){string} {word} I type {string}", async function (world: VitestBrowserWorld, identifier: string, role: string, value: string) {
|
|
63
63
|
const locator = world.getLocator(world.page, identifier, role);
|
|
64
64
|
const element = locator.element() as HTMLElement;
|
|
65
65
|
element.focus();
|
|
66
66
|
await world.userEvent.keyboard(value);
|
|
67
|
-
})
|
|
67
|
+
}, -10)
|
|
68
68
|
|
|
69
69
|
When('I type the following keys: {}', async function (world: VitestBrowserWorld, keys: string) {
|
|
70
70
|
for (let key of keys.split(' ')) {
|
|
71
71
|
if (key !== '{{' && key !== '[[' && !key.match(/^[\{\[].+[\}\]]$/)) key = `{${key}}`
|
|
72
72
|
await world.userEvent.keyboard(key);
|
|
73
73
|
}
|
|
74
|
-
})
|
|
74
|
+
}, -10)
|
|
75
75
|
When("for/in/on (the ){string} I type the following keys: {}", async function (world:VitestBrowserWorld, identifier: string, keys: string) {
|
|
76
76
|
const locator = world.getLocator(world.page, identifier, 'input');
|
|
77
77
|
const element = locator.element() as HTMLElement;
|
|
@@ -80,7 +80,7 @@ When("for/in/on (the ){string} I type the following keys: {}", async function (w
|
|
|
80
80
|
if (key !== '{{' && key !== '[[' && !key.match(/^[\{\[].+[\}\]]$/)) key = `{${key}}`
|
|
81
81
|
await world.userEvent.keyboard(key);
|
|
82
82
|
}
|
|
83
|
-
})
|
|
83
|
+
}, -10)
|
|
84
84
|
When("for/in/on (the ){string} {word} I type the following keys: {}", async function (world:VitestBrowserWorld, identifier: string, role: string, keys: string) {
|
|
85
85
|
const locator = world.getLocator(world.page, identifier, role);
|
|
86
86
|
const element = locator.element() as HTMLElement;
|
|
@@ -89,7 +89,7 @@ When("for/in/on (the ){string} {word} I type the following keys: {}", async func
|
|
|
89
89
|
if (key !== '{{' && key !== '[[' && !key.match(/^[\{\[].+[\}\]]$/)) key = `{${key}}`
|
|
90
90
|
await world.userEvent.keyboard(key);
|
|
91
91
|
}
|
|
92
|
-
})
|
|
92
|
+
}, -10)
|
|
93
93
|
|
|
94
94
|
// ================
|
|
95
95
|
// Forms
|
|
@@ -97,19 +97,19 @@ When("for/in/on (the ){string} {word} I type the following keys: {}", async func
|
|
|
97
97
|
When("for/in/on (the ){string} I enter/fill/select (in ){string}", async function (world:VitestBrowserWorld, identifier, value) {
|
|
98
98
|
let locator = world.getLocator(world.page, identifier, 'input')
|
|
99
99
|
await world.setValue(locator, value)
|
|
100
|
-
})
|
|
100
|
+
}, -10)
|
|
101
101
|
When("for/in/on (the ){string} {word} I enter/fill/select (in ){string}", async function (world:VitestBrowserWorld, identifier, role, value) {
|
|
102
102
|
let locator = world.getLocator(world.page, identifier, role)
|
|
103
103
|
await world.setValue(locator, value)
|
|
104
|
-
})
|
|
104
|
+
}, -10)
|
|
105
105
|
When("for/in/on (the ){string} I enter/fill/select (in )the following( text):", async function (world:VitestBrowserWorld, identifier, value) {
|
|
106
106
|
let locator = world.getLocator(world.page, identifier, 'input')
|
|
107
107
|
await world.setValue(locator, value.toString())
|
|
108
|
-
})
|
|
108
|
+
}, -10)
|
|
109
109
|
When("for/in/on (the ){string} {word} I enter/fill/select (in )the following( text):", async function (world:VitestBrowserWorld, identifier, role, value) {
|
|
110
110
|
let locator = world.getLocator(world.page, identifier, role)
|
|
111
111
|
await world.setValue(locator, value.toString())
|
|
112
|
-
})
|
|
112
|
+
}, -10)
|
|
113
113
|
When('I enter/fill (in )the following( fields):', async function (world:VitestBrowserWorld, table:DataTable) {
|
|
114
114
|
let rows = table.raw()
|
|
115
115
|
let hasRole = rows[0].length === 3
|
|
@@ -122,16 +122,16 @@ When('I enter/fill (in )the following( fields):', async function (world:VitestBr
|
|
|
122
122
|
let locator = world.getLocator(world.page, identifier, role)
|
|
123
123
|
await world.setValue(locator, value)
|
|
124
124
|
}
|
|
125
|
-
})
|
|
125
|
+
}, -10)
|
|
126
126
|
|
|
127
127
|
When('I check (the ){string}( radio)( checkbox)( box)', async function (world:VitestBrowserWorld, indentifier) {
|
|
128
128
|
let locator = world.getLocator(world.page, indentifier, 'input')
|
|
129
129
|
await world.setValue(locator, 'on')
|
|
130
|
-
})
|
|
130
|
+
}, -10)
|
|
131
131
|
When('I uncheck (the ){string}( checkbox)( box)', async function (world:VitestBrowserWorld, indentifier) {
|
|
132
132
|
let locator = world.getLocator(world.page, indentifier, 'input')
|
|
133
133
|
await world.setValue(locator, 'off')
|
|
134
|
-
})
|
|
134
|
+
}, -10)
|
|
135
135
|
|
|
136
136
|
// ================
|
|
137
137
|
// Waiting
|
|
@@ -139,20 +139,20 @@ When('I uncheck (the ){string}( checkbox)( box)', async function (world:VitestBr
|
|
|
139
139
|
// When('I wait for {string} to be attached/detatched/visible/hidden', async function (world:VitestBrowserWorld, text) {
|
|
140
140
|
// let state = world.info.step?.match(/(attached|detatched|visible|hidden)$/)![0] as 'attached'|'detached'|'visible'|'hidden'
|
|
141
141
|
// let locator = world.page.getByText(text)
|
|
142
|
-
// await locator.waitFor({ state
|
|
142
|
+
// await locator.waitFor({ state })
|
|
143
143
|
// })
|
|
144
144
|
// When('I wait for a/an/the {string} {word} to be attached/detatched/visible/hidden', async function (world:VitestBrowserWorld, identifier, role) {
|
|
145
145
|
// let state = world.info.step?.match(/(attached|detatched|visible|hidden)$/)![0] as 'attached'|'detached'|'visible'|'hidden'
|
|
146
146
|
// let locator = world.getLocator(world.page, identifier, role)
|
|
147
|
-
// await locator.waitFor({ state
|
|
147
|
+
// await locator.waitFor({ state })
|
|
148
148
|
// })
|
|
149
149
|
|
|
150
150
|
When('I wait (for ){int}ms', async function (world:VitestBrowserWorld, num) {
|
|
151
151
|
await world.wait(num)
|
|
152
|
-
})
|
|
152
|
+
}, -10)
|
|
153
153
|
When('I wait (for ){float} second(s)', async function (world:VitestBrowserWorld, num) {
|
|
154
154
|
await world.wait(num * 1000)
|
|
155
|
-
})
|
|
155
|
+
}, -10)
|
|
156
156
|
|
|
157
157
|
// ================
|
|
158
158
|
// Scrolling
|
|
@@ -160,36 +160,36 @@ When('I wait (for ){float} second(s)', async function (world:VitestBrowserWorld,
|
|
|
160
160
|
When('I scroll down/up/left/right', async function (world:VitestBrowserWorld) {
|
|
161
161
|
let direction = world.info.step?.match(/(down|up|left|right)$/)![0] as 'down'|'up'|'left'|'right'
|
|
162
162
|
await world.scroll(world.page, direction)
|
|
163
|
-
})
|
|
163
|
+
}, -10)
|
|
164
164
|
When('I scroll down/up/left/right {int}(px)( pixels)', async function (world:VitestBrowserWorld, num) {
|
|
165
165
|
let direction = world.info.step?.match(/(down|up|left|right)(?= \d)/)![0] as 'down'|'up'|'left'|'right'
|
|
166
166
|
await world.scroll(world.page, direction, num)
|
|
167
|
-
})
|
|
167
|
+
}, -10)
|
|
168
168
|
When('I scroll (the ){string} {word} down/up/left/right', async function (world:VitestBrowserWorld, identifier:string, role:string) {
|
|
169
169
|
let locator = world.getLocator(world.page, identifier, role)
|
|
170
170
|
let direction = world.info.step?.match(/(down|up|left|right)$/)![0] as 'down'|'up'|'left'|'right'
|
|
171
171
|
await world.scroll(locator, direction)
|
|
172
|
-
})
|
|
172
|
+
}, -10)
|
|
173
173
|
When('I scroll (the ){string} {word} down/up/left/right {int}(px)( pixels)', async function (world:VitestBrowserWorld, identifier, role, num) {
|
|
174
174
|
let locator = world.getLocator(world.page, identifier, role)
|
|
175
175
|
let direction = world.info.step?.match(/(down|up|left|right)(?= \d)/)![0] as 'down'|'up'|'left'|'right'
|
|
176
176
|
await world.scroll(locator, direction, num)
|
|
177
|
-
})
|
|
177
|
+
}, -10)
|
|
178
178
|
|
|
179
179
|
// ================
|
|
180
180
|
// Screenshots
|
|
181
181
|
|
|
182
182
|
Then('(I )take (a )screenshot', async function (world:VitestBrowserWorld) {
|
|
183
183
|
await world.screenshot()
|
|
184
|
-
})
|
|
184
|
+
}, -10)
|
|
185
185
|
Then('(I )take (a )screenshot named {string}', async function (world:VitestBrowserWorld, name:string) {
|
|
186
186
|
await world.screenshot({ name })
|
|
187
|
-
})
|
|
187
|
+
}, -10)
|
|
188
188
|
Then('(I )take (a )screenshot of the {string} {word}', async function (world:VitestBrowserWorld, identifier:string, role:string) {
|
|
189
189
|
let locator = world.getLocator(world.page, identifier, role)
|
|
190
190
|
await world.screenshot({ locator })
|
|
191
|
-
})
|
|
191
|
+
}, -10)
|
|
192
192
|
Then('(I )take (a )screenshot of the {string} {word} named {string}', async function (world:VitestBrowserWorld, identifier:string, role:string, name:string) {
|
|
193
193
|
let locator = world.getLocator(world.page, identifier, role)
|
|
194
194
|
await world.screenshot({ locator, name })
|
|
195
|
-
})
|
|
195
|
+
}, -10)
|