@axe-core/watcher 3.16.0 → 3.16.1-next.7d85c159
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/LICENSES-3RD-PARTY.md +720 -0
- package/dist/Controller.d.ts +1 -1
- package/dist/Controller.js +42 -34
- package/dist/Controller.js.map +1 -1
- package/dist/cypress.d.ts +2 -0
- package/dist/cypress.js +11 -5
- package/dist/cypress.js.map +1 -1
- package/dist/cypressCommands.js +65 -40
- package/dist/cypressCommands.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/playwright.d.ts +1 -1
- package/dist/playwright.js +6 -1
- package/dist/playwright.js.map +1 -1
- package/dist/playwrightTest.d.ts +9 -3
- package/dist/playwrightTest.js +10 -5
- package/dist/playwrightTest.js.map +1 -1
- package/dist/playwrightWrapping.d.ts +1 -0
- package/dist/playwrightWrapping.js +15 -7
- package/dist/playwrightWrapping.js.map +1 -1
- package/dist/puppeteer.js +4 -0
- package/dist/puppeteer.js.map +1 -1
- package/dist/utils/assertVariablesWereWritten.d.ts +1 -0
- package/dist/utils/assertVariablesWereWritten.js +15 -0
- package/dist/utils/assertVariablesWereWritten.js.map +1 -0
- package/dist/utils/checkUserArgs.d.ts +8 -0
- package/dist/utils/checkUserArgs.js +10 -0
- package/dist/utils/checkUserArgs.js.map +1 -0
- package/dist/utils/proxyHandlers.d.ts +2 -0
- package/dist/utils/proxyHandlers.js +14 -1
- package/dist/utils/proxyHandlers.js.map +1 -1
- package/dist/wdio.js +5 -0
- package/dist/wdio.js.map +1 -1
- package/dist/webdriver.js +4 -0
- package/dist/webdriver.js.map +1 -1
- package/extension/axe.js +1 -1
- package/extension/axe.js.LICENSE.txt +1 -1
- package/extension/background.js +1 -1
- package/extension/content.js +1 -1
- package/package.json +8 -7
- package/dist/utils/headlessNotSupportedError.test.d.ts +0 -1
- package/dist/utils/headlessNotSupportedError.test.js +0 -21
- package/dist/utils/headlessNotSupportedError.test.js.map +0 -1
- package/dist/utils/initializeSession.test.d.ts +0 -1
- package/dist/utils/initializeSession.test.js +0 -177
- package/dist/utils/initializeSession.test.js.map +0 -1
- package/dist/utils/isValidExcludePattern.test.d.ts +0 -1
- package/dist/utils/isValidExcludePattern.test.js +0 -17
- package/dist/utils/isValidExcludePattern.test.js.map +0 -1
- package/dist/utils/mergeChromeArgs.test.d.ts +0 -1
- package/dist/utils/mergeChromeArgs.test.js +0 -257
- package/dist/utils/mergeChromeArgs.test.js.map +0 -1
- package/dist/utils/proxyHandlers.test.d.ts +0 -1
- package/dist/utils/proxyHandlers.test.js +0 -27
- package/dist/utils/proxyHandlers.test.js.map +0 -1
- package/dist/utils/validateAxeRunContext.test.d.ts +0 -1
- package/dist/utils/validateAxeRunContext.test.js +0 -97
- package/dist/utils/validateAxeRunContext.test.js.map +0 -1
- package/dist/utils/validateAxeRunOptions.test.d.ts +0 -1
- package/dist/utils/validateAxeRunOptions.test.js +0 -215
- package/dist/utils/validateAxeRunOptions.test.js.map +0 -1
- package/dist/utils/writeVariables.test.d.ts +0 -1
- package/dist/utils/writeVariables.test.js +0 -200
- package/dist/utils/writeVariables.test.js.map +0 -1
package/dist/Controller.d.ts
CHANGED
@@ -8,7 +8,7 @@ declare abstract class Controller {
|
|
8
8
|
protected isStopped: boolean;
|
9
9
|
protected debugLogger: Debugger;
|
10
10
|
constructor({ debugLoggerName }: ControllerParams);
|
11
|
-
start():
|
11
|
+
start(): void;
|
12
12
|
stop(): Promise<void>;
|
13
13
|
analyze({ __Method, __UserRequestedAnalyze }?: {
|
14
14
|
__Method?: string;
|
package/dist/Controller.js
CHANGED
@@ -3,7 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
const updateAutoAnalyze_1 = __importDefault(require("./utils/updateAutoAnalyze"));
|
7
6
|
const sendResultsToServer_1 = __importDefault(require("./sendResultsToServer"));
|
8
7
|
const createDebugger_1 = __importDefault(require("./createDebugger"));
|
9
8
|
class Controller {
|
@@ -11,44 +10,39 @@ class Controller {
|
|
11
10
|
this.isStopped = false;
|
12
11
|
this.debugLogger = (0, createDebugger_1.default)(debugLoggerName);
|
13
12
|
}
|
14
|
-
|
15
|
-
(
|
13
|
+
start() {
|
14
|
+
this.debugLogger(`Start: Invoked`);
|
16
15
|
this.isStopped = false;
|
17
|
-
await this.executeScript(() => {
|
18
|
-
if (!['http:', 'https:', 'file:'].includes(window.location.protocol)) {
|
19
|
-
return Promise.resolve();
|
20
|
-
}
|
21
|
-
return new Promise(resolve => {
|
22
|
-
const fn = () => {
|
23
|
-
window.removeEventListener('axe:start-auto-mode-done', fn);
|
24
|
-
resolve();
|
25
|
-
};
|
26
|
-
window.addEventListener('axe:start-auto-mode-done', fn);
|
27
|
-
const event = new CustomEvent('axe:start-auto-mode');
|
28
|
-
window.dispatchEvent(event);
|
29
|
-
});
|
30
|
-
});
|
31
16
|
}
|
32
17
|
async stop() {
|
33
|
-
(
|
34
|
-
this.isStopped
|
35
|
-
|
18
|
+
this.debugLogger(`Stop: Invoked (${this.isStopped ? 'not analyzing' : 'may analyze implicitly'})`);
|
19
|
+
if (this.isStopped) {
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
const result = await this.executeScript(() => {
|
36
23
|
if (!['http:', 'https:', 'file:'].includes(window.location.protocol)) {
|
37
|
-
return Promise.resolve();
|
24
|
+
return Promise.resolve({ message: 'Skipped - Invalid protocol' });
|
38
25
|
}
|
39
26
|
return new Promise(resolve => {
|
40
|
-
const fn = () => {
|
41
|
-
window.removeEventListener('axe:
|
42
|
-
resolve();
|
27
|
+
const fn = (event) => {
|
28
|
+
window.removeEventListener('axe:manual-mode-analyze-done', fn);
|
29
|
+
resolve(event.detail);
|
43
30
|
};
|
44
|
-
window.addEventListener('axe:
|
45
|
-
const event = new CustomEvent('axe:
|
31
|
+
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
32
|
+
const event = new CustomEvent('axe:manual-mode-analyze', {
|
33
|
+
detail: { userRequestedAnalyze: false }
|
34
|
+
});
|
46
35
|
window.dispatchEvent(event);
|
47
36
|
});
|
48
37
|
});
|
38
|
+
this.debugLogger(`Stop: ${result.message}`);
|
39
|
+
this.isStopped = true;
|
49
40
|
}
|
50
41
|
async analyze({ __Method, __UserRequestedAnalyze = true } = {}) {
|
51
|
-
this.debugLogger(`Analyze: Invoked${__Method ? ` - ${__Method}` : ''}
|
42
|
+
this.debugLogger(`Analyze: Invoked${__Method ? ` - ${__Method}` : ''}`, {
|
43
|
+
isStopped: this.isStopped,
|
44
|
+
__UserRequestedAnalyze
|
45
|
+
});
|
52
46
|
if (this.isStopped && !__UserRequestedAnalyze) {
|
53
47
|
this.debugLogger('Analyze: Skipped', {
|
54
48
|
isStopped: this.isStopped,
|
@@ -56,8 +50,14 @@ class Controller {
|
|
56
50
|
});
|
57
51
|
return;
|
58
52
|
}
|
59
|
-
const result = await this.executeScript((userRequestedAnalyze) => {
|
53
|
+
const result = await this.executeScript(({ userRequestedAnalyze, isStopped }) => {
|
60
54
|
if (!['http:', 'https:', 'file:'].includes(window.location.protocol)) {
|
55
|
+
if (userRequestedAnalyze) {
|
56
|
+
return Promise.resolve({
|
57
|
+
message: `Cannot perform analysis - invalid protocol: ${window.location.protocol}`,
|
58
|
+
error: true
|
59
|
+
});
|
60
|
+
}
|
61
61
|
return Promise.resolve({ message: 'Skipped - Invalid protocol' });
|
62
62
|
}
|
63
63
|
return new Promise(resolve => {
|
@@ -67,16 +67,22 @@ class Controller {
|
|
67
67
|
};
|
68
68
|
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
69
69
|
const event = new CustomEvent('axe:manual-mode-analyze', {
|
70
|
-
detail: { userRequestedAnalyze }
|
70
|
+
detail: { userRequestedAnalyze, isStopped }
|
71
71
|
});
|
72
72
|
window.dispatchEvent(event);
|
73
73
|
});
|
74
|
-
},
|
74
|
+
}, {
|
75
|
+
userRequestedAnalyze: __UserRequestedAnalyze,
|
76
|
+
isStopped: this.isStopped
|
77
|
+
});
|
75
78
|
this.debugLogger(`Analyze: ${result.message}`);
|
79
|
+
if (result.error) {
|
80
|
+
throw new Error(result.message);
|
81
|
+
}
|
76
82
|
}
|
77
83
|
async flush() {
|
78
|
-
this.debugLogger(
|
79
|
-
const results = await this.executeScript(() => {
|
84
|
+
this.debugLogger(`Flush: Invoked (${this.isStopped ? 'auto-analysis stopped' : 'may analyze implicitly'})`);
|
85
|
+
const results = await this.executeScript((isStopped) => {
|
80
86
|
if (!['http:', 'https:', 'file:'].includes(window.location.protocol)) {
|
81
87
|
return Promise.resolve([]);
|
82
88
|
}
|
@@ -92,10 +98,12 @@ class Controller {
|
|
92
98
|
};
|
93
99
|
window.addEventListener('axe:result', onAxeResult);
|
94
100
|
window.addEventListener('axe:flush-end', onFlushEnd);
|
95
|
-
const event = new CustomEvent('axe:flush-start'
|
101
|
+
const event = new CustomEvent('axe:flush-start', {
|
102
|
+
detail: { isStopped }
|
103
|
+
});
|
96
104
|
window.dispatchEvent(event);
|
97
105
|
});
|
98
|
-
});
|
106
|
+
}, this.isStopped);
|
99
107
|
this.debugLogger(`Flush: Received ${results.length} results`);
|
100
108
|
await (0, sendResultsToServer_1.default)({
|
101
109
|
results,
|
package/dist/Controller.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":";;;;;AAAA,
|
1
|
+
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":"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"}
|
package/dist/cypress.d.ts
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
import { type Configuration } from './utils/writeVariables';
|
2
|
+
export declare const cypressConfigRunFlag = "__AXE_WATCHER_CYPRESS_CONFIG_RUN";
|
3
|
+
export declare const cypressConfigAutoAnalyzeFlag = "__AXE_WATCHER_AUTO_ANALYZE";
|
2
4
|
/**
|
3
5
|
* Create a Cypress config that uses the axe Watcher extension.
|
4
6
|
*
|
package/dist/cypress.js
CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.cypressConfig = void 0;
|
6
|
+
exports.cypressConfig = exports.cypressConfigAutoAnalyzeFlag = exports.cypressConfigRunFlag = void 0;
|
7
7
|
const sendResultsToServer_1 = __importDefault(require("./sendResultsToServer"));
|
8
8
|
const EventForwarder_1 = __importDefault(require("./EventForwarder"));
|
9
9
|
const writeVariables_1 = __importDefault(require("./utils/writeVariables"));
|
@@ -11,8 +11,10 @@ const writeExtensionManifest_1 = __importDefault(require("./utils/writeExtension
|
|
11
11
|
const headlessNotSupportedError_1 = require("./utils/headlessNotSupportedError");
|
12
12
|
const mergeChromeArgs_1 = __importDefault(require("./utils/mergeChromeArgs"));
|
13
13
|
const createDebugger_1 = __importDefault(require("./createDebugger"));
|
14
|
+
const checkUserArgs_1 = require("./utils/checkUserArgs");
|
14
15
|
const debugLogger = (0, createDebugger_1.default)('CypressController');
|
15
|
-
|
16
|
+
exports.cypressConfigRunFlag = '__AXE_WATCHER_CYPRESS_CONFIG_RUN';
|
17
|
+
exports.cypressConfigAutoAnalyzeFlag = '__AXE_WATCHER_AUTO_ANALYZE';
|
16
18
|
const cypressConfig = (config) => {
|
17
19
|
var _a;
|
18
20
|
const { axe, ...userConfig } = config;
|
@@ -31,12 +33,12 @@ const cypressConfig = (config) => {
|
|
31
33
|
});
|
32
34
|
if ((_a = userConfig.e2e) === null || _a === void 0 ? void 0 : _a.env) {
|
33
35
|
userConfig.e2e.env = Object.assign({}, userConfig.e2e.env, {
|
34
|
-
[cypressConfigRunFlag]: true
|
36
|
+
[exports.cypressConfigRunFlag]: true
|
35
37
|
});
|
36
38
|
}
|
37
39
|
else {
|
38
40
|
userConfig.env = Object.assign({}, userConfig.env, {
|
39
|
-
[cypressConfigRunFlag]: true
|
41
|
+
[exports.cypressConfigRunFlag]: true
|
40
42
|
});
|
41
43
|
}
|
42
44
|
if (hasWatcherDebug) {
|
@@ -44,6 +46,9 @@ const cypressConfig = (config) => {
|
|
44
46
|
__AXE_WATCHER_DEBUG: hasWatcherDebug
|
45
47
|
});
|
46
48
|
}
|
49
|
+
userConfig.env = Object.assign({}, userConfig.env, {
|
50
|
+
[exports.cypressConfigAutoAnalyzeFlag]: axe.autoAnalyze === undefined ? true : axe.autoAnalyze
|
51
|
+
});
|
47
52
|
return {
|
48
53
|
...userConfig,
|
49
54
|
e2e: {
|
@@ -55,7 +60,7 @@ const cypressConfig = (config) => {
|
|
55
60
|
const userNodeEventConfig = await ((_b = (_a = userConfig.e2e) === null || _a === void 0 ? void 0 : _a.setupNodeEvents) === null || _b === void 0 ? void 0 : _b.call(_a, on, ...args));
|
56
61
|
if (userNodeEventConfig) {
|
57
62
|
userNodeEventConfig.env = Object.assign({}, userNodeEventConfig.env, {
|
58
|
-
[cypressConfigRunFlag]: true
|
63
|
+
[exports.cypressConfigRunFlag]: true
|
59
64
|
});
|
60
65
|
}
|
61
66
|
on('task', {
|
@@ -84,6 +89,7 @@ const cypressConfig = (config) => {
|
|
84
89
|
throw new headlessNotSupportedError_1.HeadlessNotSupportedError('In Cypress, "--headless=new" became the default headless mode in Cypress version 12.15.0. Ensure your Cypress version is up to date and that you are not using a "before:browser:launch" configuration that adds "--headless" to launchOptions.args.');
|
85
90
|
}
|
86
91
|
const existingArgs = launchOptions.args;
|
92
|
+
(0, checkUserArgs_1.checkUserArgs)(existingArgs);
|
87
93
|
launchOptions.args = (0, mergeChromeArgs_1.default)(existingArgs, {
|
88
94
|
disableOtherExtensions: false
|
89
95
|
});
|
package/dist/cypress.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":";;;;;;AACA,gFAAuD;AACvD,sEAA6C;AAC7C,4EAA2E;AAC3E,4FAA0D;AAC1D,iFAA6E;AAC7E,8EAAqD;AACrD,sEAA6C;
|
1
|
+
{"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":"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"}
|
package/dist/cypressCommands.js
CHANGED
@@ -2,7 +2,8 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.WRAPPED_COMMANDS = void 0;
|
4
4
|
const cypressConfigRunFlag = '__AXE_WATCHER_CYPRESS_CONFIG_RUN';
|
5
|
-
|
5
|
+
const cypressConfigAutoAnalyzeFlag = '__AXE_WATCHER_AUTO_ANALYZE';
|
6
|
+
let isStopped = !Cypress.env(cypressConfigAutoAnalyzeFlag);
|
6
7
|
exports.WRAPPED_COMMANDS = [
|
7
8
|
'blur',
|
8
9
|
'check',
|
@@ -75,7 +76,9 @@ Cypress.Commands.addQuery('__axeRestoreSubject', function (subjectChain, timeout
|
|
75
76
|
return () => cy.getSubjectFromChain(subjectChain);
|
76
77
|
});
|
77
78
|
function axeWatcherFlushCommand() {
|
78
|
-
logDebugAxeWatcher({
|
79
|
+
logDebugAxeWatcher({
|
80
|
+
message: `Flush: Invoked (${isStopped ? 'will not' : 'may'} analyze implicitly)`
|
81
|
+
});
|
79
82
|
cy.window().then(win => {
|
80
83
|
if (!shouldAnalyzeLocation(win.location)) {
|
81
84
|
return Promise.resolve();
|
@@ -92,7 +95,9 @@ function axeWatcherFlushCommand() {
|
|
92
95
|
};
|
93
96
|
win.addEventListener('axe:flush-end', onFlushEnd);
|
94
97
|
win.addEventListener('axe:result', onAxeResult);
|
95
|
-
const event = new CustomEvent('axe:flush-start'
|
98
|
+
const event = new CustomEvent('axe:flush-start', {
|
99
|
+
detail: { isStopped }
|
100
|
+
});
|
96
101
|
win.dispatchEvent(event);
|
97
102
|
}).then(results => {
|
98
103
|
cy.task('__uploadAxeWatcherResults', { results }, { log: false });
|
@@ -103,77 +108,97 @@ function axeWatcherFlushCommand() {
|
|
103
108
|
const doesCypressCommandExist = (commandName) => {
|
104
109
|
return !!Cypress.cy[commandName];
|
105
110
|
};
|
106
|
-
function axeWatcherAnalyzeCommand({ __Method, __UserRequestedAnalyze = true } = {}) {
|
111
|
+
function axeWatcherAnalyzeCommand(subject, { __Method, __UserRequestedAnalyze = true } = {}) {
|
112
|
+
const userRequestedAnalyze = __UserRequestedAnalyze;
|
113
|
+
const message = userRequestedAnalyze
|
114
|
+
? 'User requested analysis'
|
115
|
+
: `Invoked${__Method ? ` - ${__Method}` : ''}`;
|
107
116
|
logDebugAxeWatcher({
|
108
|
-
message: `Analyze:
|
117
|
+
message: `Analyze: ${message}`
|
109
118
|
});
|
110
|
-
const userRequestedAnalyze = __UserRequestedAnalyze;
|
111
119
|
cy.window().then(win => {
|
112
120
|
if (!shouldAnalyzeLocation(win.location)) {
|
113
|
-
|
121
|
+
logDebugAxeWatcher({
|
122
|
+
message: `Analyze: Skipped - invalid protocol`
|
123
|
+
});
|
124
|
+
if (userRequestedAnalyze) {
|
125
|
+
return Promise.reject(new Error(`Cannot perform manual analysis - invalid protocol: ${win.location.protocol}`));
|
126
|
+
}
|
127
|
+
return Promise.resolve({
|
128
|
+
message: `Skipped - Invalid protocol`,
|
129
|
+
subject
|
130
|
+
});
|
114
131
|
}
|
115
132
|
if (isStopped && !userRequestedAnalyze) {
|
116
|
-
|
133
|
+
logDebugAxeWatcher({
|
134
|
+
message: `Analyze: Skipped - manual mode`
|
135
|
+
});
|
136
|
+
return Promise.resolve({ message: `Skipped (Manual mode)`, subject });
|
117
137
|
}
|
118
138
|
return new Promise(resolve => {
|
119
139
|
const fn = (event) => {
|
120
140
|
win.removeEventListener('axe:manual-mode-analyze-done', fn);
|
121
|
-
resolve(event.detail);
|
141
|
+
resolve({ message: event.detail.message, subject });
|
122
142
|
};
|
123
143
|
win.addEventListener('axe:manual-mode-analyze-done', fn);
|
124
144
|
const event = new CustomEvent('axe:manual-mode-analyze', {
|
125
|
-
detail: { userRequestedAnalyze }
|
145
|
+
detail: { userRequestedAnalyze, isCypress: true }
|
126
146
|
});
|
127
147
|
win.dispatchEvent(event);
|
128
148
|
}).then(result => {
|
129
149
|
logDebugAxeWatcher({ message: `Analyze: ${result === null || result === void 0 ? void 0 : result.message}` });
|
150
|
+
if (result === null || result === void 0 ? void 0 : result.subject) {
|
151
|
+
return result.subject;
|
152
|
+
}
|
130
153
|
});
|
131
154
|
});
|
132
155
|
}
|
133
|
-
function axeWatcherStartCommand() {
|
134
|
-
cy.window().then(
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
return new Promise(resolve => {
|
139
|
-
const fn = () => {
|
140
|
-
win.removeEventListener('axe:start-auto-mode-done', fn);
|
141
|
-
resolve();
|
142
|
-
};
|
143
|
-
win.addEventListener('axe:start-auto-mode-done', fn);
|
144
|
-
const event = new CustomEvent('axe:start-auto-mode');
|
145
|
-
win.dispatchEvent(event);
|
146
|
-
}).then(() => {
|
147
|
-
isStopped = false;
|
148
|
-
});
|
156
|
+
function axeWatcherStartCommand(subject) {
|
157
|
+
cy.window().then(() => {
|
158
|
+
logDebugAxeWatcher({ message: `Start: Invoked` });
|
159
|
+
isStopped = false;
|
160
|
+
return Promise.resolve(subject);
|
149
161
|
});
|
150
162
|
}
|
151
|
-
function axeWatcherStopCommand() {
|
163
|
+
function axeWatcherStopCommand(subject) {
|
164
|
+
logDebugAxeWatcher({ message: `Stop: Invoked` });
|
152
165
|
cy.window().then(win => {
|
153
166
|
if (!shouldAnalyzeLocation(win.location)) {
|
154
|
-
|
167
|
+
logDebugAxeWatcher({
|
168
|
+
message: `Stop: Skipped - invalid protocol`
|
169
|
+
});
|
170
|
+
return Promise.resolve({
|
171
|
+
message: `Skipped - Invalid protocol`,
|
172
|
+
subject
|
173
|
+
});
|
155
174
|
}
|
156
175
|
return new Promise(resolve => {
|
157
|
-
const fn = () => {
|
158
|
-
win.removeEventListener('axe:
|
159
|
-
resolve();
|
176
|
+
const fn = (event) => {
|
177
|
+
win.removeEventListener('axe:manual-mode-analyze-done', fn);
|
178
|
+
resolve({ message: event.detail.message, subject });
|
160
179
|
};
|
161
|
-
win.addEventListener('axe:
|
162
|
-
const event = new CustomEvent('axe:
|
180
|
+
win.addEventListener('axe:manual-mode-analyze-done', fn);
|
181
|
+
const event = new CustomEvent('axe:manual-mode-analyze', {
|
182
|
+
detail: { isCypress: true }
|
183
|
+
});
|
163
184
|
win.dispatchEvent(event);
|
164
|
-
}).then(
|
185
|
+
}).then(result => {
|
186
|
+
logDebugAxeWatcher({ message: `Stop: ${result === null || result === void 0 ? void 0 : result.message}` });
|
165
187
|
isStopped = true;
|
188
|
+
if (result === null || result === void 0 ? void 0 : result.subject) {
|
189
|
+
return result.subject;
|
190
|
+
}
|
166
191
|
});
|
167
192
|
});
|
168
193
|
}
|
169
194
|
if (!doesCypressCommandExist('axeAnalyze')) {
|
170
|
-
Cypress.Commands.add('
|
195
|
+
Cypress.Commands.add('axeWatcherAnalyze', { prevSubject: 'optional' }, axeWatcherAnalyzeCommand);
|
171
196
|
}
|
172
197
|
Cypress.Commands.add('axeFlush', axeWatcherFlushCommand);
|
173
|
-
Cypress.Commands.add('axeStop', axeWatcherStopCommand);
|
174
|
-
Cypress.Commands.add('axeStart', axeWatcherStartCommand);
|
175
|
-
Cypress.Commands.add('axeWatcherAnalyze', axeWatcherAnalyzeCommand);
|
176
|
-
Cypress.Commands.add('axeWatcherStart', axeWatcherStartCommand);
|
177
|
-
Cypress.Commands.add('axeWatcherStop', axeWatcherStopCommand);
|
198
|
+
Cypress.Commands.add('axeStop', { prevSubject: 'optional' }, axeWatcherStopCommand);
|
199
|
+
Cypress.Commands.add('axeStart', { prevSubject: 'optional' }, axeWatcherStartCommand);
|
200
|
+
Cypress.Commands.add('axeWatcherAnalyze', { prevSubject: 'optional' }, axeWatcherAnalyzeCommand);
|
201
|
+
Cypress.Commands.add('axeWatcherStart', { prevSubject: 'optional' }, axeWatcherStartCommand);
|
202
|
+
Cypress.Commands.add('axeWatcherStop', { prevSubject: 'optional' }, axeWatcherStopCommand);
|
178
203
|
Cypress.Commands.add('axeWatcherFlush', axeWatcherFlushCommand);
|
179
204
|
//# sourceMappingURL=cypressCommands.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":";;;AAYA,MAAM,oBAAoB,GAAG,kCAAkC,CAAA;
|
1
|
+
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
@@ -3,5 +3,5 @@ export { puppeteerConfig, PuppeteerController, wrapPuppeteer, wrapPuppeteerPage
|
|
3
3
|
export { wdioConfig, wdioTestRunner, WdioController, wrapWdio } from './wdio';
|
4
4
|
export { webdriverConfig, WebdriverController, wrapWebdriver } from './webdriver';
|
5
5
|
export { playwrightConfig, PlaywrightController, wrapPlaywright, wrapPlaywrightPage } from './playwright';
|
6
|
-
export { default as playwrightTest } from './playwrightTest';
|
6
|
+
export { default as playwrightTest, type PageWithAxeWatcher as PlaywrightTestPageWithAxeWatcher } from './playwrightTest';
|
7
7
|
export { cypressConfig } from './cypress';
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;AAEpD,yCAKoB;AAJlB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,0GAAA,aAAa,OAAA;AACb,8GAAA,iBAAiB,OAAA;AAEnB,+BAA6E;AAApE,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAC7D,yCAIoB;AAHlB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,0GAAA,aAAa,OAAA;AAEf,2CAKqB;AAJnB,8GAAA,gBAAgB,OAAA;AAChB,kHAAA,oBAAoB,OAAA;AACpB,4GAAA,cAAc,OAAA;AACd,gHAAA,kBAAkB,OAAA;AAEpB,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;AAEpD,yCAKoB;AAJlB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,0GAAA,aAAa,OAAA;AACb,8GAAA,iBAAiB,OAAA;AAEnB,+BAA6E;AAApE,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAC7D,yCAIoB;AAHlB,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,0GAAA,aAAa,OAAA;AAEf,2CAKqB;AAJnB,8GAAA,gBAAgB,OAAA;AAChB,kHAAA,oBAAoB,OAAA;AACpB,4GAAA,cAAc,OAAA;AACd,gHAAA,kBAAkB,OAAA;AAEpB,mDAGyB;AAFvB,iIAAA,OAAO,OAAkB;AAG3B,qCAAyC;AAAhC,wGAAA,aAAa,OAAA"}
|
package/dist/playwright.d.ts
CHANGED
@@ -11,7 +11,7 @@ export type Options = Configuration & LaunchOptions;
|
|
11
11
|
export declare function playwrightConfig(opts: Options): LaunchOptions;
|
12
12
|
export declare class PlaywrightController extends Controller {
|
13
13
|
private driver;
|
14
|
-
constructor(driver: Page);
|
14
|
+
constructor(driver: Page, isStopped?: boolean);
|
15
15
|
protected executeScript<T>(fn: string | (() => Promise<T>), ...args: unknown[]): Promise<T>;
|
16
16
|
}
|
17
17
|
/**
|
package/dist/playwright.js
CHANGED
@@ -9,9 +9,12 @@ const Controller_1 = __importDefault(require("./Controller"));
|
|
9
9
|
const headlessNotSupportedError_1 = require("./utils/headlessNotSupportedError");
|
10
10
|
const mergeChromeArgs_1 = __importDefault(require("./utils/mergeChromeArgs"));
|
11
11
|
const writeVariables_1 = __importDefault(require("./utils/writeVariables"));
|
12
|
+
const checkUserArgs_1 = require("./utils/checkUserArgs");
|
13
|
+
const assertVariablesWereWritten_1 = require("./utils/assertVariablesWereWritten");
|
12
14
|
function playwrightConfig(opts) {
|
13
15
|
const { axe, ...config } = opts;
|
14
16
|
let { args = [] } = config;
|
17
|
+
(0, checkUserArgs_1.checkUserArgs)(args);
|
15
18
|
(0, writeVariables_1.default)(axe);
|
16
19
|
if (config.headless) {
|
17
20
|
throw new headlessNotSupportedError_1.HeadlessNotSupportedError('In Playwright, include "--headless=new" in the "args" property of your options instead of using "headless: true"');
|
@@ -25,9 +28,11 @@ function playwrightConfig(opts) {
|
|
25
28
|
};
|
26
29
|
}
|
27
30
|
class PlaywrightController extends Controller_1.default {
|
28
|
-
constructor(driver) {
|
31
|
+
constructor(driver, isStopped = false) {
|
29
32
|
super({ debugLoggerName: 'PlaywrightController' });
|
33
|
+
(0, assertVariablesWereWritten_1.assertVariablesWereWritten)('Playwright', 'playwrightConfig()');
|
30
34
|
this.driver = driver;
|
35
|
+
this.isStopped = isStopped;
|
31
36
|
}
|
32
37
|
async executeScript(fn, ...args) {
|
33
38
|
const [arg] = args || [];
|
package/dist/playwright.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;
|
1
|
+
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;AAiBA,4CAqBC;AArCD,8DAAqC;AACrC,iFAA6E;AAC7E,8EAAqD;AACrD,4EAA2E;AAC3E,yDAAqD;AACrD,mFAA+E;AAW/E,SAAgB,gBAAgB,CAAC,IAAa;IAC5C,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAAA;IAC/B,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM,CAAA;IAE1B,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAA;IACnB,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,IAAI,qDAAyB,CACjC,kHAAkH,CACnH,CAAA;IACH,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAA;IACzB,IAAI,GAAG,IAAA,yBAAe,EAAC,YAAY,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAA;IAEtE,OAAO;QACL,GAAG,MAAM;QACT,QAAQ,EAAE,KAAK;QACf,IAAI;KACL,CAAA;AACH,CAAC;AAED,MAAa,oBAAqB,SAAQ,oBAAU;IAGlD,YAAY,MAAY,EAAE,SAAS,GAAG,KAAK;QACzC,KAAK,CAAC,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC,CAAA;QAElD,IAAA,uDAA0B,EAAC,YAAY,EAAE,oBAAoB,CAAC,CAAA;QAE9D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,EAA+B,EAC/B,GAAG,IAAe;QAElB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,CAAA;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAI,EAAE,EAAE,GAAG,CAAC,CAAA;QACrD,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AApBD,oDAoBC;AAKM,MAAM,cAAc,GAAG,CAE5B,cAA8B,EAE9B,oBAA0C,EAC1B,EAAE;IAClB,MAAM,IAAI,KAAK,CAAC;;;;;;GAMf,CAAC,CAAA;AACJ,CAAC,CAAA;AAbY,QAAA,cAAc,kBAa1B;AAED,2DAAqE;AAA5D,wHAAA,QAAQ,OAAsB"}
|
package/dist/playwrightTest.d.ts
CHANGED
@@ -1,6 +1,12 @@
|
|
1
|
-
import type { TestType, PlaywrightTestArgs, PlaywrightTestOptions, PlaywrightWorkerArgs, PlaywrightWorkerOptions, Expect } from '@playwright/test';
|
2
|
-
import { type Options } from './playwright';
|
3
|
-
type
|
1
|
+
import type { TestType, Page, PlaywrightTestArgs, PlaywrightTestOptions, PlaywrightWorkerArgs, PlaywrightWorkerOptions, Expect } from '@playwright/test';
|
2
|
+
import { PlaywrightController, type Options } from './playwright';
|
3
|
+
export type PageWithAxeWatcher = Page & {
|
4
|
+
axeWatcher: PlaywrightController;
|
5
|
+
};
|
6
|
+
type Test = TestType<PlaywrightTestArgs & PlaywrightTestOptions & Fixtures, PlaywrightWorkerArgs & PlaywrightWorkerOptions>;
|
7
|
+
type Fixtures = {
|
8
|
+
page: PageWithAxeWatcher;
|
9
|
+
};
|
4
10
|
interface ReturnValue {
|
5
11
|
test: Test;
|
6
12
|
expect: Expect;
|
package/dist/playwrightTest.js
CHANGED
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const playwright_1 = require("./playwright");
|
7
7
|
const mergeChromeArgs_1 = __importDefault(require("./utils/mergeChromeArgs"));
|
8
8
|
const writeVariables_1 = __importDefault(require("./utils/writeVariables"));
|
9
|
+
const checkUserArgs_1 = require("./utils/checkUserArgs");
|
9
10
|
const playwrightTest = (options) => {
|
10
11
|
let controller = null;
|
11
12
|
const { axe, ...config } = options;
|
@@ -18,6 +19,8 @@ const playwrightTest = (options) => {
|
|
18
19
|
catch (error) {
|
19
20
|
throw new Error('Unable to load @playwright/test: ' + error.message);
|
20
21
|
}
|
22
|
+
const isStopped = typeof axe.autoAnalyze === 'undefined' ? false : !axe.autoAnalyze;
|
23
|
+
(0, checkUserArgs_1.checkUserArgs)(config.args || []);
|
21
24
|
(0, writeVariables_1.default)(axe);
|
22
25
|
const test = base.extend({
|
23
26
|
context: async ({}, use) => {
|
@@ -31,14 +34,16 @@ const playwrightTest = (options) => {
|
|
31
34
|
await context.close();
|
32
35
|
},
|
33
36
|
page: async ({ page }, use) => {
|
34
|
-
controller =
|
35
|
-
|
37
|
+
controller = page.axeWatcher;
|
38
|
+
if (!controller) {
|
39
|
+
controller = new playwright_1.PlaywrightController(page, isStopped);
|
40
|
+
page.axeWatcher = controller;
|
41
|
+
page = (0, playwright_1.wrapPlaywrightPage)(page, controller);
|
42
|
+
}
|
36
43
|
await use(page);
|
44
|
+
await controller.flush();
|
37
45
|
}
|
38
46
|
});
|
39
|
-
test.afterEach(async () => {
|
40
|
-
await (controller === null || controller === void 0 ? void 0 : controller.flush());
|
41
|
-
});
|
42
47
|
const expect = test.expect;
|
43
48
|
return { test, expect };
|
44
49
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"playwrightTest.js","sourceRoot":"","sources":["../src/playwrightTest.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"playwrightTest.js","sourceRoot":"","sources":["../src/playwrightTest.ts"],"names":[],"mappings":";;;;;AAWA,6CAIqB;AACrB,8EAAqD;AACrD,4EAAmD;AACnD,yDAAqD;AA4BrD,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAe,EAAE;IACvD,IAAI,UAAU,GAAgC,IAAI,CAAA;IAClD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;IAIlC,IAAI,IAAU,CAAA;IACd,IAAI,QAAsC,CAAA;IAC1C,IAAI,CAAC;QAEH,CAAC;QAAA,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC3D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,mCAAmC,GAAI,KAAe,CAAC,OAAO,CAC/D,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GACb,OAAO,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAA;IAEnE,IAAA,6BAAa,EAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAChC,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAW;QAMjC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,EAAE,EAAE;gBACzD,GAAG,MAAM;gBACT,IAAI,EAAE,IAAA,yBAAe,EAAC,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE;oBACvC,sBAAsB,EAAE,IAAI;iBAC7B,CAAC;aACH,CAAC,CAAA;YACF,MAAM,GAAG,CAAC,OAAO,CAAC,CAAA;YAClB,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QACvB,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;YAC5B,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,IAAI,iCAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;gBACtD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;gBAC5B,IAAI,GAAG,IAAA,+BAAkB,EAAC,IAAI,EAAE,UAAU,CAAuB,CAAA;YACnE,CAAC;YAED,MAAM,GAAG,CAAC,IAAI,CAAC,CAAA;YAEf,MAAM,UAAU,CAAC,KAAK,EAAE,CAAA;QAC1B,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IAE1B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AACzB,CAAC,CAAA;AAED,kBAAe,cAAc,CAAA"}
|
@@ -9,6 +9,7 @@ export declare const wrapFrame: (frame: PossiblyWrapped<Frame>, controller: Play
|
|
9
9
|
export declare const wrapFrameLocator: (frameLocator: PossiblyWrapped<FrameLocator>, controller: PlaywrightController) => FrameLocator;
|
10
10
|
export declare const wrapLocator: (locator: PossiblyWrapped<Locator>, controller: PlaywrightController) => Locator;
|
11
11
|
export declare const wrapJSHandle: (jsHandle: PossiblyWrapped<JSHandle>, controller: PlaywrightController) => JSHandle;
|
12
|
+
export declare const wrapSmartHandle: (smartHandle: PossiblyWrapped<JSHandle | ElementHandle>, controller: PlaywrightController) => JSHandle | ElementHandle;
|
12
13
|
export declare const wrapKeyboard: (keyboard: PossiblyWrapped<Keyboard>, controller: PlaywrightController) => Keyboard;
|
13
14
|
export declare const wrapMouse: (mouse: PossiblyWrapped<Mouse>, controller: PlaywrightController) => Mouse;
|
14
15
|
export declare const wrapTouchscreen: (touchscreen: PossiblyWrapped<Touchscreen>, controller: PlaywrightController) => Touchscreen;
|