@axe-core/watcher 3.16.0-next.8c1d1dbb → 3.16.0-next.9943b079

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. package/dist/Controller.d.ts +1 -1
  2. package/dist/Controller.js +33 -34
  3. package/dist/Controller.js.map +1 -1
  4. package/dist/cypress.js +2 -0
  5. package/dist/cypress.js.map +1 -1
  6. package/dist/index.d.ts +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/playwright.d.ts +1 -1
  9. package/dist/playwright.js +4 -1
  10. package/dist/playwright.js.map +1 -1
  11. package/dist/playwrightTest.d.ts +9 -3
  12. package/dist/playwrightTest.js +10 -5
  13. package/dist/playwrightTest.js.map +1 -1
  14. package/dist/puppeteer.js +2 -0
  15. package/dist/puppeteer.js.map +1 -1
  16. package/dist/utils/checkUserArgs.d.ts +8 -0
  17. package/dist/utils/checkUserArgs.js +10 -0
  18. package/dist/utils/checkUserArgs.js.map +1 -0
  19. package/dist/wdio.js +3 -0
  20. package/dist/wdio.js.map +1 -1
  21. package/dist/webdriver.js +2 -0
  22. package/dist/webdriver.js.map +1 -1
  23. package/extension/axe.js +1 -1
  24. package/extension/axe.js.LICENSE.txt +1 -1
  25. package/extension/background.js +1 -1
  26. package/extension/content.js +1 -1
  27. package/package.json +2 -2
  28. package/dist/testutils.d.ts +0 -13
  29. package/dist/testutils.js +0 -50
  30. package/dist/testutils.js.map +0 -1
  31. package/dist/utils/assertVariablesWereWritten.test.d.ts +0 -1
  32. package/dist/utils/assertVariablesWereWritten.test.js +0 -31
  33. package/dist/utils/assertVariablesWereWritten.test.js.map +0 -1
  34. package/dist/utils/headlessNotSupportedError.test.d.ts +0 -1
  35. package/dist/utils/headlessNotSupportedError.test.js +0 -21
  36. package/dist/utils/headlessNotSupportedError.test.js.map +0 -1
  37. package/dist/utils/initializeSession.test.d.ts +0 -1
  38. package/dist/utils/initializeSession.test.js +0 -177
  39. package/dist/utils/initializeSession.test.js.map +0 -1
  40. package/dist/utils/isValidExcludePattern.test.d.ts +0 -1
  41. package/dist/utils/isValidExcludePattern.test.js +0 -17
  42. package/dist/utils/isValidExcludePattern.test.js.map +0 -1
  43. package/dist/utils/mergeChromeArgs.test.d.ts +0 -1
  44. package/dist/utils/mergeChromeArgs.test.js +0 -257
  45. package/dist/utils/mergeChromeArgs.test.js.map +0 -1
  46. package/dist/utils/proxyHandlers.test.d.ts +0 -1
  47. package/dist/utils/proxyHandlers.test.js +0 -27
  48. package/dist/utils/proxyHandlers.test.js.map +0 -1
  49. package/dist/utils/validateAxeRunContext.test.d.ts +0 -1
  50. package/dist/utils/validateAxeRunContext.test.js +0 -97
  51. package/dist/utils/validateAxeRunContext.test.js.map +0 -1
  52. package/dist/utils/validateAxeRunOptions.test.d.ts +0 -1
  53. package/dist/utils/validateAxeRunOptions.test.js +0 -215
  54. package/dist/utils/validateAxeRunOptions.test.js.map +0 -1
  55. package/dist/utils/writeVariables.test.d.ts +0 -1
  56. package/dist/utils/writeVariables.test.js +0 -200
  57. package/dist/utils/writeVariables.test.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axe-core/watcher",
3
- "version": "3.16.0-next.8c1d1dbb",
3
+ "version": "3.16.0-next.9943b079",
4
4
  "description": "",
5
5
  "license": "UNLICENSED",
6
6
  "main": "dist/index.js",
@@ -41,7 +41,7 @@
41
41
  "@types/sinon": "^17.0.3",
42
42
  "@types/uuid": "^10.0.0",
43
43
  "@wdio/types": "^9.0.4",
44
- "axe-core": "^4.10.0",
44
+ "axe-core": "^4.10.1",
45
45
  "axe-test-fixtures": "github:dequelabs/axe-test-fixtures#v1",
46
46
  "body-parser": "^1.20.1",
47
47
  "chai": "^4.3.6",
