@axe-core/playwright 4.3.2 → 4.3.3-alpha.221

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/README.md CHANGED
@@ -83,7 +83,7 @@ new AxeBuilder({ page })
83
83
  });
84
84
  ```
85
85
 
86
- ### AxeBuilder#include(selector: String)
86
+ ### AxeBuilder#include(selector: String | String[])
87
87
 
88
88
  Adds a CSS selector to the list of elements to include in analysis
89
89
 
@@ -91,7 +91,18 @@ Adds a CSS selector to the list of elements to include in analysis
91
91
  new AxeBuilder({ page }).include('.results-panel');
92
92
  ```
93
93
 
94
- ### AxeBuilder#exclude(selector: String)
94
+ Method chaining is also available, add multiple CSS selectors to the list of elements to include in analysis
95
+
96
+ ```js
97
+ new AxeBuilder({ page })
98
+ .include('.selector-one')
99
+ .include('.selector-two')
100
+ .include('.selector-three');
101
+ ```
102
+
103
+ Note: arrays with more than one index when passing multiple CSS selectors are not currently supported example: ` .include(['#foo', '#bar', '#baz'])`
104
+
105
+ ### AxeBuilder#exclude(selector: String | String[])
95
106
 
96
107
  Add a CSS selector to the list of elements to exclude from analysis
97
108
 
@@ -99,6 +110,17 @@ Add a CSS selector to the list of elements to exclude from analysis
99
110
  new AxeBuilder({ page }).exclude('.another-element');
100
111
  ```
101
112
 
113
+ Method chaining is also available, add multiple CSS selectors to the list of elements to exclude from analysis
114
+
115
+ ```js
116
+ new AxeBuilder({ page })
117
+ .exclude('.selector-one')
118
+ .exclude('.selector-two')
119
+ .exclude('.selector-three');
120
+ ```
121
+
122
+ Note: arrays with more than one index when passing multiple CSS selectors are not currently supported example: ` .exclude(['#foo', '#bar', '#baz'])`
123
+
102
124
  ### AxeBuilder#options(options: [axe.RunOptions](https://github.com/dequelabs/axe-core/blob/develop/doc/API.md#options-parameter))
103
125
 
104
126
  Specifies options to be used by `axe.run`. Will override any other configured options. including calls to `AxeBuilder#withRules()` and `AxeBuilder#withTags()`. See [axe-core API documentation](https://github.com/dequelabs/axe-core/blob/master/doc/API.md) for information on its structure.
@@ -35,10 +35,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
39
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
40
- to[j] = from[i];
41
- return to;
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
42
46
  };
43
47
  Object.defineProperty(exports, "__esModule", { value: true });
44
48
  exports.caught = void 0;
