@axe-core/cli 4.7.4-cbd2a5f.0 → 4.8.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/.eslintrc.js +18 -0
- package/CHANGELOG.md +221 -0
- package/package.json +3 -7
- package/src/bin/cli.test.ts +420 -0
- package/src/bin/cli.ts +86 -0
- package/src/bin/index.ts +216 -0
- package/src/lib/axe-test-urls.test.ts +73 -0
- package/src/lib/axe-test-urls.ts +98 -0
- package/src/lib/events.test.ts +26 -0
- package/src/lib/events.ts +68 -0
- package/{dist/src/lib/index.d.ts → src/lib/index.ts} +1 -0
- package/src/lib/utils.test.ts +160 -0
- package/src/lib/utils.ts +147 -0
- package/src/lib/webdriver.test.ts +104 -0
- package/src/lib/webdriver.ts +43 -0
- package/src/testutils/axe-core@2.5.0.js +18929 -0
- package/src/testutils/index.ts +47 -0
- package/src/testutils/simple-clean.html +11 -0
- package/src/testutils/simple.html +12 -0
- package/src/types.ts +42 -0
- package/tsconfig.json +19 -0
- package/dist/package.json +0 -91
- package/dist/src/bin/cli.d.ts +0 -2
- package/dist/src/bin/cli.js +0 -40
- package/dist/src/bin/cli.js.map +0 -1
- package/dist/src/bin/cli.test.d.ts +0 -1
- package/dist/src/bin/cli.test.js +0 -259
- package/dist/src/bin/cli.test.js.map +0 -1
- package/dist/src/bin/index.d.ts +0 -5
- package/dist/src/bin/index.js +0 -168
- package/dist/src/bin/index.js.map +0 -1
- package/dist/src/lib/axe-test-urls.d.ts +0 -4
- package/dist/src/lib/axe-test-urls.js +0 -89
- package/dist/src/lib/axe-test-urls.js.map +0 -1
- package/dist/src/lib/axe-test-urls.test.d.ts +0 -1
- package/dist/src/lib/axe-test-urls.test.js +0 -73
- package/dist/src/lib/axe-test-urls.test.js.map +0 -1
- package/dist/src/lib/events.d.ts +0 -10
- package/dist/src/lib/events.js +0 -54
- package/dist/src/lib/events.js.map +0 -1
- package/dist/src/lib/events.test.d.ts +0 -1
- package/dist/src/lib/events.test.js +0 -31
- package/dist/src/lib/events.test.js.map +0 -1
- package/dist/src/lib/index.js +0 -36
- package/dist/src/lib/index.js.map +0 -1
- package/dist/src/lib/utils.d.ts +0 -15
- package/dist/src/lib/utils.js +0 -127
- package/dist/src/lib/utils.js.map +0 -1
- package/dist/src/lib/utils.test.d.ts +0 -1
- package/dist/src/lib/utils.test.js +0 -165
- package/dist/src/lib/utils.test.js.map +0 -1
- package/dist/src/lib/webdriver.d.ts +0 -4
- package/dist/src/lib/webdriver.js +0 -50
- package/dist/src/lib/webdriver.js.map +0 -1
- package/dist/src/lib/webdriver.test.d.ts +0 -1
- package/dist/src/lib/webdriver.test.js +0 -102
- package/dist/src/lib/webdriver.test.js.map +0 -1
- package/dist/src/testutils/index.d.ts +0 -19
- package/dist/src/testutils/index.js +0 -51
- package/dist/src/testutils/index.js.map +0 -1
- package/dist/src/types.d.ts +0 -37
- package/dist/src/types.js +0 -18
- package/dist/src/types.js.map +0 -1
package/dist/src/bin/index.js
DELETED
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const colors_1 = __importDefault(require("colors"));
|
|
16
|
-
const utils_1 = require("../lib/utils");
|
|
17
|
-
const axe_test_urls_1 = __importDefault(require("../lib/axe-test-urls"));
|
|
18
|
-
const events_1 = __importDefault(require("../lib/events"));
|
|
19
|
-
const webdriver_1 = require("../lib/webdriver");
|
|
20
|
-
const selenium_webdriver_1 = require("selenium-webdriver");
|
|
21
|
-
const cli = (args, url) => __awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
-
const { save, stdout, dir, exit, timer, reporter: noReporter, chromeOptions, verbose, timeout, include, exclude, tags, rules, disable, loadDelay, chromedriverPath, chromePath } = args;
|
|
23
|
-
const showErrors = args.showErrors === true;
|
|
24
|
-
const silentMode = !!stdout;
|
|
25
|
-
args.axeSource = (0, utils_1.getAxeSource)(args.axeSource);
|
|
26
|
-
if (!args.axeSource) {
|
|
27
|
-
console.error((0, utils_1.error)('Unable to find the axe-core source file'));
|
|
28
|
-
process.exit(2);
|
|
29
|
-
}
|
|
30
|
-
args.browser = (0, utils_1.parseBrowser)(args.browser);
|
|
31
|
-
/* istanbul ignore if */
|
|
32
|
-
if (chromeOptions) {
|
|
33
|
-
/* istanbul ignore if */
|
|
34
|
-
if (args.browser !== 'chrome-headless') {
|
|
35
|
-
console.error((0, utils_1.error)('You may only provide --chrome-options when using headless chrome'));
|
|
36
|
-
process.exit(2);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
const driverConfigs = {
|
|
40
|
-
browser: args.browser,
|
|
41
|
-
timeout,
|
|
42
|
-
chromeOptions,
|
|
43
|
-
chromedriverPath,
|
|
44
|
-
chromePath
|
|
45
|
-
};
|
|
46
|
-
args.driver = (0, webdriver_1.startDriver)(driverConfigs);
|
|
47
|
-
const cliReporter = (0, utils_1.reporter)(noReporter, silentMode);
|
|
48
|
-
const axeVersion = (0, utils_1.getAxeVersion)(args.axeSource);
|
|
49
|
-
if (!silentMode) {
|
|
50
|
-
console.log(colors_1.default.bold('Running axe-core ' + axeVersion + ' in ' + args.browser));
|
|
51
|
-
}
|
|
52
|
-
const urls = url.args.map(utils_1.parseUrl);
|
|
53
|
-
/* istanbul ignore if */
|
|
54
|
-
if (urls.length === 0) {
|
|
55
|
-
console.error((0, utils_1.error)('No url was specified. Check `axe --help` for help\n'));
|
|
56
|
-
}
|
|
57
|
-
const events = (0, events_1.default)({
|
|
58
|
-
silentMode,
|
|
59
|
-
timer,
|
|
60
|
-
cliReporter,
|
|
61
|
-
verbose,
|
|
62
|
-
exit
|
|
63
|
-
});
|
|
64
|
-
const testPageConfigParams = {
|
|
65
|
-
driver: args.driver,
|
|
66
|
-
timer,
|
|
67
|
-
loadDelay,
|
|
68
|
-
axeSource: args.axeSource,
|
|
69
|
-
include,
|
|
70
|
-
exclude,
|
|
71
|
-
tags,
|
|
72
|
-
rules,
|
|
73
|
-
disable
|
|
74
|
-
};
|
|
75
|
-
let outcome;
|
|
76
|
-
try {
|
|
77
|
-
try {
|
|
78
|
-
outcome = yield (0, axe_test_urls_1.default)(urls, testPageConfigParams, events);
|
|
79
|
-
}
|
|
80
|
-
catch (e) {
|
|
81
|
-
if (e instanceof selenium_webdriver_1.error.ScriptTimeoutError) {
|
|
82
|
-
console.error((0, utils_1.error)('Error: %s'), e.message);
|
|
83
|
-
console.log(`The timeout is currently configured to be ${timeout} seconds (you can change it with --timeout).`);
|
|
84
|
-
process.exit(2);
|
|
85
|
-
}
|
|
86
|
-
// Provide a more user-friendly error message when there's a ChromeDriver/Chrome version mismatch.
|
|
87
|
-
else if (e instanceof selenium_webdriver_1.error.SessionNotCreatedError &&
|
|
88
|
-
e.message.includes('This version of ChromeDriver only supports'
|
|
89
|
-
// This string has to match the error message printed by chromedriver, see
|
|
90
|
-
// https://chromium.googlesource.com/chromium/src/+/refs/tags/110.0.5481.194/chrome/test/chromedriver/chrome_launcher.cc#300.
|
|
91
|
-
)) {
|
|
92
|
-
console.error((0, utils_1.error)('Error: %s'), e.message);
|
|
93
|
-
console.log(`\nPlease install a matching version of ChromeDriver and run axe with the --chromedriver-path option:
|
|
94
|
-
|
|
95
|
-
$ npm install -g chromedriver@<version>
|
|
96
|
-
$ axe --chromedriver-path $(npm root -g)/chromedriver/bin/chromedriver <url...>
|
|
97
|
-
|
|
98
|
-
(where <version> is the first number of the "current browser version" reported above.)`);
|
|
99
|
-
process.exit(2);
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
throw e;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
if (silentMode) {
|
|
106
|
-
process.stdout.write(JSON.stringify(outcome, null, 2));
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
if (timer) {
|
|
110
|
-
console.timeEnd('Total test time');
|
|
111
|
-
}
|
|
112
|
-
/* istanbul ignore if */
|
|
113
|
-
if (Array.isArray(outcome)) {
|
|
114
|
-
console.log((0, utils_1.bold)('Testing complete of %d pages\n'), outcome.length);
|
|
115
|
-
}
|
|
116
|
-
if (save || dir) {
|
|
117
|
-
try {
|
|
118
|
-
const fileName = (0, utils_1.saveOutcome)(outcome, save, dir);
|
|
119
|
-
console.log('Saved file at', fileName, '\n');
|
|
120
|
-
}
|
|
121
|
-
catch (e) {
|
|
122
|
-
/* istanbul ignore next */
|
|
123
|
-
console.error((0, utils_1.error)('Unable to save file!\n') + e);
|
|
124
|
-
process.exit(1);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
if (exit) {
|
|
128
|
-
let exitErr = false;
|
|
129
|
-
/* istanbul ignore if */
|
|
130
|
-
if (Array.isArray(outcome)) {
|
|
131
|
-
for (const res of outcome) {
|
|
132
|
-
if (res.violations.length > 0) {
|
|
133
|
-
exitErr = true;
|
|
134
|
-
break;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
exitErr = outcome.violations.length > 0;
|
|
140
|
-
}
|
|
141
|
-
if (exitErr) {
|
|
142
|
-
process.exit(1);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
/* istanbul ignore if */
|
|
146
|
-
if (silentMode) {
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
console.log((0, utils_1.italics)('Please note that only 20% to 50% of all accessibility ' +
|
|
150
|
-
'issues can automatically be detected. \nManual testing is ' +
|
|
151
|
-
'always required. For more information see:\n%s\n'), (0, utils_1.link)('https://dequeuniversity.com/curriculum/courses/testingmethods'));
|
|
152
|
-
}
|
|
153
|
-
catch (e) {
|
|
154
|
-
/* istanbul ignore else */
|
|
155
|
-
if (!showErrors) {
|
|
156
|
-
console.error((0, utils_1.error)('An error occurred while testing this page.'));
|
|
157
|
-
}
|
|
158
|
-
else {
|
|
159
|
-
console.error((0, utils_1.error)('Error: %s'), e);
|
|
160
|
-
}
|
|
161
|
-
console.error('Please report the problem to: ' +
|
|
162
|
-
(0, utils_1.link)('https://github.com/dequelabs/axe-core-npm/issues/') +
|
|
163
|
-
'\n');
|
|
164
|
-
process.exit(1);
|
|
165
|
-
}
|
|
166
|
-
});
|
|
167
|
-
exports.default = cli;
|
|
168
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bin/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const webdriverjs_1 = __importDefault(require("@axe-core/webdriverjs"));
|
|
16
|
-
const testPages = (urls, config, events) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
-
const driver = yield config.driver;
|
|
18
|
-
if (urls.length === 0) {
|
|
19
|
-
yield driver.quit();
|
|
20
|
-
return Promise.resolve([]);
|
|
21
|
-
}
|
|
22
|
-
return new Promise((resolve, reject) => {
|
|
23
|
-
const currentUrl = urls[0].replace(/[,;]$/, '');
|
|
24
|
-
if (events === null || events === void 0 ? void 0 : events.onTestStart) {
|
|
25
|
-
events === null || events === void 0 ? void 0 : events.onTestStart(currentUrl);
|
|
26
|
-
}
|
|
27
|
-
if (config.timer) {
|
|
28
|
-
events === null || events === void 0 ? void 0 : events.startTimer('axe page load time');
|
|
29
|
-
}
|
|
30
|
-
driver
|
|
31
|
-
.get(currentUrl)
|
|
32
|
-
.then(() => {
|
|
33
|
-
if (config.timer) {
|
|
34
|
-
events === null || events === void 0 ? void 0 : events.endTimer('axe page load time');
|
|
35
|
-
}
|
|
36
|
-
if (config.loadDelay) {
|
|
37
|
-
events === null || events === void 0 ? void 0 : events.waitingMessage(config.loadDelay);
|
|
38
|
-
}
|
|
39
|
-
return new Promise(resolve => {
|
|
40
|
-
setTimeout(resolve, config.loadDelay);
|
|
41
|
-
});
|
|
42
|
-
})
|
|
43
|
-
.then(() => {
|
|
44
|
-
const axe = new webdriverjs_1.default(driver, config.axeSource);
|
|
45
|
-
if (Array.isArray(config.include)) {
|
|
46
|
-
config.include.forEach((include) => axe.include(include));
|
|
47
|
-
}
|
|
48
|
-
if (Array.isArray(config.exclude)) {
|
|
49
|
-
config.exclude.forEach((exclude) => axe.exclude(exclude));
|
|
50
|
-
}
|
|
51
|
-
if (config.tags) {
|
|
52
|
-
axe.withTags(config.tags);
|
|
53
|
-
}
|
|
54
|
-
else if (config.rules) {
|
|
55
|
-
axe.withRules(config.rules);
|
|
56
|
-
}
|
|
57
|
-
/* istanbul ignore if */
|
|
58
|
-
if (config.disable) {
|
|
59
|
-
axe.disableRules(config.disable);
|
|
60
|
-
}
|
|
61
|
-
if (config.timer) {
|
|
62
|
-
events === null || events === void 0 ? void 0 : events.startTimer('axe-core execution time');
|
|
63
|
-
}
|
|
64
|
-
axe.analyze((err, results) => {
|
|
65
|
-
if (config.timer) {
|
|
66
|
-
events === null || events === void 0 ? void 0 : events.endTimer('axe-core execution time');
|
|
67
|
-
}
|
|
68
|
-
/* istanbul ignore if */
|
|
69
|
-
if (err) {
|
|
70
|
-
return reject(err);
|
|
71
|
-
}
|
|
72
|
-
// Notify about the update
|
|
73
|
-
if (events === null || events === void 0 ? void 0 : events.onTestComplete) {
|
|
74
|
-
events === null || events === void 0 ? void 0 : events.onTestComplete(results);
|
|
75
|
-
}
|
|
76
|
-
// Move to the next item
|
|
77
|
-
testPages(urls.slice(1), config, events).then((out) => {
|
|
78
|
-
resolve([results].concat(out));
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
})
|
|
82
|
-
.catch((e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
83
|
-
yield driver.quit();
|
|
84
|
-
reject(e);
|
|
85
|
-
}));
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
exports.default = testPages;
|
|
89
|
-
//# sourceMappingURL=axe-test-urls.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"axe-test-urls.js","sourceRoot":"","sources":["../../../src/lib/axe-test-urls.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import 'mocha';
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
require("mocha");
|
|
16
|
-
const chai_1 = require("chai");
|
|
17
|
-
const axe_test_urls_1 = __importDefault(require("./axe-test-urls"));
|
|
18
|
-
describe('testPages', function () {
|
|
19
|
-
this.timeout(10000);
|
|
20
|
-
let config;
|
|
21
|
-
let mockDriver;
|
|
22
|
-
beforeEach(() => {
|
|
23
|
-
const func = (arg) => __awaiter(this, void 0, void 0, function* () { return '{}'; });
|
|
24
|
-
mockDriver = {
|
|
25
|
-
get: func,
|
|
26
|
-
executeAsyncScript: func,
|
|
27
|
-
executeScript: func,
|
|
28
|
-
wait: func,
|
|
29
|
-
switchTo: () => ({ defaultContent: () => { } }),
|
|
30
|
-
findElements: () => __awaiter(this, void 0, void 0, function* () { return []; }),
|
|
31
|
-
quit: func,
|
|
32
|
-
manage: () => ({
|
|
33
|
-
setTimeouts: func
|
|
34
|
-
})
|
|
35
|
-
};
|
|
36
|
-
config = { driver: mockDriver };
|
|
37
|
-
});
|
|
38
|
-
it('return a promise', () => {
|
|
39
|
-
chai_1.assert.instanceOf((0, axe_test_urls_1.default)([], config), Promise);
|
|
40
|
-
});
|
|
41
|
-
it('calls driver.get() for each URL', () => __awaiter(this, void 0, void 0, function* () {
|
|
42
|
-
const urlsCalled = [];
|
|
43
|
-
const urls = ['http://foo', 'http://bar', 'http://baz'];
|
|
44
|
-
mockDriver.get = (url) => __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
urlsCalled.push(url);
|
|
46
|
-
return url;
|
|
47
|
-
});
|
|
48
|
-
yield (0, axe_test_urls_1.default)(urls, config);
|
|
49
|
-
chai_1.assert.deepEqual(urlsCalled, urls);
|
|
50
|
-
}));
|
|
51
|
-
it('injects axe into the page', () => __awaiter(this, void 0, void 0, function* () {
|
|
52
|
-
const scripts = [];
|
|
53
|
-
config.axeSource = 'axe="hi, I am axe"';
|
|
54
|
-
mockDriver.executeScript = (script) => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
scripts.push(script);
|
|
56
|
-
return script;
|
|
57
|
-
});
|
|
58
|
-
yield (0, axe_test_urls_1.default)(['http://foo'], config);
|
|
59
|
-
chai_1.assert.include(scripts[0].toString(), config.axeSource);
|
|
60
|
-
}));
|
|
61
|
-
it('runs axe once the page is loaded', () => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
const asyncScripts = [];
|
|
63
|
-
mockDriver.executeAsyncScript = (script) => __awaiter(this, void 0, void 0, function* () {
|
|
64
|
-
asyncScripts.push(script);
|
|
65
|
-
return '{}';
|
|
66
|
-
});
|
|
67
|
-
yield (0, axe_test_urls_1.default)(['http://foo'], config);
|
|
68
|
-
chai_1.assert.isDefined(asyncScripts
|
|
69
|
-
.map(script => script.toString())
|
|
70
|
-
.find(script => script.match(/(axe\.run)|(axe\.a11yCheck)/)));
|
|
71
|
-
}));
|
|
72
|
-
});
|
|
73
|
-
//# sourceMappingURL=axe-test-urls.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"axe-test-urls.test.js","sourceRoot":"","sources":["../../../src/lib/axe-test-urls.test.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lib/events.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { AxeResults } from 'axe-core';
|
|
2
|
-
import type { EventParams } from '../types';
|
|
3
|
-
declare const _default: ({ silentMode, timer, cliReporter, verbose }: EventParams) => {
|
|
4
|
-
startTimer: (message: string) => void;
|
|
5
|
-
endTimer: (message: string) => void;
|
|
6
|
-
waitingMessage: (loadDelayTime: number) => void;
|
|
7
|
-
onTestStart: (url: string) => void;
|
|
8
|
-
onTestComplete: (results: AxeResults) => void;
|
|
9
|
-
};
|
|
10
|
-
export default _default;
|
package/dist/src/lib/events.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const utils_1 = require("./utils");
|
|
4
|
-
exports.default = ({ silentMode, timer, cliReporter, verbose }) => {
|
|
5
|
-
return {
|
|
6
|
-
startTimer: (message) => {
|
|
7
|
-
console.time(message);
|
|
8
|
-
},
|
|
9
|
-
endTimer: (message) => {
|
|
10
|
-
console.timeEnd(message);
|
|
11
|
-
},
|
|
12
|
-
waitingMessage: (loadDelayTime) => {
|
|
13
|
-
console.log('Waiting for ' + loadDelayTime + ' milliseconds after page loads...');
|
|
14
|
-
},
|
|
15
|
-
onTestStart: (url) => {
|
|
16
|
-
if (silentMode) {
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
console.log((0, utils_1.bold)('\nTesting ' + (0, utils_1.link)(url)) +
|
|
20
|
-
' ... please wait, this may take a minute.');
|
|
21
|
-
if (timer) {
|
|
22
|
-
console.time('Total test time');
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
onTestComplete: (results) => {
|
|
26
|
-
const { violations, testEngine, testEnvironment, testRunner } = results;
|
|
27
|
-
/* istanbul ignore if */
|
|
28
|
-
if (violations.length === 0) {
|
|
29
|
-
cliReporter((0, utils_1.green)(' 0 violations found!'));
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
const issueCount = violations.reduce((count, violation) => {
|
|
33
|
-
cliReporter('\n' +
|
|
34
|
-
(0, utils_1.error)(' Violation of %j with %d occurrences!\n') +
|
|
35
|
-
' %s. Correct invalid elements at:\n' +
|
|
36
|
-
violation.nodes
|
|
37
|
-
.map(node => ' - ' + (0, utils_1.selectorToString)(node.target) + '\n')
|
|
38
|
-
.join('') +
|
|
39
|
-
' For details, see: %s', violation.id, violation.nodes.length, violation.description, (0, utils_1.link)(violation.helpUrl.split('?')[0]));
|
|
40
|
-
return count + violation.nodes.length;
|
|
41
|
-
}, 0);
|
|
42
|
-
cliReporter((0, utils_1.error)('\n%d Accessibility issues detected.'), issueCount);
|
|
43
|
-
if (verbose) {
|
|
44
|
-
const metadata = {
|
|
45
|
-
'Test Runner': testRunner,
|
|
46
|
-
'Test Engine': testEngine,
|
|
47
|
-
'Test Environment': testEnvironment
|
|
48
|
-
};
|
|
49
|
-
cliReporter(`\n${JSON.stringify(metadata, null, 2)}`);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/lib/events.ts"],"names":[],"mappings":";;AAEA,mCAAqE;AAErE,kBAAe,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAe,EAAE,EAAE;IAC1E,OAAO;QACL,UAAU,EAAE,CAAC,OAAe,EAAE,EAAE;YAC9B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QACD,QAAQ,EAAE,CAAC,OAAe,EAAE,EAAE;YAC5B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,cAAc,EAAE,CAAC,aAAqB,EAAE,EAAE;YACxC,OAAO,CAAC,GAAG,CACT,cAAc,GAAG,aAAa,GAAG,mCAAmC,CACrE,CAAC;QACJ,CAAC;QACD,WAAW,EAAE,CAAC,GAAW,EAAE,EAAE;YAC3B,IAAI,UAAU,EAAE;gBACd,OAAO;aACR;YACD,OAAO,CAAC,GAAG,CACT,IAAA,YAAI,EAAC,YAAY,GAAG,IAAA,YAAI,EAAC,GAAG,CAAC,CAAC;gBAC5B,2CAA2C,CAC9C,CAAC;YACF,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;aACjC;QACH,CAAC;QACD,cAAc,EAAE,CAAC,OAAmB,EAAE,EAAE;YACtC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAExE,wBAAwB;YACxB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,WAAW,CAAC,IAAA,aAAK,EAAC,sBAAsB,CAAC,CAAC,CAAC;gBAC3C,OAAO;aACR;YAED,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;gBACxD,WAAW,CACT,IAAI;oBACF,IAAA,aAAK,EAAC,0CAA0C,CAAC;oBACjD,wCAAwC;oBACxC,SAAS,CAAC,KAAK;yBACZ,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;yBAC7D,IAAI,CAAC,EAAE,CAAC;oBACX,0BAA0B,EAC5B,SAAS,CAAC,EAAE,EACZ,SAAS,CAAC,KAAK,CAAC,MAAM,EACtB,SAAS,CAAC,WAAW,EACrB,IAAA,YAAI,EAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CACtC,CAAC;gBACF,OAAO,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;YACxC,CAAC,EAAE,CAAC,CAAC,CAAC;YAEN,WAAW,CAAC,IAAA,aAAK,EAAC,qCAAqC,CAAC,EAAE,UAAU,CAAC,CAAC;YAEtE,IAAI,OAAO,EAAE;gBACX,MAAM,QAAQ,GAAG;oBACf,aAAa,EAAE,UAAU;oBACzB,aAAa,EAAE,UAAU;oBACzB,kBAAkB,EAAE,eAAe;iBACpC,CAAC;gBACF,WAAW,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;aACvD;QACH,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import 'mocha';
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
require("mocha");
|
|
7
|
-
const chai_1 = require("chai");
|
|
8
|
-
const events_1 = __importDefault(require("./events"));
|
|
9
|
-
describe('events()', () => {
|
|
10
|
-
const event = (0, events_1.default)({
|
|
11
|
-
silentMode: false,
|
|
12
|
-
timer: false,
|
|
13
|
-
cliReporter: () => { },
|
|
14
|
-
verbose: false,
|
|
15
|
-
exit: false
|
|
16
|
-
});
|
|
17
|
-
const functions = [
|
|
18
|
-
'startTimer',
|
|
19
|
-
'endTimer',
|
|
20
|
-
'waitingMessage',
|
|
21
|
-
'onTestStart',
|
|
22
|
-
'onTestComplete'
|
|
23
|
-
];
|
|
24
|
-
for (const eventFunction of functions) {
|
|
25
|
-
it(`${eventFunction} is a typeof function`, () => {
|
|
26
|
-
// @ts-ignore
|
|
27
|
-
chai_1.assert.isFunction(event[eventFunction]);
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
//# sourceMappingURL=events.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.test.js","sourceRoot":"","sources":["../../../src/lib/events.test.ts"],"names":[],"mappings":";;;;;AAAA,iBAAe;AACf,+BAA8B;AAC9B,sDAA8B;AAE9B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,MAAM,KAAK,GAAG,IAAA,gBAAM,EAAC;QACnB,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,KAAK;QACZ,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;QACrB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,MAAM,SAAS,GAAG;QAChB,YAAY;QACZ,UAAU;QACV,gBAAgB;QAChB,aAAa;QACb,gBAAgB;KACjB,CAAC;IACF,KAAK,MAAM,aAAa,IAAI,SAAS,EAAE;QACrC,EAAE,CAAC,GAAG,aAAa,uBAAuB,EAAE,GAAG,EAAE;YAC/C,aAAa;YACb,aAAM,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;KACJ;AACH,CAAC,CAAC,CAAC"}
|
package/dist/src/lib/index.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.utils = exports.testPages = exports.saveOutcome = void 0;
|
|
30
|
-
const axe_test_urls_1 = __importDefault(require("./axe-test-urls"));
|
|
31
|
-
exports.testPages = axe_test_urls_1.default;
|
|
32
|
-
const utils_1 = require("./utils");
|
|
33
|
-
Object.defineProperty(exports, "saveOutcome", { enumerable: true, get: function () { return utils_1.saveOutcome; } });
|
|
34
|
-
const utils = __importStar(require("./utils"));
|
|
35
|
-
exports.utils = utils;
|
|
36
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAwC;AAIlB,oBAJf,uBAAS,CAIe;AAH/B,mCAAsC;AAG7B,4FAHA,mBAAW,OAGA;AAFpB,+CAAiC;AAEA,sBAAK"}
|
package/dist/src/lib/utils.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import colors from 'colors';
|
|
2
|
-
import type { AxeResults, UnlabelledFrameSelector } from 'axe-core';
|
|
3
|
-
export declare const saveOutcome: (outcome: AxeResults | AxeResults[], fileName?: string, dir?: string) => string;
|
|
4
|
-
export declare const parseUrl: (url: string) => string;
|
|
5
|
-
export declare const parseBrowser: (browser?: string) => string | Error;
|
|
6
|
-
export declare const getAxeSource: (axePath?: string, dirname?: string) => string | void;
|
|
7
|
-
export declare const getAxeVersion: (source: string) => string;
|
|
8
|
-
export declare const splitList: (val: string) => string[];
|
|
9
|
-
export declare const selectorToString: (selectors: UnlabelledFrameSelector, separator?: string) => string;
|
|
10
|
-
export declare const reporter: (noReporter: boolean, silentMode: boolean) => (() => void);
|
|
11
|
-
export declare const link: colors.Color;
|
|
12
|
-
export declare const error: colors.Color;
|
|
13
|
-
export declare const bold: colors.Color;
|
|
14
|
-
export declare const green: colors.Color;
|
|
15
|
-
export declare const italics: colors.Color;
|