@axe-core/playwright 4.3.2 → 4.3.3-alpha.213
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/dist/index.d.ts +1 -0
- package/dist/index.js +39 -15
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +20 -7
- package/tests/axe-playwright.spec.ts +47 -4
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -189,23 +189,28 @@ var AxeBuilder = /** @class */ (function () {
|
|
|
189
189
|
*/
|
|
190
190
|
AxeBuilder.prototype.inject = function (frames) {
|
|
191
191
|
return __awaiter(this, void 0, void 0, function () {
|
|
192
|
-
var _i, frames_1, iframe;
|
|
193
|
-
return __generator(this, function (
|
|
194
|
-
switch (
|
|
192
|
+
var _i, frames_1, iframe, _a, _b;
|
|
193
|
+
return __generator(this, function (_c) {
|
|
194
|
+
switch (_c.label) {
|
|
195
195
|
case 0:
|
|
196
196
|
_i = 0, frames_1 = frames;
|
|
197
|
-
|
|
197
|
+
_c.label = 1;
|
|
198
198
|
case 1:
|
|
199
|
-
if (!(_i < frames_1.length)) return [3 /*break*/,
|
|
199
|
+
if (!(_i < frames_1.length)) return [3 /*break*/, 6];
|
|
200
200
|
iframe = frames_1[_i];
|
|
201
201
|
return [4 /*yield*/, iframe.evaluate(this.script())];
|
|
202
202
|
case 2:
|
|
203
|
-
|
|
204
|
-
_a
|
|
205
|
-
|
|
203
|
+
_c.sent();
|
|
204
|
+
_b = (_a = iframe).evaluate;
|
|
205
|
+
return [4 /*yield*/, this.axeConfigure()];
|
|
206
|
+
case 3: return [4 /*yield*/, _b.apply(_a, [_c.sent()])];
|
|
207
|
+
case 4:
|
|
208
|
+
_c.sent();
|
|
209
|
+
_c.label = 5;
|
|
210
|
+
case 5:
|
|
206
211
|
_i++;
|
|
207
212
|
return [3 /*break*/, 1];
|
|
208
|
-
case
|
|
213
|
+
case 6: return [2 /*return*/];
|
|
209
214
|
}
|
|
210
215
|
});
|
|
211
216
|
});
|
|
@@ -215,7 +220,7 @@ var AxeBuilder = /** @class */ (function () {
|
|
|
215
220
|
* @returns String
|
|
216
221
|
*/
|
|
217
222
|
AxeBuilder.prototype.script = function () {
|
|
218
|
-
return
|
|
223
|
+
return this.source;
|
|
219
224
|
};
|
|
220
225
|
AxeBuilder.prototype.runLegacy = function (context) {
|
|
221
226
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -313,17 +318,21 @@ var AxeBuilder = /** @class */ (function () {
|
|
|
313
318
|
};
|
|
314
319
|
AxeBuilder.prototype.finishRun = function (partialResults) {
|
|
315
320
|
return __awaiter(this, void 0, void 0, function () {
|
|
316
|
-
var _a, page, options, context, blankPage;
|
|
317
|
-
return __generator(this, function (
|
|
318
|
-
switch (
|
|
321
|
+
var _a, page, options, context, blankPage, _b, _c;
|
|
322
|
+
return __generator(this, function (_d) {
|
|
323
|
+
switch (_d.label) {
|
|
319
324
|
case 0:
|
|
320
325
|
_a = this, page = _a.page, options = _a.option;
|
|
321
326
|
context = page.context();
|
|
322
327
|
return [4 /*yield*/, context.newPage()];
|
|
323
328
|
case 1:
|
|
324
|
-
blankPage =
|
|
329
|
+
blankPage = _d.sent();
|
|
325
330
|
assert(blankPage, 'Please make sure that you have popup blockers disabled.');
|
|
326
331
|
blankPage.evaluate(this.script());
|
|
332
|
+
_c = (_b = blankPage).evaluate;
|
|
333
|
+
return [4 /*yield*/, this.axeConfigure()];
|
|
334
|
+
case 2:
|
|
335
|
+
_c.apply(_b, [_d.sent()]);
|
|
327
336
|
return [4 /*yield*/, blankPage
|
|
328
337
|
.evaluate(browser_1.axeFinishRun, {
|
|
329
338
|
partialResults: partialResults,
|
|
@@ -332,7 +341,22 @@ var AxeBuilder = /** @class */ (function () {
|
|
|
332
341
|
.finally(function () {
|
|
333
342
|
blankPage.close();
|
|
334
343
|
})];
|
|
335
|
-
case
|
|
344
|
+
case 3: return [2 /*return*/, _d.sent()];
|
|
345
|
+
}
|
|
346
|
+
});
|
|
347
|
+
});
|
|
348
|
+
};
|
|
349
|
+
AxeBuilder.prototype.axeConfigure = function () {
|
|
350
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
351
|
+
var hasRunPartial;
|
|
352
|
+
return __generator(this, function (_a) {
|
|
353
|
+
switch (_a.label) {
|
|
354
|
+
case 0: return [4 /*yield*/, this.page.evaluate('typeof window.axe?.runPartial === "function"')];
|
|
355
|
+
case 1:
|
|
356
|
+
hasRunPartial = _a.sent();
|
|
357
|
+
return [2 /*return*/, "\n ;axe.configure({\n " + (!this.legacyMode && !hasRunPartial
|
|
358
|
+
? 'allowedOrigins: ["<unsafe_all_origins>"],'
|
|
359
|
+
: 'allowedOrigins: ["<same_origin>"],') + "\n branding: { application: 'playwright' }\n })\n "];
|
|
336
360
|
}
|
|
337
361
|
});
|
|
338
362
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axe-core/playwright",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.3-alpha.213+e670bee",
|
|
4
4
|
"description": "Provides a method to inject and analyze web pages using axe",
|
|
5
5
|
"contributors": [
|
|
6
6
|
{
|
|
@@ -77,5 +77,5 @@
|
|
|
77
77
|
"functions": 100,
|
|
78
78
|
"lines": 95
|
|
79
79
|
},
|
|
80
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "e670bee3ef75c692451ba4a6b13580cb8d7a5b68"
|
|
81
81
|
}
|
package/src/index.ts
CHANGED
|
@@ -181,6 +181,7 @@ export default class AxeBuilder {
|
|
|
181
181
|
private async inject(frames: Frame[]): Promise<void> {
|
|
182
182
|
for (const iframe of frames) {
|
|
183
183
|
await iframe.evaluate(this.script());
|
|
184
|
+
await iframe.evaluate(await this.axeConfigure());
|
|
184
185
|
}
|
|
185
186
|
}
|
|
186
187
|
|
|
@@ -190,13 +191,7 @@ export default class AxeBuilder {
|
|
|
190
191
|
*/
|
|
191
192
|
|
|
192
193
|
private script(): string {
|
|
193
|
-
return
|
|
194
|
-
${this.source}
|
|
195
|
-
axe.configure({
|
|
196
|
-
${this.legacyMode ? '' : 'allowedOrigins: ["<unsafe_all_origins>"],'}
|
|
197
|
-
branding: { application: 'playwright' }
|
|
198
|
-
})
|
|
199
|
-
`;
|
|
194
|
+
return this.source;
|
|
200
195
|
}
|
|
201
196
|
|
|
202
197
|
private async runLegacy(context: ContextObject): Promise<AxeResults> {
|
|
@@ -282,6 +277,7 @@ export default class AxeBuilder {
|
|
|
282
277
|
);
|
|
283
278
|
|
|
284
279
|
blankPage.evaluate(this.script());
|
|
280
|
+
blankPage.evaluate(await this.axeConfigure());
|
|
285
281
|
|
|
286
282
|
return await blankPage
|
|
287
283
|
.evaluate(axeFinishRun, {
|
|
@@ -292,4 +288,21 @@ export default class AxeBuilder {
|
|
|
292
288
|
blankPage.close();
|
|
293
289
|
});
|
|
294
290
|
}
|
|
291
|
+
|
|
292
|
+
private async axeConfigure(): Promise<string> {
|
|
293
|
+
const hasRunPartial = await this.page.evaluate<boolean>(
|
|
294
|
+
'typeof window.axe?.runPartial === "function"'
|
|
295
|
+
);
|
|
296
|
+
|
|
297
|
+
return `
|
|
298
|
+
;axe.configure({
|
|
299
|
+
${
|
|
300
|
+
!this.legacyMode && !hasRunPartial
|
|
301
|
+
? 'allowedOrigins: ["<unsafe_all_origins>"],'
|
|
302
|
+
: 'allowedOrigins: ["<same_origin>"],'
|
|
303
|
+
}
|
|
304
|
+
branding: { application: 'playwright' }
|
|
305
|
+
})
|
|
306
|
+
`;
|
|
307
|
+
}
|
|
295
308
|
}
|
|
@@ -61,7 +61,7 @@ describe('@axe-core/playwright', () => {
|
|
|
61
61
|
page,
|
|
62
62
|
axeSource: axeLegacySource
|
|
63
63
|
}).analyze();
|
|
64
|
-
assert.strictEqual(results.testEngine.version, '4.
|
|
64
|
+
assert.strictEqual(results.testEngine.version, '4.2.3');
|
|
65
65
|
assert.isNotNull(results);
|
|
66
66
|
assert.isArray(results.violations);
|
|
67
67
|
assert.isArray(results.incomplete);
|
|
@@ -510,7 +510,7 @@ describe('@axe-core/playwright', () => {
|
|
|
510
510
|
page,
|
|
511
511
|
axeSource: axeLegacySource
|
|
512
512
|
}).analyze();
|
|
513
|
-
assert.strictEqual(results.testEngine.version, '4.
|
|
513
|
+
assert.strictEqual(results.testEngine.version, '4.2.3');
|
|
514
514
|
assert.isNotNull(results);
|
|
515
515
|
assert.isArray(results.violations);
|
|
516
516
|
assert.isArray(results.incomplete);
|
|
@@ -610,12 +610,55 @@ describe('@axe-core/playwright', () => {
|
|
|
610
610
|
|
|
611
611
|
const nodes = violations[0].nodes;
|
|
612
612
|
assert.deepEqual(nodes[0].target, ['#light-frame', 'input']);
|
|
613
|
-
assert.deepEqual(nodes[1].target, [
|
|
614
|
-
assert.deepEqual(nodes[2].target, [
|
|
613
|
+
assert.deepEqual(nodes[1].target, [
|
|
615
614
|
['#shadow-root', '#shadow-frame'],
|
|
616
615
|
'input'
|
|
617
616
|
]);
|
|
617
|
+
assert.deepEqual(nodes[2].target, ['#slotted-frame', 'input']);
|
|
618
618
|
});
|
|
619
619
|
});
|
|
620
620
|
});
|
|
621
|
+
|
|
622
|
+
describe('allowedOrigins', () => {
|
|
623
|
+
const getAllowedOrigins = async (): Promise<string[]> => {
|
|
624
|
+
return await page.evaluate('axe._audit.allowedOrigins');
|
|
625
|
+
};
|
|
626
|
+
|
|
627
|
+
it('should not set when running runPartial and not legacy mode', async () => {
|
|
628
|
+
await page.goto(`${addr}/index.html`);
|
|
629
|
+
await new AxeBuilder({ page }).analyze();
|
|
630
|
+
const allowedOrigins = await getAllowedOrigins();
|
|
631
|
+
assert.deepEqual(allowedOrigins, [addr]);
|
|
632
|
+
assert.lengthOf(allowedOrigins, 1);
|
|
633
|
+
});
|
|
634
|
+
|
|
635
|
+
it('should not set when running runPartial and legacy mode', async () => {
|
|
636
|
+
await page.goto(`${addr}/index.html`);
|
|
637
|
+
await new AxeBuilder({ page }).setLegacyMode(true).analyze();
|
|
638
|
+
const allowedOrigins = await getAllowedOrigins();
|
|
639
|
+
assert.deepEqual(allowedOrigins, [addr]);
|
|
640
|
+
assert.lengthOf(allowedOrigins, 1);
|
|
641
|
+
});
|
|
642
|
+
|
|
643
|
+
it('should not set when running legacy source and legacy mode', async () => {
|
|
644
|
+
await page.goto(`${addr}/index.html`);
|
|
645
|
+
await new AxeBuilder({ page, axeSource: axeLegacySource })
|
|
646
|
+
.setLegacyMode(true)
|
|
647
|
+
.analyze();
|
|
648
|
+
const allowedOrigins = await getAllowedOrigins();
|
|
649
|
+
assert.deepEqual(allowedOrigins, [addr]);
|
|
650
|
+
assert.lengthOf(allowedOrigins, 1);
|
|
651
|
+
});
|
|
652
|
+
|
|
653
|
+
it('should set when running legacy source and not legacy mode', async () => {
|
|
654
|
+
await page.goto(`${addr}/index.html`);
|
|
655
|
+
await new AxeBuilder({
|
|
656
|
+
page,
|
|
657
|
+
axeSource: axeLegacySource
|
|
658
|
+
}).analyze();
|
|
659
|
+
const allowedOrigins = await getAllowedOrigins();
|
|
660
|
+
assert.deepEqual(allowedOrigins, ['*']);
|
|
661
|
+
assert.lengthOf(allowedOrigins, 1);
|
|
662
|
+
});
|
|
663
|
+
});
|
|
621
664
|
});
|