@@ -1,13 +0,0 @@
1
- import { type Variables } from './utils/writeVariables';
2
- export declare function createExtensionFolder(): void;
3
- export declare function deleteExtensionFolder(): void;
4
- export declare function assertVariables(expected: Partial<Variables>): void;
5
- export type ForwardCompatible<T = any> = T & {
6
- unknownFutureApi: () => any;
7
- };
8
- export declare class StubUsingPrivate {
9
- #private;
10
- static for<T>(methods: Partial<{
11
- [k in keyof ForwardCompatible<T>]: ForwardCompatible<T>[k];
12
- }>): T & StubUsingPrivate;
13
- }
package/dist/testutils.js DELETED
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
- };
7
- var __importDefault = (this && this.__importDefault) || function (mod) {
8
- return (mod && mod.__esModule) ? mod : { "default": mod };
9
- };
10
- var _StubUsingPrivate_instances, _StubUsingPrivate_private;
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.StubUsingPrivate = void 0;
13
- exports.createExtensionFolder = createExtensionFolder;
14
- exports.deleteExtensionFolder = deleteExtensionFolder;
15
- exports.assertVariables = assertVariables;
16
- const chai_1 = require("chai");
17
- const fs_1 = __importDefault(require("fs"));
18
- const constants_1 = require("./utils/constants");
19
- function createExtensionFolder() {
20
- fs_1.default.mkdirSync(constants_1.PATH_TO_EXTENSION, { recursive: true });
21
- }
22
- function deleteExtensionFolder() {
23
- fs_1.default.rmSync(constants_1.PATH_TO_EXTENSION, { recursive: true });
24
- }
25
- function assertVariables(expected) {
26
- const variablesString = fs_1.default.readFileSync(constants_1.PATH_TO_EXTENSION_VARIABLES, 'utf8');
27
- const variables = JSON.parse(variablesString);
28
- for (const [key, value] of Object.entries(expected)) {
29
- chai_1.assert.deepEqual(variables[key], value);
30
- }
31
- }
32
- class StubUsingPrivate {
33
- constructor() {
34
- _StubUsingPrivate_instances.add(this);
35
- }
36
- static for(methods) {
37
- const stub = new StubUsingPrivate();
38
- for (const name in methods) {
39
- ;
40
- stub[name] = function (...args) {
41
- __classPrivateFieldGet(this, _StubUsingPrivate_instances, "m", _StubUsingPrivate_private).call(this);
42
- return methods[name](...args);
43
- };
44
- }
45
- return stub;
46
- }
47
- }
48
- exports.StubUsingPrivate = StubUsingPrivate;
49
- _StubUsingPrivate_instances = new WeakSet(), _StubUsingPrivate_private = function _StubUsingPrivate_private() { };
50
- //# sourceMappingURL=testutils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testutils.js","sourceRoot":"","sources":["../src/testutils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAQA,sDAEC;AAED,sDAEC;AAED,0CAOC;AAvBD,+BAA6B;AAC7B,4CAAmB;AACnB,iDAG0B;AAG1B,SAAgB,qBAAqB;IACnC,YAAE,CAAC,SAAS,CAAC,6BAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACtD,CAAC;AAED,SAAgB,qBAAqB;IACnC,YAAE,CAAC,MAAM,CAAC,6BAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,SAAgB,eAAe,CAAC,QAA4B;IAC1D,MAAM,eAAe,GAAG,YAAE,CAAC,YAAY,CAAC,uCAA2B,EAAE,MAAM,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAE7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,aAAM,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;AACH,CAAC;AASD,MAAa,gBAAgB;IAA7B;;IAgBA,CAAC;IAdC,MAAM,CAAC,GAAG,CACR,OAEE;QAEF,MAAM,IAAI,GAAG,IAAI,gBAAgB,EAA0B,CAAA;QAC3D,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,CAAC;YAAC,IAAY,CAAC,IAAI,CAAC,GAAG,UAAkC,GAAG,IAAW;gBACrE,uBAAA,IAAI,8DAAS,MAAb,IAAI,CAAW,CAAA;gBACf,OAAQ,OAAe,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;YACxC,CAAQ,CAAA;QACV,CAAC;QACD,OAAO,IAA+C,CAAA;IACxD,CAAC;CACF;AAhBD,4CAgBC;gHAfa,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 testutils_1 = require("../testutils");
9
- const constants_1 = require("./constants");
10
- const fs_1 = __importDefault(require("fs"));
11
- const assertVariablesWereWritten_1 = require("./assertVariablesWereWritten");
12
- describe('assertVariablesWereWritten', () => {
13
- beforeEach(() => {
14
- (0, testutils_1.createExtensionFolder)();
15
- });
16
- afterEach(() => {
17
- (0, testutils_1.deleteExtensionFolder)();
18
- });
19
- describe('when variables were written', () => {
20
- it('doesn`t throw an error', () => {
21
- fs_1.default.writeFileSync(constants_1.PATH_TO_EXTENSION_VARIABLES, JSON.stringify({}));
22
- chai_1.assert.doesNotThrow(() => (0, assertVariablesWereWritten_1.assertVariablesWereWritten)('test', 'test()'));
23
- });
24
- });
25
- describe('when variables were not written', () => {
26
- it('throws an error', () => {
27
- chai_1.assert.throws(() => (0, assertVariablesWereWritten_1.assertVariablesWereWritten)('test', 'test()'), `test is not configured for @axe-core/watcher. Please ensure that @axe-core/watcher's test() is invoked. All tests will fail with this error.`);
28
- });
29
- });
30
- });
31
- //# sourceMappingURL=assertVariablesWereWritten.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assertVariablesWereWritten.test.js","sourceRoot":"","sources":["../../src/utils/assertVariablesWereWritten.test.ts"],"names":[],"mappings":";;;;;AAAA,iBAAc;AACd,+BAA6B;AAC7B,4CAA2E;AAC3E,2CAAyD;AACzD,4CAAmB;AACnB,6EAAyE;AAEzE,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,UAAU,CAAC,GAAG,EAAE;QACd,IAAA,iCAAqB,GAAE,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAA,iCAAqB,GAAE,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YAChC,YAAE,CAAC,aAAa,CAAC,uCAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;YAEjE,aAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAA,uDAA0B,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;QACzE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,aAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,IAAA,uDAA0B,EAAC,MAAM,EAAE,QAAQ,CAAC,EAClD,8IAA8I,CAC/I,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- import 'mocha';
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("mocha");
4
- const chai_1 = require("chai");
5
- const headlessNotSupportedError_1 = require("./headlessNotSupportedError");
6
- describe('headlessNotSupportedError', () => {
7
- describe('given no `extendedMessage`', () => {
8
- it('should return the default message', () => {
9
- const error = new headlessNotSupportedError_1.HeadlessNotSupportedError();
10
- chai_1.assert.equal(error.message, (0, headlessNotSupportedError_1.generateMessage)());
11
- });
12
- });
13
- describe('given an `extendedMessage`', () => {
14
- it('should return the default message with the `extendedMessage` appended', () => {
15
- const extendedMessage = 'extended message';
16
- const error = new headlessNotSupportedError_1.HeadlessNotSupportedError(extendedMessage);
17
- chai_1.assert.equal(error.message, (0, headlessNotSupportedError_1.generateMessage)(extendedMessage));
18
- });
19
- });
20
- });
21
- //# sourceMappingURL=headlessNotSupportedError.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"headlessNotSupportedError.test.js","sourceRoot":"","sources":["../../src/utils/headlessNotSupportedError.test.ts"],"names":[],"mappings":";;AAAA,iBAAc;AACd,+BAA6B;AAC7B,2EAGoC;AAEpC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,KAAK,GAAG,IAAI,qDAAyB,EAAE,CAAA;YAE7C,aAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAA,2CAAe,GAAE,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;YAC/E,MAAM,eAAe,GAAG,kBAAkB,CAAA;YAC1C,MAAM,KAAK,GAAG,IAAI,qDAAyB,CAAC,eAAe,CAAC,CAAA;YAE5D,aAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAA,2CAAe,EAAC,eAAe,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- import 'mocha';
@@ -1,177 +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 sinon_1 = __importDefault(require("sinon"));
9
- const proxyquire_1 = __importDefault(require("proxyquire"));
10
- const initializeSession_1 = __importDefault(require("./initializeSession"));
11
- describe('initializeSession', () => {
12
- afterEach(sinon_1.default.restore);
13
- const defaultParams = {
14
- apiKey: 'abc',
15
- serverURL: 'http://localhost:3000',
16
- watcherVersion: '1.0.0',
17
- sessionID: null,
18
- buildID: null,
19
- gitCommitSha: null
20
- };
21
- describe('validating input', () => {
22
- describe('when the API key is missing', () => {
23
- it('throws an error', () => {
24
- chai_1.assert.throws(() => {
25
- (0, initializeSession_1.default)({});
26
- }, 'API key is required');
27
- });
28
- });
29
- describe('when the server URL is missing', () => {
30
- it('throws an error', () => {
31
- chai_1.assert.throws(() => {
32
- (0, initializeSession_1.default)({ apiKey: 'abc' });
33
- }, 'Server URL is required');
34
- });
35
- });
36
- describe('when the watcher version is missing', () => {
37
- it('throws an error', () => {
38
- chai_1.assert.throws(() => {
39
- (0, initializeSession_1.default)({
40
- apiKey: 'abc',
41
- serverURL: 'http://localhost:3000'
42
- });
43
- }, 'Watcher version is required');
44
- });
45
- });
46
- describe('when the session ID is not a string', () => {
47
- it('throws an error', () => {
48
- chai_1.assert.throws(() => {
49
- (0, initializeSession_1.default)({
50
- ...defaultParams,
51
- sessionID: 123
52
- });
53
- }, 'Session ID must be a string');
54
- });
55
- });
56
- describe('when the build ID is not a string', () => {
57
- it('throws an error', () => {
58
- chai_1.assert.throws(() => {
59
- (0, initializeSession_1.default)({
60
- ...defaultParams,
61
- buildID: 123
62
- });
63
- }, 'Build ID must be a string');
64
- });
65
- });
66
- describe('when both session ID and build ID are provided', () => {
67
- it('throws an error', () => {
68
- chai_1.assert.throws(() => {
69
- (0, initializeSession_1.default)({
70
- ...defaultParams,
71
- sessionID: 'abc',
72
- buildID: '123'
73
- });
74
- }, 'Session ID and Build ID are mutually exclusive. `sessionId` is deprecated, please use `buildID` instead');
75
- });
76
- });
77
- describe('when the git commit SHA is not a string', () => {
78
- it('throws an error', () => {
79
- chai_1.assert.throws(() => {
80
- (0, initializeSession_1.default)({
81
- ...defaultParams,
82
- gitCommitSha: 123
83
- });
84
- }, 'Git commit SHA must be a string');
85
- });
86
- });
87
- });
88
- describe('when the server returns a non-200 response', () => {
89
- afterEach(sinon_1.default.restore);
90
- it('throws an error', () => {
91
- const requestStub = sinon_1.default
92
- .stub()
93
- .returns({ statusCode: 500, getBody: () => '{"errors":["boom"]}' });
94
- const fn = (0, proxyquire_1.default)('./initializeSession', {
95
- 'sync-request': requestStub
96
- }).default;
97
- chai_1.assert.throws(() => {
98
- fn(defaultParams);
99
- }, 'boom');
100
- });
101
- });
102
- describe('when the server returns a 200 response', () => {
103
- it('does not throw an error', () => {
104
- const expectedBody = {
105
- errors: [],
106
- warnings: [],
107
- session_id: 'abc'
108
- };
109
- const requestStub = sinon_1.default.stub().returns({
110
- statusCode: 200,
111
- getBody: () => JSON.stringify(expectedBody)
112
- });
113
- const fn = (0, proxyquire_1.default)('./initializeSession', {
114
- 'sync-request': requestStub
115
- }).default;
116
- const invoke = fn(defaultParams);
117
- chai_1.assert.doesNotThrow(() => invoke);
118
- chai_1.assert.deepEqual(invoke, expectedBody.session_id);
119
- });
120
- describe('and no session_id is returned', () => {
121
- const expectedBody = {
122
- errors: [],
123
- warnings: []
124
- };
125
- const sessionID = 'xyz';
126
- describe('and a sessionID is provided', () => {
127
- it('uses the sessionID', () => {
128
- const requestStub = sinon_1.default.stub().returns({
129
- statusCode: 200,
130
- getBody: () => JSON.stringify(expectedBody)
131
- });
132
- const fn = (0, proxyquire_1.default)('./initializeSession', {
133
- 'sync-request': requestStub
134
- }).default;
135
- const invoke = fn({
136
- ...defaultParams,
137
- ...{ sessionID }
138
- });
139
- chai_1.assert.deepEqual(invoke, sessionID);
140
- });
141
- });
142
- describe('and a buildID is provided', () => {
143
- it('throws', () => {
144
- const requestStub = sinon_1.default.stub().returns({
145
- statusCode: 200,
146
- getBody: () => JSON.stringify(expectedBody)
147
- });
148
- const fn = (0, proxyquire_1.default)('./initializeSession', {
149
- 'sync-request': requestStub
150
- }).default;
151
- const buildID = 'def';
152
- chai_1.assert.throws(() => fn({
153
- ...defaultParams,
154
- ...{ buildID }
155
- }), 'Failed to initialize session based on build_id. Try again later.');
156
- });
157
- });
158
- describe('and neither a sessionID nor a buildID are provided', () => {
159
- it('uses a generated UUID', () => {
160
- const requestStub = sinon_1.default.stub().returns({
161
- statusCode: 200,
162
- getBody: () => JSON.stringify(expectedBody)
163
- });
164
- const generatedID = 'ghi';
165
- const uuidStub = sinon_1.default.stub().returns(generatedID);
166
- const fn = (0, proxyquire_1.default)('./initializeSession', {
167
- 'sync-request': requestStub,
168
- uuid: { v4: uuidStub }
169
- }).default;
170
- const invoke = fn(defaultParams);
171
- chai_1.assert.deepEqual(invoke, generatedID);
172
- });
173
- });
174
- });
175
- });
176
- });
177
- //# sourceMappingURL=initializeSession.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"initializeSession.test.js","sourceRoot":"","sources":["../../src/utils/initializeSession.test.ts"],"names":[],"mappings":";;;;;AAAA,iBAAc;AACd,+BAA6B;AAC7B,kDAAyB;AACzB,4DAAmC;AACnC,4EAE4B;AAE5B,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,SAAS,CAAC,eAAK,CAAC,OAAO,CAAC,CAAA;IAExB,MAAM,aAAa,GAA4B;QAC7C,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,uBAAuB;QAClC,cAAc,EAAE,OAAO;QACvB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,IAAI;KACnB,CAAA;IAED,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;YAC3C,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBAEjB,IAAA,2BAAiB,EAAC,EAAE,CAAC,CAAA;gBACvB,CAAC,EAAE,qBAAqB,CAAC,CAAA;YAC3B,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC9C,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBAEjB,IAAA,2BAAiB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;gBACtC,CAAC,EAAE,wBAAwB,CAAC,CAAA;YAC9B,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;YACnD,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBAEjB,IAAA,2BAAiB,EAAC;wBAChB,MAAM,EAAE,KAAK;wBACb,SAAS,EAAE,uBAAuB;qBACnC,CAAC,CAAA;gBACJ,CAAC,EAAE,6BAA6B,CAAC,CAAA;YACnC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;YACnD,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAA,2BAAiB,EAAC;wBAChB,GAAG,aAAa;wBAEhB,SAAS,EAAE,GAAG;qBACf,CAAC,CAAA;gBACJ,CAAC,EAAE,6BAA6B,CAAC,CAAA;YACnC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACjD,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAA,2BAAiB,EAAC;wBAChB,GAAG,aAAa;wBAEhB,OAAO,EAAE,GAAG;qBACb,CAAC,CAAA;gBACJ,CAAC,EAAE,2BAA2B,CAAC,CAAA;YACjC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;YAC9D,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAA,2BAAiB,EAAC;wBAChB,GAAG,aAAa;wBAChB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,KAAK;qBACf,CAAC,CAAA;gBACJ,CAAC,EAAE,yGAAyG,CAAC,CAAA;YAC/G,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACvD,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBACzB,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAA,2BAAiB,EAAC;wBAChB,GAAG,aAAa;wBAEhB,YAAY,EAAE,GAAG;qBAClB,CAAC,CAAA;gBACJ,CAAC,EAAE,iCAAiC,CAAC,CAAA;YACvC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAC1D,SAAS,CAAC,eAAK,CAAC,OAAO,CAAC,CAAA;QAExB,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,WAAW,GAAG,eAAK;iBACtB,IAAI,EAAE;iBACN,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAA;YACrE,MAAM,EAAE,GAAG,IAAA,oBAAU,EAAC,qBAAqB,EAAE;gBAC3C,cAAc,EAAE,WAAW;aAC5B,CAAC,CAAC,OAAmC,CAAA;YAEtC,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE;gBACjB,EAAE,CAAC,aAAa,CAAC,CAAA;YACnB,CAAC,EAAE,MAAM,CAAC,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;QACtD,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,YAAY,GAAG;gBACnB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,KAAK;aAClB,CAAA;YACD,MAAM,WAAW,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;gBACvC,UAAU,EAAE,GAAG;gBACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aAC5C,CAAC,CAAA;YACF,MAAM,EAAE,GAAG,IAAA,oBAAU,EAAC,qBAAqB,EAAE;gBAC3C,cAAc,EAAE,WAAW;aAC5B,CAAC,CAAC,OAAmC,CAAA;YAEtC,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,CAAA;YAEhC,aAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;YACjC,aAAM,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;YAC7C,MAAM,YAAY,GAAG;gBACnB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;aACb,CAAA;YACD,MAAM,SAAS,GAAG,KAAK,CAAA;YAEvB,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;gBAC3C,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;oBAC5B,MAAM,WAAW,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;wBACvC,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;qBAC5C,CAAC,CAAA;oBACF,MAAM,EAAE,GAAG,IAAA,oBAAU,EAAC,qBAAqB,EAAE;wBAC3C,cAAc,EAAE,WAAW;qBAC5B,CAAC,CAAC,OAAmC,CAAA;oBAEtC,MAAM,MAAM,GAAG,EAAE,CAAC;wBAChB,GAAG,aAAa;wBAChB,GAAG,EAAE,SAAS,EAAE;qBACjB,CAAC,CAAA;oBAEF,aAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;gBACrC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;gBACzC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBAChB,MAAM,WAAW,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;wBACvC,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;qBAC5C,CAAC,CAAA;oBACF,MAAM,EAAE,GAAG,IAAA,oBAAU,EAAC,qBAAqB,EAAE;wBAC3C,cAAc,EAAE,WAAW;qBAC5B,CAAC,CAAC,OAAmC,CAAA;oBAEtC,MAAM,OAAO,GAAG,KAAK,CAAA;oBAErB,aAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,EAAE,CAAC;wBACD,GAAG,aAAa;wBAChB,GAAG,EAAE,OAAO,EAAE;qBACf,CAAC,EACJ,kEAAkE,CACnE,CAAA;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,QAAQ,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAClE,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;oBAC/B,MAAM,WAAW,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;wBACvC,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;qBAC5C,CAAC,CAAA;oBACF,MAAM,WAAW,GAAG,KAAK,CAAA;oBACzB,MAAM,QAAQ,GAAG,eAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;oBAClD,MAAM,EAAE,GAAG,IAAA,oBAAU,EAAC,qBAAqB,EAAE;wBAC3C,cAAc,EAAE,WAAW;wBAC3B,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE;qBACvB,CAAC,CAAC,OAAmC,CAAA;oBAEtC,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,CAAA;oBAEhC,aAAM,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;gBACvC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- import 'mocha';
@@ -1,17 +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 isValidExcludePattern_1 = __importDefault(require("./isValidExcludePattern"));
9
- describe('isValidExcludePattern', () => {
10
- it('returns true for valid exclude patterns', () => {
11
- chai_1.assert.doesNotThrow(() => (0, isValidExcludePattern_1.default)(['foo', 'bar']));
12
- });
13
- it('returns false for invalid exclude patterns', () => {
14
- chai_1.assert.throws(() => (0, isValidExcludePattern_1.default)(['foo', 'bar', 1]));
15
- });
16
- });
17
- //# sourceMappingURL=isValidExcludePattern.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isValidExcludePattern.test.js","sourceRoot":"","sources":["../../src/utils/isValidExcludePattern.test.ts"],"names":[],"mappings":";;;;;AAAA,iBAAc;AACd,+BAA6B;AAC7B,oFAA2D;AAE3D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,aAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAA,+BAAqB,EAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAClE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,aAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAA,+BAAqB,EAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- import 'mocha';
@@ -1,257 +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 constants_1 = require("./constants");
9
- const mergeChromeArgs_1 = __importDefault(require("./mergeChromeArgs"));
10
- describe('mergeChromeArgs', () => {
11
- describe('given the user has not provided any args', () => {
12
- describe('when `disableOtherExtensions` is true', () => {
13
- it('returns the `--load-extension` when `--disable-extensions-except` flags', () => {
14
- const args = (0, mergeChromeArgs_1.default)([], {
15
- disableOtherExtensions: true
16
- });
17
- const [loadExtension, disableExtensionsExcept] = args;
18
- chai_1.assert.lengthOf(args, 2);
19
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
20
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
21
- });
22
- });
23
- describe('and `disableOtherExtensions` is false', () => {
24
- it('only returns the `--load-extension` flag', () => {
25
- const args = (0, mergeChromeArgs_1.default)([], {
26
- disableOtherExtensions: false
27
- });
28
- const [loadExtension] = args;
29
- chai_1.assert.lengthOf(args, 1);
30
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
31
- });
32
- });
33
- });
34
- describe('given the user has provided args', () => {
35
- describe('when the user has not provided extension flags', () => {
36
- describe('when `disableOtherExtensions` is true', () => {
37
- describe('and the user args and not prefixed with `--`', () => {
38
- it('does not modify the user provided args and appends the extension flags', () => {
39
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'baz=qux,quz', 'quux'], {
40
- disableOtherExtensions: true
41
- });
42
- const [foo, baz, quux, loadExtension, disableExtensionsExcept] = args;
43
- chai_1.assert.lengthOf(args, 5);
44
- chai_1.assert.equal(foo, 'foo=bar');
45
- chai_1.assert.equal(baz, 'baz=qux,quz');
46
- chai_1.assert.equal(quux, 'quux');
47
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
48
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
49
- });
50
- describe('and the user adds multiple instances of the same flag', () => {
51
- it('does not modify the user provided args and appends the extension flags', () => {
52
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'foo=baz'], {
53
- disableOtherExtensions: true
54
- });
55
- const [foo1, foo2, loadExtension, disableExtensionsExcept] = args;
56
- chai_1.assert.lengthOf(args, 4);
57
- chai_1.assert.equal(foo1, 'foo=bar');
58
- chai_1.assert.equal(foo2, 'foo=baz');
59
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
60
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
61
- });
62
- describe('and some values are comma-separated', () => {
63
- it('does not modify the user provided args and appends the extension flags', () => {
64
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'foo=baz,qux'], {
65
- disableOtherExtensions: true
66
- });
67
- const [foo1, foo2, loadExtension, disableExtensionsExcept] = args;
68
- chai_1.assert.lengthOf(args, 4);
69
- chai_1.assert.equal(foo1, 'foo=bar');
70
- chai_1.assert.equal(foo2, 'foo=baz,qux');
71
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
72
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
73
- });
74
- });
75
- });
76
- });
77
- });
78
- describe('and `disableOtherExtensions` is false', () => {
79
- it('does not modify the user provided args and appends the extension flags', () => {
80
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'baz=qux,quz', 'quux'], {
81
- disableOtherExtensions: false
82
- });
83
- const [foo, baz, quux, loadExtension] = args;
84
- chai_1.assert.lengthOf(args, 4);
85
- chai_1.assert.equal(foo, 'foo=bar');
86
- chai_1.assert.equal(baz, 'baz=qux,quz');
87
- chai_1.assert.equal(quux, 'quux');
88
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
89
- });
90
- describe('and the user adds multiple instances of the same flag', () => {
91
- it('does not modify the user provided args and appends the extension flags', () => {
92
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'foo=baz'], {
93
- disableOtherExtensions: false
94
- });
95
- chai_1.assert.lengthOf(args, 3);
96
- const [foo1, foo2, loadExtension] = args;
97
- chai_1.assert.equal(foo1, 'foo=bar');
98
- chai_1.assert.equal(foo2, 'foo=baz');
99
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
100
- });
101
- describe('and some values are comma-separated', () => {
102
- it('does not modify the user provided args and appends the extension flags', () => {
103
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'foo=baz,qux'], {
104
- disableOtherExtensions: false
105
- });
106
- chai_1.assert.lengthOf(args, 3);
107
- const [foo1, foo2, loadExtension] = args;
108
- chai_1.assert.equal(foo1, 'foo=bar');
109
- chai_1.assert.equal(foo2, 'foo=baz,qux');
110
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
111
- });
112
- });
113
- });
114
- });
115
- });
116
- describe('when the user has provided extension flags', () => {
117
- describe('when `disableOtherExtensions` is true', () => {
118
- describe('and the user extension flags are not prefixed with `--`', () => {
119
- it('does not modify the user provided args and appends the extension flags', () => {
120
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'baz=qux,quz', 'quux', 'load-extension=foo'], {
121
- disableOtherExtensions: true
122
- });
123
- const [foo, baz, quux, loadExtension, disableExtensionsExcept] = args;
124
- chai_1.assert.lengthOf(args, 5);
125
- chai_1.assert.equal(foo, 'foo=bar');
126
- chai_1.assert.equal(baz, 'baz=qux,quz');
127
- chai_1.assert.equal(quux, 'quux');
128
- chai_1.assert.equal(loadExtension, `load-extension=foo,${constants_1.PATH_TO_EXTENSION}`);
129
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
130
- });
131
- describe('and the user adds multiple instances of the same flag', () => {
132
- it('does not modify the user provided args and appends the extension flags', () => {
133
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'load-extension=baz', 'load-extension=qux'], {
134
- disableOtherExtensions: true
135
- });
136
- const [foo, loadExtension1, loadExtension2, disableExtensionsExcept] = args;
137
- chai_1.assert.lengthOf(args, 4);
138
- chai_1.assert.equal(foo, 'foo=bar');
139
- chai_1.assert.equal(loadExtension1, 'load-extension=baz');
140
- chai_1.assert.equal(loadExtension2, `load-extension=qux,${constants_1.PATH_TO_EXTENSION}`);
141
- chai_1.assert.equal(disableExtensionsExcept, `--disable-extensions-except=${constants_1.PATH_TO_EXTENSION}`);
142
- });
143
- describe('and some values are comma-separated', () => {
144
- it('does not modify the user provided args and appends the extension flags', () => {
145
- const args = (0, mergeChromeArgs_1.default)([
146
- 'foo=bar',
147
- 'foo=baz,qux',
148
- 'load-extension=foo',
149
- 'disable-extensions-except=quz,quux'
150
- ], {
151
- disableOtherExtensions: true
152
- });
153
- const [foo1, foo2, loadExtension, disableExtensionsExcept] = args;
154
- chai_1.assert.lengthOf(args, 4);
155
- chai_1.assert.equal(foo1, 'foo=bar');
156
- chai_1.assert.equal(foo2, 'foo=baz,qux');
157
- chai_1.assert.equal(loadExtension, `load-extension=foo,${constants_1.PATH_TO_EXTENSION}`);
158
- chai_1.assert.equal(disableExtensionsExcept, `disable-extensions-except=quz,quux,${constants_1.PATH_TO_EXTENSION}`);
159
- });
160
- });
161
- });
162
- });
163
- });
164
- describe('and `disableOtherExtensions` is false', () => {
165
- it('does not modify the user provided args and appends the extension flags', () => {
166
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'baz=qux,quz', 'quux', 'load-extension=foo'], {
167
- disableOtherExtensions: false
168
- });
169
- const [foo, baz, quux, loadExtension] = args;
170
- chai_1.assert.lengthOf(args, 4);
171
- chai_1.assert.equal(foo, 'foo=bar');
172
- chai_1.assert.equal(baz, 'baz=qux,quz');
173
- chai_1.assert.equal(quux, 'quux');
174
- chai_1.assert.equal(loadExtension, `load-extension=foo,${constants_1.PATH_TO_EXTENSION}`);
175
- });
176
- describe('and the user adds multiple instances of the same flag', () => {
177
- it('does not modify the user provided args and appends the extension flags', () => {
178
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'load-extension=baz', 'load-extension=qux'], {
179
- disableOtherExtensions: false
180
- });
181
- const [foo, loadExtension1, loadExtension2] = args;
182
- chai_1.assert.lengthOf(args, 3);
183
- chai_1.assert.equal(foo, 'foo=bar');
184
- chai_1.assert.equal(loadExtension1, 'load-extension=baz');
185
- chai_1.assert.equal(loadExtension2, `load-extension=qux,${constants_1.PATH_TO_EXTENSION}`);
186
- });
187
- describe('and some values are comma-separated', () => {
188
- it('does not modify the user provided args and appends the extension flags', () => {
189
- const args = (0, mergeChromeArgs_1.default)(['foo=bar', 'foo=baz,qux', 'load-extension=foo,quz,quux'], {
190
- disableOtherExtensions: false
191
- });
192
- const [foo1, foo2, loadExtension] = args;
193
- chai_1.assert.lengthOf(args, 3);
194
- chai_1.assert.equal(foo1, 'foo=bar');
195
- chai_1.assert.equal(foo2, 'foo=baz,qux');
196
- chai_1.assert.equal(loadExtension, `load-extension=foo,quz,quux,${constants_1.PATH_TO_EXTENSION}`);
197
- });
198
- });
199
- });
200
- describe('and the user explicity sets the `--disable-extensions-except` flag', () => {
201
- it('does not modify the user provided args and appends the extension flags', () => {
202
- const args = (0, mergeChromeArgs_1.default)([
203
- 'foo=bar',
204
- 'baz=qux,quz',
205
- 'quux',
206
- 'disable-extensions-except=foo'
207
- ], {
208
- disableOtherExtensions: false
209
- });
210
- const [foo, baz, quux, disableExtensionsExcept, loadExtension] = args;
211
- chai_1.assert.lengthOf(args, 5);
212
- chai_1.assert.equal(foo, 'foo=bar');
213
- chai_1.assert.equal(baz, 'baz=qux,quz');
214
- chai_1.assert.equal(quux, 'quux');
215
- chai_1.assert.equal(disableExtensionsExcept, `disable-extensions-except=foo,${constants_1.PATH_TO_EXTENSION}`);
216
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
217
- });
218
- describe('and the user adds multiple instances of the same flag', () => {
219
- it('does not modify the user provided args and appends the extension flags', () => {
220
- const args = (0, mergeChromeArgs_1.default)([
221
- 'foo=bar',
222
- 'disable-extensions-except=baz',
223
- '--disable-extensions-except=qux'
224
- ], {
225
- disableOtherExtensions: false
226
- });
227
- const [foo, disableExtensionsExcept1, disableExtensionsExcept2, loadExtension] = args;
228
- chai_1.assert.lengthOf(args, 4);
229
- chai_1.assert.equal(foo, 'foo=bar');
230
- chai_1.assert.equal(disableExtensionsExcept1, 'disable-extensions-except=baz');
231
- chai_1.assert.equal(disableExtensionsExcept2, `--disable-extensions-except=qux,${constants_1.PATH_TO_EXTENSION}`);
232
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
233
- });
234
- describe('and some values are comma-separated', () => {
235
- it('does not modify the user provided args and appends the extension flags', () => {
236
- const args = (0, mergeChromeArgs_1.default)([
237
- 'foo=bar',
238
- 'foo=baz,qux',
239
- 'disable-extensions-except=foo,quz,quux'
240
- ], {
241
- disableOtherExtensions: false
242
- });
243
- const [foo1, foo2, disableExtensionsExcept, loadExtension] = args;
244
- chai_1.assert.lengthOf(args, 4);
245
- chai_1.assert.equal(foo1, 'foo=bar');
246
- chai_1.assert.equal(foo2, 'foo=baz,qux');
247
- chai_1.assert.equal(disableExtensionsExcept, `disable-extensions-except=foo,quz,quux,${constants_1.PATH_TO_EXTENSION}`);
248
- chai_1.assert.equal(loadExtension, `--load-extension=${constants_1.PATH_TO_EXTENSION}`);
249
- });
250
- });
251
- });
252
- });
253
- });
254
- });
255
- });
256
- });
257
- //# sourceMappingURL=mergeChromeArgs.test.js.map