@@ -47,7 +51,7 @@ var AxePartialRunner = /** @class */ (function () {
47
51
  if (initiator === void 0) { initiator = false; }
48
52
  this.initiator = initiator;
49
53
  this.childRunners = [];
50
- this.partialPromise = exports.caught(partialPromise);
54
+ this.partialPromise = (0, exports.caught)(partialPromise);
51
55
  }
52
56
  AxePartialRunner.prototype.addChildResults = function (childResultRunner) {
53
57
  this.childRunners.push(childResultRunner);
@@ -63,12 +67,12 @@ var AxePartialRunner = /** @class */ (function () {
63
67
  case 1:
64
68
  parentPartial = _a.sent();
65
69
  childPromises = this.childRunners.map(function (childRunner) {
66
- return childRunner ? exports.caught(childRunner.getPartials()) : [null];
70
+ return childRunner ? (0, exports.caught)(childRunner.getPartials()) : [null];
67
71
  });
68
72
  return [4 /*yield*/, Promise.all(childPromises)];
69
73
  case 2:
70
74
  childPartials = (_a.sent()).flat(1);
71
- return [2 /*return*/, __spreadArray([parentPartial], childPartials)];
75
+ return [2 /*return*/, __spreadArray([parentPartial], childPartials, true)];
72
76
  case 3:
73
77
  e_1 = _a.sent();
74
78
  if (this.initiator) {
@@ -1 +1 @@
1
- {"version":3,"file":"AxePartialRunner.js","sourceRoot":"","sources":["../src/AxePartialRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA;IAIE,0BACE,cAA0C,EAClC,SAA0B;QAA1B,0BAAA,EAAA,iBAA0B;QAA1B,cAAS,GAAT,SAAS,CAAiB;QAJ5B,iBAAY,GAAmC,EAAE,CAAC;QAMxD,IAAI,CAAC,cAAc,GAAG,cAAM,CAAC,cAAc,CAAC,CAAC;IAC/C,CAAC;IAEM,0CAAe,GAAtB,UAAuB,iBAA0C;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IAEY,sCAAW,GAAxB;;;;;;;wBAE0B,qBAAM,IAAI,CAAC,cAAc,EAAA;;wBAAzC,aAAa,GAAG,SAAyB;wBACzC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAA,WAAW;4BACrD,OAAO,WAAW,CAAC,CAAC,CAAC,cAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAClE,CAAC,CAAC,CAAC;wBACoB,qBAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAA;;wBAAjD,aAAa,GAAG,CAAC,SAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChE,qCAAQ,aAAa,GAAK,aAAa,GAAE;;;wBAEzC,IAAI,IAAI,CAAC,SAAS,EAAE;4BAClB,MAAM,GAAC,CAAC;yBACT;wBACD,sBAAO,CAAC,IAAI,CAAC,EAAC;;;;;KAEjB;IACH,uBAAC;AAAD,CAAC,AA9BD,IA8BC;;AAED,2EAA2E;AAC3E,oHAAoH;AACvG,QAAA,MAAM,GAAG,CAAC,UAAC,CAAa;IACnC,OAAO,UAAI,CAAa,IAAiB,OAAA,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAf,CAAe,CAAC;IACzD,yDAAyD;AAC3D,CAAC,CAAC,CAAC,cAAO,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"AxePartialRunner.js","sourceRoot":"","sources":["../src/AxePartialRunner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA;IAIE,0BACE,cAA0C,EAClC,SAA0B;QAA1B,0BAAA,EAAA,iBAA0B;QAA1B,cAAS,GAAT,SAAS,CAAiB;QAJ5B,iBAAY,GAAmC,EAAE,CAAC;QAMxD,IAAI,CAAC,cAAc,GAAG,IAAA,cAAM,EAAC,cAAc,CAAC,CAAC;IAC/C,CAAC;IAEM,0CAAe,GAAtB,UAAuB,iBAA0C;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IAEY,sCAAW,GAAxB;;;;;;;wBAE0B,qBAAM,IAAI,CAAC,cAAc,EAAA;;wBAAzC,aAAa,GAAG,SAAyB;wBACzC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAA,WAAW;4BACrD,OAAO,WAAW,CAAC,CAAC,CAAC,IAAA,cAAM,EAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAClE,CAAC,CAAC,CAAC;wBACoB,qBAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAA;;wBAAjD,aAAa,GAAG,CAAC,SAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChE,qCAAQ,aAAa,GAAK,aAAa,SAAE;;;wBAEzC,IAAI,IAAI,CAAC,SAAS,EAAE;4BAClB,MAAM,GAAC,CAAC;yBACT;wBACD,sBAAO,CAAC,IAAI,CAAC,EAAC;;;;;KAEjB;IACH,uBAAC;AAAD,CAAC,AA9BD,IA8BC;;AAED,2EAA2E;AAC3E,oHAAoH;AACvG,QAAA,MAAM,GAAG,CAAC,UAAC,CAAa;IACnC,OAAO,UAAI,CAAa,IAAiB,OAAA,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAf,CAAe,CAAC;IACzD,yDAAyD;AAC3D,CAAC,CAAC,CAAC,cAAO,CAAC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -14,14 +14,14 @@ export default class AxeBuilder {
14
14
  * @param String selector
15
15
  * @returns this
16
16
  */
17
- include(selector: string): this;
17
+ include(selector: string | string[]): this;
18
18
  /**
19
19
  * Selector to exclude in analysis.
20
20
  * This may be called any number of times.
21
21
  * @param String selector
22
22
  * @returns this
23
23
  */
24
- exclude(selector: string): this;
24
+ exclude(selector: string | string[]): this;
25
25
  /**
26
26
  * Set options to be passed into axe-core
27
27
  * @param RunOptions options
package/dist/index.js CHANGED
@@ -60,6 +60,7 @@ var AxeBuilder = /** @class */ (function () {
60
60
  * @returns this
61
61
  */
62
62
  AxeBuilder.prototype.include = function (selector) {
63
+ selector = Array.isArray(selector) ? selector : [selector];
63
64
  this.includes.push(selector);
64
65
  return this;
65
66
  };
@@ -70,6 +71,7 @@ var AxeBuilder = /** @class */ (function () {
70
71
  * @returns this
71
72
  */
72
73
  AxeBuilder.prototype.exclude = function (selector) {
74
+ selector = Array.isArray(selector) ? selector : [selector];
73
75
  this.excludes.push(selector);
74
76
  return this;
75
77
  };
@@ -152,7 +154,7 @@ var AxeBuilder = /** @class */ (function () {
152
154
  return __generator(this, function (_b) {
153
155
  switch (_b.label) {
154
156
  case 0:
155
- context = utils_1.normalizeContext(this.includes, this.excludes);
157
+ context = (0, utils_1.normalizeContext)(this.includes, this.excludes);
156
158
  _a = this, page = _a.page, options = _a.option;
157
159
  page.evaluate(this.script());
158
160
  return [4 /*yield*/, page.evaluate('typeof window.axe.runPartial === "function"')];
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/dist/utils.d.ts CHANGED
@@ -6,7 +6,7 @@ import type { AnalyzePageParams, AnalyzePageResponse } from './types';
6
6
  * @param Array exclude
7
7
  * @returns ContextObject
8
8
  */
9
- export declare const normalizeContext: (includes: string[], excludes: string[]) => ContextObject;
9
+ export declare const normalizeContext: (includes: string[][], excludes: string[][]) => ContextObject;
10
10
  /**
11
11
  * Analyze the page.
12
12
  * @param AnalyzePageParams analyzeContext
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAGA;;;;;GAKG;AAEI,IAAM,gBAAgB,GAAG,UAC9B,QAAkB,EAClB,QAAkB;;IAElB,IAAM,IAAI,GAAkB;QAC1B,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QAClD,CAAA,KAAA,IAAI,CAAC,OAAO,CAAA,CAAC,IAAI,WAAI,QAAQ,EAAE;KAChC;IAED,IAAI,QAAQ,CAAC,MAAM,EAAE;QACnB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;KACzB;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAfW,QAAA,gBAAgB,oBAe3B;AAEF;;;;GAIG;AAEI,IAAM,WAAW,GAAG,UAAC,EAGR;QAFlB,OAAO,aAAA,EACP,OAAO,aAAA;IAEP,8DAA8D;IAC9D,IAAM,OAAO,GAAI,MAAc,CAAC,GAAG,CAAC;IAEpC,eAAe;IACf,OAAO,OAAO;SACX,GAAG,CAAC,OAAO,IAAI,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;SACvC,IAAI,CAAC,UAAC,OAAmB;QACxB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,SAAA,EAAE,CAAC;IAClC,CAAC,CAAC;SACD,KAAK,CAAC,UAAC,GAAU;QAChB,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAhBW,QAAA,WAAW,eAgBtB"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAGA;;;;;GAKG;AAEI,IAAM,gBAAgB,GAAG,UAC9B,QAAoB,EACpB,QAAoB;;IAEpB,IAAM,IAAI,GAAkB;QAC1B,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QAClD,CAAA,KAAA,IAAI,CAAC,OAAO,CAAA,CAAC,IAAI,WAAI,QAAQ,EAAE;KAChC;IAED,IAAI,QAAQ,CAAC,MAAM,EAAE;QACnB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;KACzB;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAfW,QAAA,gBAAgB,oBAe3B;AAEF;;;;GAIG;AAEI,IAAM,WAAW,GAAG,UAAC,EAGR;QAFlB,OAAO,aAAA,EACP,OAAO,aAAA;IAEP,8DAA8D;IAC9D,IAAM,OAAO,GAAI,MAAc,CAAC,GAAG,CAAC;IAEpC,eAAe;IACf,OAAO,OAAO;SACX,GAAG,CAAC,OAAO,IAAI,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;SACvC,IAAI,CAAC,UAAC,OAAmB;QACxB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,SAAA,EAAE,CAAC;IAClC,CAAC,CAAC;SACD,KAAK,CAAC,UAAC,GAAU;QAChB,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAhBW,QAAA,WAAW,eAgBtB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axe-core/playwright",
3
- "version": "4.3.2",
3
+ "version": "4.3.3-alpha.221+23b848c",
4
4
  "description": "Provides a method to inject and analyze web pages using axe",
5
5
  "contributors": [
6
6
  {
@@ -36,14 +36,14 @@
36
36
  "prepare": "npm run build"
37
37
  },
38
38
  "dependencies": {
39
- "axe-core": "^4.3.3",
40
- "playwright": "^1.13.1"
39
+ "axe-core": "^4.3.5",
40
+ "playwright": "^1.16.2"
41
41
  },
42
42
  "devDependencies": {
43
- "@types/chai": "^4.2.21",
43
+ "@types/chai": "^4.2.22",
44
44
  "@types/express": "^4.17.13",
45
45
  "@types/mocha": "^8.2.3",
46
- "@types/node": "^14.17.9",
46
+ "@types/node": "^14.17.32",
47
47
  "@types/test-listen": "^1.1.0",
48
48
  "axe-test-fixtures": "github:dequelabs/axe-test-fixtures#v1",
49
49
  "chai": "^4.3.0",
@@ -53,7 +53,7 @@
53
53
  "rimraf": "^3.0.2",
54
54
  "test-listen": "^1.1.0",
55
55
  "ts-node": "^9.1.1",
56
- "typescript": "^4.3.5"
56
+ "typescript": "^4.4.4"
57
57
  },
58
58
  "peerDependencies": {
59
59
  "playwright": ">= 1.0.0"
@@ -77,5 +77,5 @@
77
77
  "functions": 100,
78
78
  "lines": 95
79
79
  },
80
- "gitHead": "ad34c79d557ed9e63493be3fa5dc7ded409b943f"
80
+ "gitHead": "23b848c8959046014d9620a46f18088d5cfa8f3b"
81
81
  }
package/src/index.ts CHANGED
@@ -19,8 +19,8 @@ import AxePartialRunner from './AxePartialRunner';
19
19
 
20
20
  export default class AxeBuilder {
21
21
  private page: Page;
22
- private includes: string[];
23
- private excludes: string[];
22
+ private includes: string[][];
23
+ private excludes: string[][];
24
24
  private option: RunOptions;
25
25
  private source: string;
26
26
  private legacyMode = false;
@@ -42,7 +42,8 @@ export default class AxeBuilder {
42
42
  * @returns this
43
43
  */
44
44
 
45
- public include(selector: string): this {
45
+ public include(selector: string | string[]): this {
46
+ selector = Array.isArray(selector) ? selector : [selector];
46
47
  this.includes.push(selector);
47
48
  return this;
48
49
  }
@@ -54,7 +55,8 @@ export default class AxeBuilder {
54
55
  * @returns this
55
56
  */
56
57
 
57
- public exclude(selector: string): this {
58
+ public exclude(selector: string | string[]): this {
59
+ selector = Array.isArray(selector) ? selector : [selector];
58
60
  this.excludes.push(selector);
59
61
  return this;
60
62
  }
@@ -167,7 +169,9 @@ export default class AxeBuilder {
167
169
  return await this.finishRun(partials);
168
170
  } catch (error) {
169
171
  throw new Error(
170
- `${error.message}\n Please check out https://github.com/dequelabs/axe-core-npm/blob/develop/packages/playwright/error-handling.md`
172
+ `${
173
+ (error as Error).message
174
+ }\n Please check out https://github.com/dequelabs/axe-core-npm/blob/develop/packages/playwright/error-handling.md`
171
175
  );
172
176
  }
173
177
  }
package/src/utils.ts CHANGED
@@ -9,8 +9,8 @@ import type { AnalyzePageParams, AnalyzePageResponse } from './types';
9
9
  */
10
10
 
11
11
  export const normalizeContext = (
12
- includes: string[],
13
- excludes: string[]
12
+ includes: string[][],
13
+ excludes: string[][]
14
14
  ): ContextObject => {
15
15
  const base: ContextObject = {
16
16
  exclude: []
@@ -128,7 +128,7 @@ describe('@axe-core/playwright', () => {
128
128
  axeSource: 'throw new Error()'
129
129
  }).analyze();
130
130
  } catch (e) {
131
- error = e;
131
+ error = e as Error;
132
132
  }
133
133
  assert.isNotNull(error);
134
134
  });
@@ -143,7 +143,7 @@ describe('@axe-core/playwright', () => {
143
143
  .withRules('label')
144
144
  .analyze();
145
145
  } catch (e) {
146
- error = e;
146
+ error = e as Error;
147
147
  }
148
148
 
149
149
  assert.isNotNull(error);
@@ -413,6 +413,95 @@ describe('@axe-core/playwright', () => {
413
413
 
414
414
  assert.notInclude(flattenTarget, '.exclude');
415
415
  });
416
+
417
+ it('with chaining includes', async () => {
418
+ await page.goto(`${addr}/context.html`);
419
+
420
+ const results = await new AxeBuilder({ page })
421
+ .include('.include')
422
+ .include('.include2')
423
+ .analyze();
424
+ const flattenTarget = flatPassesTargets(results);
425
+
426
+ assert.strictEqual(flattenTarget[0], '.include');
427
+ assert.strictEqual(flattenTarget[1], '.include2');
428
+ assert.notInclude(flattenTarget, '.exclude');
429
+ assert.notInclude(flattenTarget, '.exclude2');
430
+ });
431
+
432
+ it('with chaining excludes', async () => {
433
+ await page.goto(`${addr}/context.html`);
434
+ const results = await new AxeBuilder({ page })
435
+ .exclude('.exclude')
436
+ .exclude('.exclude2')
437
+ .analyze();
438
+ const flattenTarget = flatPassesTargets(results);
439
+
440
+ assert.notInclude(flattenTarget, '.exclude');
441
+ assert.notInclude(flattenTarget, '.exclude2');
442
+ });
443
+
444
+ it('with chaining includes and excludes', async () => {
445
+ await page.goto(`${addr}/context.html`);
446
+ const results = await new AxeBuilder({ page })
447
+ .include('.include')
448
+ .include('.include2')
449
+ .exclude('.exclude')
450
+ .exclude('.exclude2')
451
+ .analyze();
452
+ const flattenTarget = flatPassesTargets(results);
453
+
454
+ assert.strictEqual(flattenTarget[0], '.include');
455
+ assert.strictEqual(flattenTarget[1], '.include2');
456
+ assert.notInclude(flattenTarget, '.exclude');
457
+ assert.notInclude(flattenTarget, '.exclude2');
458
+ });
459
+
460
+ it('with include using an array of strings', async () => {
461
+ await page.goto(`${addr}/context.html`);
462
+ const expected = ['.selector-one', '.selector-two', '.selector-three'];
463
+
464
+ const axeSource = `
465
+ window.axe = {
466
+ configure(){},
467
+ run({ include }){
468
+ return Promise.resolve({ include })
469
+ }
470
+ }
471
+ `;
472
+ const results = new AxeBuilder({ page, axeSource: axeSource }).include([
473
+ '.selector-one',
474
+ '.selector-two',
475
+ '.selector-three'
476
+ ]);
477
+
478
+ const { include: actual } = (await results.analyze()) as any;
479
+
480
+ assert.deepEqual(actual[0], expected);
481
+ });
482
+
483
+ it('with exclude using an array of strings', async () => {
484
+ await page.goto(`${addr}/context.html`);
485
+ const expected = ['.selector-one', '.selector-two', '.selector-three'];
486
+
487
+ const axeSource = `
488
+ window.axe = {
489
+ configure(){},
490
+ run({ exclude }){
491
+ return Promise.resolve({ exclude })
492
+ }
493
+ }
494
+ `;
495
+ const results = new AxeBuilder({ page, axeSource: axeSource }).exclude([
496
+ '.selector-one',
497
+ '.selector-two',
498
+ '.selector-three'
499
+ ]);
500
+
501
+ const { exclude: actual } = (await results.analyze()) as any;
502
+
503
+ assert.deepEqual(actual[0], expected);
504
+ });
416
505
  });
417
506
 
418
507
  describe('axe.finishRun errors', () => {
@@ -437,7 +526,7 @@ describe('@axe-core/playwright', () => {
437
526
  assert.fail('Should have thrown');
438
527
  } catch (err) {
439
528
  assert.match(
440
- err.message,
529
+ (err as Error).message,
441
530
  /Please make sure that you have popup blockers disabled./
442
531
  );
443
532
  }
@@ -453,7 +542,7 @@ describe('@axe-core/playwright', () => {
453
542
  }).analyze();
454
543
  assert.fail('Should have thrown');
455
544
  } catch (err) {
456
- assert.match(err.message, /Please check out/);
545
+ assert.match((err as Error).message, /Please check out/);
457
546
  }
458
547
  });
459
548
  });
@@ -527,7 +616,7 @@ describe('@axe-core/playwright', () => {
527
616
  axeSource: axeLegacySource + axeCrasherSource
528
617
  }).analyze();
529
618
  } catch (e) {
530
- error = e;
619
+ error = e as Error;
531
620
  }
532
621
  assert.isNotNull(error);
533
622
  });
@@ -6,6 +6,8 @@
6
6
  <body>
7
7
  <h1>Context Test</h1>
8
8
  <div class="include">include me</div>
9
+ <div class="include2">include me</div>
9
10
  <div class="exclude">exclude me</div>
11
+ <div class="exclude2">exclude me</div>
10
12
  </body>
11
13
  </html>