pagean 4.4.2 → 6.0.1

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.
Files changed (96) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +9 -9
  3. package/docs/upgrade-guide.md +16 -0
  4. package/index.js +7 -4
  5. package/lib/config.js +2 -2
  6. package/lib/default-config.json +41 -39
  7. package/lib/externalFileUtils.js +1 -1
  8. package/lib/linkUtils.js +162 -25
  9. package/lib/logger.js +1 -1
  10. package/lib/report-template.handlebars +224 -209
  11. package/lib/schemaErrors.js +5 -4
  12. package/lib/testUtils.js +1 -1
  13. package/lib/tests.js +14 -14
  14. package/package.json +28 -30
  15. package/schemas/pageanrc.schema.json +199 -191
  16. package/.codeclimate.json +0 -8
  17. package/.depcheckrc.json +0 -3
  18. package/.dockerignore +0 -12
  19. package/.eslintrc.json +0 -19
  20. package/.gitattributes +0 -4
  21. package/.gitlab/gitlab-releaser.json +0 -16
  22. package/.htmlhintrc +0 -25
  23. package/.markdownlint.json +0 -13
  24. package/.pa11yci.json +0 -5
  25. package/.pageanrc.json +0 -55
  26. package/.stylelintrc.json +0 -7
  27. package/CHANGELOG.md +0 -204
  28. package/gitlab.pageanrc.json +0 -16
  29. package/jest.config.json +0 -22
  30. package/static-server.pageanrc.json +0 -50
  31. package/tests/__snapshots__/config.test.js.snap +0 -591
  32. package/tests/__snapshots__/externalFileUtils.test.js.snap +0 -7
  33. package/tests/__snapshots__/index.test.js.snap +0 -30
  34. package/tests/__snapshots__/pagean.test.js.snap +0 -82
  35. package/tests/__snapshots__/pageanrc.test.js.snap +0 -759
  36. package/tests/__snapshots__/reporter.test.js.snap +0 -509
  37. package/tests/config.test.js +0 -264
  38. package/tests/externalFileUtils.test.js +0 -184
  39. package/tests/index.test.js +0 -181
  40. package/tests/linkUtils.test.js +0 -290
  41. package/tests/logger.test.js +0 -324
  42. package/tests/pagean.test.js +0 -85
  43. package/tests/pageanrc.test.js +0 -96
  44. package/tests/reporter.test.js +0 -82
  45. package/tests/schemaErrors.test.js +0 -88
  46. package/tests/test-cases/.htmlhintrc +0 -25
  47. package/tests/test-cases/brokenLinks.html +0 -22
  48. package/tests/test-cases/consoleLog.html +0 -11
  49. package/tests/test-cases/duplicateLinks.html +0 -22
  50. package/tests/test-cases/dynamicContent.html +0 -13
  51. package/tests/test-cases/externalScripts.html +0 -21
  52. package/tests/test-cases/horizontalScrollbar.html +0 -13
  53. package/tests/test-cases/htmlError.html +0 -11
  54. package/tests/test-cases/noExternalScripts.html +0 -12
  55. package/tests/test-cases/notDocumentLinks.html +0 -18
  56. package/tests/test-cases/pagean-results.json +0 -1
  57. package/tests/test-cases/scriptError404.html +0 -9
  58. package/tests/test-cases/slowLoad.html +0 -9
  59. package/tests/test-configs/cli-tests/.pageanrc.json +0 -28
  60. package/tests/test-configs/cli-tests/all-empty.pageanrc.json +0 -10
  61. package/tests/test-configs/cli-tests/all-errors.pageanrc.json +0 -69
  62. package/tests/test-configs/cli-tests/all-fail-cli.pageanrc.json +0 -9
  63. package/tests/test-configs/cli-tests/no-urls.pageanrc.json +0 -7
  64. package/tests/test-configs/cli-tests/pass-fail-cli.pageanrc.json +0 -14
  65. package/tests/test-configs/integration-tests/all-passing-tests.pageanrc.json +0 -63
  66. package/tests/test-configs/integration-tests/broken-links-error.pageanrc.json +0 -22
  67. package/tests/test-configs/integration-tests/console-error-reporter-cli-json.pageanrc.json +0 -20
  68. package/tests/test-configs/integration-tests/console-error-reporter-html.pageanrc.json +0 -19
  69. package/tests/test-configs/integration-tests/console-error.pageanrc.json +0 -16
  70. package/tests/test-configs/integration-tests/console-output.pageanrc.json +0 -16
  71. package/tests/test-configs/integration-tests/external-scripts-error.pageanrc.json +0 -19
  72. package/tests/test-configs/integration-tests/horizontal-scrollbar.pageanrc.json +0 -16
  73. package/tests/test-configs/integration-tests/html-error.pageanrc.json +0 -16
  74. package/tests/test-configs/integration-tests/page-load-time.pageanrc.json +0 -16
  75. package/tests/test-configs/unit-tests/empty-url-values.pageanrc.json +0 -9
  76. package/tests/test-configs/unit-tests/empty-urls.pageanrc.json +0 -3
  77. package/tests/test-configs/unit-tests/empty.pageanrc.json +0 -2
  78. package/tests/test-configs/unit-tests/global-and-test-specific-settings-shorthand.pageanrc.json +0 -30
  79. package/tests/test-configs/unit-tests/global-and-test-specific-settings-test-props.pageanrc.json +0 -42
  80. package/tests/test-configs/unit-tests/global-and-test-specific-settings.pageanrc.json +0 -34
  81. package/tests/test-configs/unit-tests/global-test-settings.pageanrc.json +0 -15
  82. package/tests/test-configs/unit-tests/htmlhintrc-invalid.pageanrc.json +0 -7
  83. package/tests/test-configs/unit-tests/htmlhintrc-valid.pageanrc.json +0 -7
  84. package/tests/test-configs/unit-tests/ignored-links-denormalized.pageanrc.json +0 -18
  85. package/tests/test-configs/unit-tests/invalid.pageanrc.json +0 -0
  86. package/tests/test-configs/unit-tests/no-test-settings.pageanrc.json +0 -6
  87. package/tests/test-configs/unit-tests/project-no-test-settings.pageanrc.json +0 -7
  88. package/tests/test-configs/unit-tests/puppeteer-no-test-settings.pageanrc.json +0 -9
  89. package/tests/test-configs/unit-tests/reporters-empty.pageanrc.json +0 -7
  90. package/tests/test-configs/unit-tests/reporters-invalid-type.pageanrc.json +0 -9
  91. package/tests/test-configs/unit-tests/reporters-not-array.pageanrc.json +0 -6
  92. package/tests/test-configs/unit-tests/reporters-valid.pageanrc.json +0 -9
  93. package/tests/test-configs/unit-tests/test-specific-settings.pageanrc.json +0 -26
  94. package/tests/test-configs/unit-tests/url-types.pageanrc.json +0 -10
  95. package/tests/testUtils.test.js +0 -244
  96. package/tests/tests.test.js +0 -533
@@ -1,759 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`pageanrc lint should lint the all empty pageanrc and return all CLI errors 1`] = `
4
- "
5
- ./tests/test-configs/cli-tests/all-empty.pageanrc.json
6
- <pageanrc>.puppeteerLaunchOptions should NOT have fewer than 1 items
7
- <pageanrc>.reporters should NOT have fewer than 1 items
8
- <pageanrc>.settings should NOT have fewer than 1 items
9
- <pageanrc>.urls should NOT have fewer than 1 items
10
-
11
- Fatal error - exiting (1)
12
- "
13
- `;
14
-
15
- exports[`pageanrc lint should lint the all empty pageanrc and return all JSON errors to stdout with --json option 1`] = `
16
- "[
17
- {
18
- \\"keyword\\": \\"minProperties\\",
19
- \\"dataPath\\": \\"/puppeteerLaunchOptions\\",
20
- \\"schemaPath\\": \\"#/properties/puppeteerLaunchOptions/minProperties\\",
21
- \\"params\\": {
22
- \\"limit\\": 1
23
- },
24
- \\"message\\": \\"should NOT have fewer than 1 items\\"
25
- },
26
- {
27
- \\"keyword\\": \\"minItems\\",
28
- \\"dataPath\\": \\"/reporters\\",
29
- \\"schemaPath\\": \\"#/properties/reporters/minItems\\",
30
- \\"params\\": {
31
- \\"limit\\": 1
32
- },
33
- \\"message\\": \\"should NOT have fewer than 1 items\\"
34
- },
35
- {
36
- \\"keyword\\": \\"minProperties\\",
37
- \\"dataPath\\": \\"/settings\\",
38
- \\"schemaPath\\": \\"#/minProperties\\",
39
- \\"params\\": {
40
- \\"limit\\": 1
41
- },
42
- \\"message\\": \\"should NOT have fewer than 1 items\\"
43
- },
44
- {
45
- \\"keyword\\": \\"minItems\\",
46
- \\"dataPath\\": \\"/urls\\",
47
- \\"schemaPath\\": \\"#/properties/urls/minItems\\",
48
- \\"params\\": {
49
- \\"limit\\": 1
50
- },
51
- \\"message\\": \\"should NOT have fewer than 1 items\\"
52
- }
53
- ]
54
- "
55
- `;
56
-
57
- exports[`pageanrc lint should lint the all errors pageanrc and return all CLI errors 1`] = `
58
- "
59
- ./tests/test-configs/cli-tests/all-errors.pageanrc.json
60
- <pageanrc>.extraProperty should NOT contain additional properties: \\"extraProperty\\"
61
- <pageanrc>.htmlhintrc should be string
62
- <pageanrc>.project should be string
63
- <pageanrc>.puppeteerLaunchOptions should NOT have fewer than 1 items
64
- <pageanrc>.reporters[0] should be equal to one of the allowed values (cli, html, json)
65
- <pageanrc>.settings.new/Test should NOT contain additional properties: \\"new/Test\\"
66
- <pageanrc>.settings.consoleOutputTest should be either boolean or object with the appropriate properties
67
- <pageanrc>.settings.pageLoadTimeTest.some should NOT contain additional properties: \\"some\\"
68
- <pageanrc>.settings.pageLoadTimeTest should be either boolean or object with the appropriate properties
69
- <pageanrc>.urls[1] should be either URL string or object with the appropriate properties
70
- <pageanrc>.urls[2].some should NOT contain additional properties: \\"some\\"
71
- <pageanrc>.urls[2].settings.consoleOutputTest should be either boolean or object with the appropriate properties
72
- <pageanrc>.urls[2].settings.externalScriptTest should be either boolean or object with the appropriate properties
73
- <pageanrc>.urls[2] should be either URL string or object with the appropriate properties
74
- <pageanrc>.urls[3].settings.pageLoadTimeTest.foo should NOT contain additional properties: \\"foo\\"
75
- <pageanrc>.urls[3].settings.pageLoadTimeTest.b~ar should NOT contain additional properties: \\"b~ar\\"
76
- <pageanrc>.urls[3].settings.pageLoadTimeTest should be either boolean or object with the appropriate properties
77
- <pageanrc>.urls[3].settings.brokenLinkTest.ignoredLinks should be array
78
- <pageanrc>.urls[3].settings.brokenLinkTest should be either boolean or object with the appropriate properties
79
- <pageanrc>.urls[3] should be either URL string or object with the appropriate properties
80
- <pageanrc>.urls[4].settings.goo should NOT contain additional properties: \\"goo\\"
81
- <pageanrc>.urls[4].settings.consoleErrorTest.some should NOT contain additional properties: \\"some\\"
82
- <pageanrc>.urls[4].settings.consoleErrorTest should be either boolean or object with the appropriate properties
83
- <pageanrc>.urls[4].settings.brokenLinkTest.ignoredLinks should NOT have duplicate items (items ## 1 and 0 are identical)
84
- <pageanrc>.urls[4].settings.brokenLinkTest should be either boolean or object with the appropriate properties
85
- <pageanrc>.urls[4] should be either URL string or object with the appropriate properties
86
- <pageanrc>.urls[5] should have required property url
87
- <pageanrc>.urls[5] should be either URL string or object with the appropriate properties
88
-
89
- Fatal error - exiting (1)
90
- "
91
- `;
92
-
93
- exports[`pageanrc lint should lint the all errors pageanrc and return all JSON errors to stdout with -j option 1`] = `
94
- "[
95
- {
96
- \\"keyword\\": \\"errorMessage\\",
97
- \\"dataPath\\": \\"/extraProperty\\",
98
- \\"schemaPath\\": \\"#/additionalProperties/errorMessage\\",
99
- \\"params\\": {
100
- \\"errors\\": [
101
- {
102
- \\"keyword\\": \\"not\\",
103
- \\"dataPath\\": \\"/extraProperty\\",
104
- \\"schemaPath\\": \\"#/additionalProperties/not\\",
105
- \\"params\\": {},
106
- \\"message\\": \\"should NOT be valid\\",
107
- \\"emUsed\\": true
108
- }
109
- ]
110
- },
111
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"extraProperty\\\\\\"\\"
112
- },
113
- {
114
- \\"keyword\\": \\"type\\",
115
- \\"dataPath\\": \\"/htmlhintrc\\",
116
- \\"schemaPath\\": \\"#/properties/htmlhintrc/type\\",
117
- \\"params\\": {
118
- \\"type\\": \\"string\\"
119
- },
120
- \\"message\\": \\"should be string\\"
121
- },
122
- {
123
- \\"keyword\\": \\"type\\",
124
- \\"dataPath\\": \\"/project\\",
125
- \\"schemaPath\\": \\"#/properties/project/type\\",
126
- \\"params\\": {
127
- \\"type\\": \\"string\\"
128
- },
129
- \\"message\\": \\"should be string\\"
130
- },
131
- {
132
- \\"keyword\\": \\"minProperties\\",
133
- \\"dataPath\\": \\"/puppeteerLaunchOptions\\",
134
- \\"schemaPath\\": \\"#/properties/puppeteerLaunchOptions/minProperties\\",
135
- \\"params\\": {
136
- \\"limit\\": 1
137
- },
138
- \\"message\\": \\"should NOT have fewer than 1 items\\"
139
- },
140
- {
141
- \\"keyword\\": \\"enum\\",
142
- \\"dataPath\\": \\"/reporters/0\\",
143
- \\"schemaPath\\": \\"#/properties/reporters/items/enum\\",
144
- \\"params\\": {
145
- \\"allowedValues\\": [
146
- \\"cli\\",
147
- \\"html\\",
148
- \\"json\\"
149
- ]
150
- },
151
- \\"message\\": \\"should be equal to one of the allowed values\\"
152
- },
153
- {
154
- \\"keyword\\": \\"errorMessage\\",
155
- \\"dataPath\\": \\"/settings/new~1Test\\",
156
- \\"schemaPath\\": \\"#/additionalProperties/errorMessage\\",
157
- \\"params\\": {
158
- \\"errors\\": [
159
- {
160
- \\"keyword\\": \\"not\\",
161
- \\"dataPath\\": \\"/settings/new~1Test\\",
162
- \\"schemaPath\\": \\"#/additionalProperties/not\\",
163
- \\"params\\": {},
164
- \\"message\\": \\"should NOT be valid\\",
165
- \\"emUsed\\": true
166
- }
167
- ]
168
- },
169
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"new/Test\\\\\\"\\"
170
- },
171
- {
172
- \\"keyword\\": \\"errorMessage\\",
173
- \\"dataPath\\": \\"/settings/consoleOutputTest\\",
174
- \\"schemaPath\\": \\"#/errorMessage\\",
175
- \\"params\\": {
176
- \\"errors\\": [
177
- {
178
- \\"keyword\\": \\"type\\",
179
- \\"dataPath\\": \\"/settings/consoleOutputTest\\",
180
- \\"schemaPath\\": \\"#/oneOf/0/type\\",
181
- \\"params\\": {
182
- \\"type\\": \\"boolean\\"
183
- },
184
- \\"message\\": \\"should be boolean\\",
185
- \\"emUsed\\": true
186
- },
187
- {
188
- \\"keyword\\": \\"type\\",
189
- \\"dataPath\\": \\"/settings/consoleOutputTest\\",
190
- \\"schemaPath\\": \\"#/definitions/detailedSetting/type\\",
191
- \\"params\\": {
192
- \\"type\\": \\"object\\"
193
- },
194
- \\"message\\": \\"should be object\\",
195
- \\"emUsed\\": true
196
- },
197
- {
198
- \\"keyword\\": \\"oneOf\\",
199
- \\"dataPath\\": \\"/settings/consoleOutputTest\\",
200
- \\"schemaPath\\": \\"#/oneOf\\",
201
- \\"params\\": {
202
- \\"passingSchemas\\": null
203
- },
204
- \\"message\\": \\"should match exactly one schema in oneOf\\",
205
- \\"emUsed\\": true
206
- }
207
- ]
208
- },
209
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
210
- },
211
- {
212
- \\"keyword\\": \\"errorMessage\\",
213
- \\"dataPath\\": \\"/settings/pageLoadTimeTest/some\\",
214
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/errorMessage\\",
215
- \\"params\\": {
216
- \\"errors\\": [
217
- {
218
- \\"keyword\\": \\"not\\",
219
- \\"dataPath\\": \\"/settings/pageLoadTimeTest/some\\",
220
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/not\\",
221
- \\"params\\": {},
222
- \\"message\\": \\"should NOT be valid\\",
223
- \\"emUsed\\": true
224
- }
225
- ]
226
- },
227
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"some\\\\\\"\\"
228
- },
229
- {
230
- \\"keyword\\": \\"errorMessage\\",
231
- \\"dataPath\\": \\"/settings/pageLoadTimeTest\\",
232
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/errorMessage\\",
233
- \\"params\\": {
234
- \\"errors\\": [
235
- {
236
- \\"keyword\\": \\"type\\",
237
- \\"dataPath\\": \\"/settings/pageLoadTimeTest\\",
238
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/0/type\\",
239
- \\"params\\": {
240
- \\"type\\": \\"boolean\\"
241
- },
242
- \\"message\\": \\"should be boolean\\",
243
- \\"emUsed\\": true
244
- },
245
- {
246
- \\"keyword\\": \\"oneOf\\",
247
- \\"dataPath\\": \\"/settings/pageLoadTimeTest\\",
248
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf\\",
249
- \\"params\\": {
250
- \\"passingSchemas\\": null
251
- },
252
- \\"message\\": \\"should match exactly one schema in oneOf\\",
253
- \\"emUsed\\": true
254
- }
255
- ]
256
- },
257
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
258
- },
259
- {
260
- \\"keyword\\": \\"errorMessage\\",
261
- \\"dataPath\\": \\"/urls/1\\",
262
- \\"schemaPath\\": \\"#/properties/urls/items/errorMessage\\",
263
- \\"params\\": {
264
- \\"errors\\": [
265
- {
266
- \\"keyword\\": \\"type\\",
267
- \\"dataPath\\": \\"/urls/1\\",
268
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/0/type\\",
269
- \\"params\\": {
270
- \\"type\\": \\"string\\"
271
- },
272
- \\"message\\": \\"should be string\\",
273
- \\"emUsed\\": true
274
- },
275
- {
276
- \\"keyword\\": \\"type\\",
277
- \\"dataPath\\": \\"/urls/1\\",
278
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/1/type\\",
279
- \\"params\\": {
280
- \\"type\\": \\"object\\"
281
- },
282
- \\"message\\": \\"should be object\\",
283
- \\"emUsed\\": true
284
- },
285
- {
286
- \\"keyword\\": \\"oneOf\\",
287
- \\"dataPath\\": \\"/urls/1\\",
288
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf\\",
289
- \\"params\\": {
290
- \\"passingSchemas\\": null
291
- },
292
- \\"message\\": \\"should match exactly one schema in oneOf\\",
293
- \\"emUsed\\": true
294
- }
295
- ]
296
- },
297
- \\"message\\": \\"should be either URL string or object with the appropriate properties\\"
298
- },
299
- {
300
- \\"keyword\\": \\"errorMessage\\",
301
- \\"dataPath\\": \\"/urls/2/some\\",
302
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/1/additionalProperties/errorMessage\\",
303
- \\"params\\": {
304
- \\"errors\\": [
305
- {
306
- \\"keyword\\": \\"not\\",
307
- \\"dataPath\\": \\"/urls/2/some\\",
308
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/1/additionalProperties/not\\",
309
- \\"params\\": {},
310
- \\"message\\": \\"should NOT be valid\\",
311
- \\"emUsed\\": true
312
- }
313
- ]
314
- },
315
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"some\\\\\\"\\"
316
- },
317
- {
318
- \\"keyword\\": \\"errorMessage\\",
319
- \\"dataPath\\": \\"/urls/2/settings/consoleOutputTest\\",
320
- \\"schemaPath\\": \\"#/errorMessage\\",
321
- \\"params\\": {
322
- \\"errors\\": [
323
- {
324
- \\"keyword\\": \\"type\\",
325
- \\"dataPath\\": \\"/urls/2/settings/consoleOutputTest\\",
326
- \\"schemaPath\\": \\"#/oneOf/0/type\\",
327
- \\"params\\": {
328
- \\"type\\": \\"boolean\\"
329
- },
330
- \\"message\\": \\"should be boolean\\",
331
- \\"emUsed\\": true
332
- },
333
- {
334
- \\"keyword\\": \\"minProperties\\",
335
- \\"dataPath\\": \\"/urls/2/settings/consoleOutputTest\\",
336
- \\"schemaPath\\": \\"#/definitions/detailedSetting/minProperties\\",
337
- \\"params\\": {
338
- \\"limit\\": 1
339
- },
340
- \\"message\\": \\"should NOT have fewer than 1 items\\",
341
- \\"emUsed\\": true
342
- },
343
- {
344
- \\"keyword\\": \\"oneOf\\",
345
- \\"dataPath\\": \\"/urls/2/settings/consoleOutputTest\\",
346
- \\"schemaPath\\": \\"#/oneOf\\",
347
- \\"params\\": {
348
- \\"passingSchemas\\": null
349
- },
350
- \\"message\\": \\"should match exactly one schema in oneOf\\",
351
- \\"emUsed\\": true
352
- }
353
- ]
354
- },
355
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
356
- },
357
- {
358
- \\"keyword\\": \\"errorMessage\\",
359
- \\"dataPath\\": \\"/urls/2/settings/externalScriptTest\\",
360
- \\"schemaPath\\": \\"#/errorMessage\\",
361
- \\"params\\": {
362
- \\"errors\\": [
363
- {
364
- \\"keyword\\": \\"type\\",
365
- \\"dataPath\\": \\"/urls/2/settings/externalScriptTest\\",
366
- \\"schemaPath\\": \\"#/oneOf/0/type\\",
367
- \\"params\\": {
368
- \\"type\\": \\"boolean\\"
369
- },
370
- \\"message\\": \\"should be boolean\\",
371
- \\"emUsed\\": true
372
- },
373
- {
374
- \\"keyword\\": \\"type\\",
375
- \\"dataPath\\": \\"/urls/2/settings/externalScriptTest\\",
376
- \\"schemaPath\\": \\"#/definitions/detailedSetting/type\\",
377
- \\"params\\": {
378
- \\"type\\": \\"object\\"
379
- },
380
- \\"message\\": \\"should be object\\",
381
- \\"emUsed\\": true
382
- },
383
- {
384
- \\"keyword\\": \\"oneOf\\",
385
- \\"dataPath\\": \\"/urls/2/settings/externalScriptTest\\",
386
- \\"schemaPath\\": \\"#/oneOf\\",
387
- \\"params\\": {
388
- \\"passingSchemas\\": null
389
- },
390
- \\"message\\": \\"should match exactly one schema in oneOf\\",
391
- \\"emUsed\\": true
392
- }
393
- ]
394
- },
395
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
396
- },
397
- {
398
- \\"keyword\\": \\"errorMessage\\",
399
- \\"dataPath\\": \\"/urls/2\\",
400
- \\"schemaPath\\": \\"#/properties/urls/items/errorMessage\\",
401
- \\"params\\": {
402
- \\"errors\\": [
403
- {
404
- \\"keyword\\": \\"type\\",
405
- \\"dataPath\\": \\"/urls/2\\",
406
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/0/type\\",
407
- \\"params\\": {
408
- \\"type\\": \\"string\\"
409
- },
410
- \\"message\\": \\"should be string\\",
411
- \\"emUsed\\": true
412
- },
413
- {
414
- \\"keyword\\": \\"oneOf\\",
415
- \\"dataPath\\": \\"/urls/2\\",
416
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf\\",
417
- \\"params\\": {
418
- \\"passingSchemas\\": null
419
- },
420
- \\"message\\": \\"should match exactly one schema in oneOf\\",
421
- \\"emUsed\\": true
422
- }
423
- ]
424
- },
425
- \\"message\\": \\"should be either URL string or object with the appropriate properties\\"
426
- },
427
- {
428
- \\"keyword\\": \\"errorMessage\\",
429
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest/foo\\",
430
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/errorMessage\\",
431
- \\"params\\": {
432
- \\"errors\\": [
433
- {
434
- \\"keyword\\": \\"not\\",
435
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest/foo\\",
436
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/not\\",
437
- \\"params\\": {},
438
- \\"message\\": \\"should NOT be valid\\",
439
- \\"emUsed\\": true
440
- }
441
- ]
442
- },
443
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"foo\\\\\\"\\"
444
- },
445
- {
446
- \\"keyword\\": \\"errorMessage\\",
447
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest/b~0ar\\",
448
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/errorMessage\\",
449
- \\"params\\": {
450
- \\"errors\\": [
451
- {
452
- \\"keyword\\": \\"not\\",
453
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest/b~0ar\\",
454
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/1/additionalProperties/not\\",
455
- \\"params\\": {},
456
- \\"message\\": \\"should NOT be valid\\",
457
- \\"emUsed\\": true
458
- }
459
- ]
460
- },
461
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"b~ar\\\\\\"\\"
462
- },
463
- {
464
- \\"keyword\\": \\"errorMessage\\",
465
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest\\",
466
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/errorMessage\\",
467
- \\"params\\": {
468
- \\"errors\\": [
469
- {
470
- \\"keyword\\": \\"type\\",
471
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest\\",
472
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf/0/type\\",
473
- \\"params\\": {
474
- \\"type\\": \\"boolean\\"
475
- },
476
- \\"message\\": \\"should be boolean\\",
477
- \\"emUsed\\": true
478
- },
479
- {
480
- \\"keyword\\": \\"oneOf\\",
481
- \\"dataPath\\": \\"/urls/3/settings/pageLoadTimeTest\\",
482
- \\"schemaPath\\": \\"#/properties/pageLoadTimeTest/oneOf\\",
483
- \\"params\\": {
484
- \\"passingSchemas\\": null
485
- },
486
- \\"message\\": \\"should match exactly one schema in oneOf\\",
487
- \\"emUsed\\": true
488
- }
489
- ]
490
- },
491
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
492
- },
493
- {
494
- \\"keyword\\": \\"type\\",
495
- \\"dataPath\\": \\"/urls/3/settings/brokenLinkTest/ignoredLinks\\",
496
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf/1/properties/ignoredLinks/type\\",
497
- \\"params\\": {
498
- \\"type\\": \\"array\\"
499
- },
500
- \\"message\\": \\"should be array\\"
501
- },
502
- {
503
- \\"keyword\\": \\"errorMessage\\",
504
- \\"dataPath\\": \\"/urls/3/settings/brokenLinkTest\\",
505
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/errorMessage\\",
506
- \\"params\\": {
507
- \\"errors\\": [
508
- {
509
- \\"keyword\\": \\"type\\",
510
- \\"dataPath\\": \\"/urls/3/settings/brokenLinkTest\\",
511
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf/0/type\\",
512
- \\"params\\": {
513
- \\"type\\": \\"boolean\\"
514
- },
515
- \\"message\\": \\"should be boolean\\",
516
- \\"emUsed\\": true
517
- },
518
- {
519
- \\"keyword\\": \\"oneOf\\",
520
- \\"dataPath\\": \\"/urls/3/settings/brokenLinkTest\\",
521
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf\\",
522
- \\"params\\": {
523
- \\"passingSchemas\\": null
524
- },
525
- \\"message\\": \\"should match exactly one schema in oneOf\\",
526
- \\"emUsed\\": true
527
- }
528
- ]
529
- },
530
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
531
- },
532
- {
533
- \\"keyword\\": \\"errorMessage\\",
534
- \\"dataPath\\": \\"/urls/3\\",
535
- \\"schemaPath\\": \\"#/properties/urls/items/errorMessage\\",
536
- \\"params\\": {
537
- \\"errors\\": [
538
- {
539
- \\"keyword\\": \\"type\\",
540
- \\"dataPath\\": \\"/urls/3\\",
541
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/0/type\\",
542
- \\"params\\": {
543
- \\"type\\": \\"string\\"
544
- },
545
- \\"message\\": \\"should be string\\",
546
- \\"emUsed\\": true
547
- },
548
- {
549
- \\"keyword\\": \\"oneOf\\",
550
- \\"dataPath\\": \\"/urls/3\\",
551
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf\\",
552
- \\"params\\": {
553
- \\"passingSchemas\\": null
554
- },
555
- \\"message\\": \\"should match exactly one schema in oneOf\\",
556
- \\"emUsed\\": true
557
- }
558
- ]
559
- },
560
- \\"message\\": \\"should be either URL string or object with the appropriate properties\\"
561
- },
562
- {
563
- \\"keyword\\": \\"errorMessage\\",
564
- \\"dataPath\\": \\"/urls/4/settings/goo\\",
565
- \\"schemaPath\\": \\"#/additionalProperties/errorMessage\\",
566
- \\"params\\": {
567
- \\"errors\\": [
568
- {
569
- \\"keyword\\": \\"not\\",
570
- \\"dataPath\\": \\"/urls/4/settings/goo\\",
571
- \\"schemaPath\\": \\"#/additionalProperties/not\\",
572
- \\"params\\": {},
573
- \\"message\\": \\"should NOT be valid\\",
574
- \\"emUsed\\": true
575
- }
576
- ]
577
- },
578
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"goo\\\\\\"\\"
579
- },
580
- {
581
- \\"keyword\\": \\"errorMessage\\",
582
- \\"dataPath\\": \\"/urls/4/settings/consoleErrorTest/some\\",
583
- \\"schemaPath\\": \\"#/definitions/detailedSetting/additionalProperties/errorMessage\\",
584
- \\"params\\": {
585
- \\"errors\\": [
586
- {
587
- \\"keyword\\": \\"not\\",
588
- \\"dataPath\\": \\"/urls/4/settings/consoleErrorTest/some\\",
589
- \\"schemaPath\\": \\"#/definitions/detailedSetting/additionalProperties/not\\",
590
- \\"params\\": {},
591
- \\"message\\": \\"should NOT be valid\\",
592
- \\"emUsed\\": true
593
- }
594
- ]
595
- },
596
- \\"message\\": \\"should NOT contain additional properties: \\\\\\"some\\\\\\"\\"
597
- },
598
- {
599
- \\"keyword\\": \\"errorMessage\\",
600
- \\"dataPath\\": \\"/urls/4/settings/consoleErrorTest\\",
601
- \\"schemaPath\\": \\"#/errorMessage\\",
602
- \\"params\\": {
603
- \\"errors\\": [
604
- {
605
- \\"keyword\\": \\"type\\",
606
- \\"dataPath\\": \\"/urls/4/settings/consoleErrorTest\\",
607
- \\"schemaPath\\": \\"#/oneOf/0/type\\",
608
- \\"params\\": {
609
- \\"type\\": \\"boolean\\"
610
- },
611
- \\"message\\": \\"should be boolean\\",
612
- \\"emUsed\\": true
613
- },
614
- {
615
- \\"keyword\\": \\"oneOf\\",
616
- \\"dataPath\\": \\"/urls/4/settings/consoleErrorTest\\",
617
- \\"schemaPath\\": \\"#/oneOf\\",
618
- \\"params\\": {
619
- \\"passingSchemas\\": null
620
- },
621
- \\"message\\": \\"should match exactly one schema in oneOf\\",
622
- \\"emUsed\\": true
623
- }
624
- ]
625
- },
626
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
627
- },
628
- {
629
- \\"keyword\\": \\"uniqueItems\\",
630
- \\"dataPath\\": \\"/urls/4/settings/brokenLinkTest/ignoredLinks\\",
631
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf/1/properties/ignoredLinks/uniqueItems\\",
632
- \\"params\\": {
633
- \\"i\\": 0,
634
- \\"j\\": 1
635
- },
636
- \\"message\\": \\"should NOT have duplicate items (items ## 1 and 0 are identical)\\"
637
- },
638
- {
639
- \\"keyword\\": \\"errorMessage\\",
640
- \\"dataPath\\": \\"/urls/4/settings/brokenLinkTest\\",
641
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/errorMessage\\",
642
- \\"params\\": {
643
- \\"errors\\": [
644
- {
645
- \\"keyword\\": \\"type\\",
646
- \\"dataPath\\": \\"/urls/4/settings/brokenLinkTest\\",
647
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf/0/type\\",
648
- \\"params\\": {
649
- \\"type\\": \\"boolean\\"
650
- },
651
- \\"message\\": \\"should be boolean\\",
652
- \\"emUsed\\": true
653
- },
654
- {
655
- \\"keyword\\": \\"oneOf\\",
656
- \\"dataPath\\": \\"/urls/4/settings/brokenLinkTest\\",
657
- \\"schemaPath\\": \\"#/properties/brokenLinkTest/oneOf\\",
658
- \\"params\\": {
659
- \\"passingSchemas\\": null
660
- },
661
- \\"message\\": \\"should match exactly one schema in oneOf\\",
662
- \\"emUsed\\": true
663
- }
664
- ]
665
- },
666
- \\"message\\": \\"should be either boolean or object with the appropriate properties\\"
667
- },
668
- {
669
- \\"keyword\\": \\"errorMessage\\",
670
- \\"dataPath\\": \\"/urls/4\\",
671
- \\"schemaPath\\": \\"#/properties/urls/items/errorMessage\\",
672
- \\"params\\": {
673
- \\"errors\\": [
674
- {
675
- \\"keyword\\": \\"type\\",
676
- \\"dataPath\\": \\"/urls/4\\",
677
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/0/type\\",
678
- \\"params\\": {
679
- \\"type\\": \\"string\\"
680
- },
681
- \\"message\\": \\"should be string\\",
682
- \\"emUsed\\": true
683
- },
684
- {
685
- \\"keyword\\": \\"oneOf\\",
686
- \\"dataPath\\": \\"/urls/4\\",
687
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf\\",
688
- \\"params\\": {
689
- \\"passingSchemas\\": null
690
- },
691
- \\"message\\": \\"should match exactly one schema in oneOf\\",
692
- \\"emUsed\\": true
693
- }
694
- ]
695
- },
696
- \\"message\\": \\"should be either URL string or object with the appropriate properties\\"
697
- },
698
- {
699
- \\"keyword\\": \\"errorMessage\\",
700
- \\"dataPath\\": \\"/urls/5\\",
701
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/1/errorMessage\\",
702
- \\"params\\": {
703
- \\"errors\\": [
704
- {
705
- \\"keyword\\": \\"required\\",
706
- \\"dataPath\\": \\"/urls/5\\",
707
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/1/required\\",
708
- \\"params\\": {
709
- \\"missingProperty\\": \\"url\\"
710
- },
711
- \\"message\\": \\"should have required property 'url'\\",
712
- \\"emUsed\\": true
713
- }
714
- ]
715
- },
716
- \\"message\\": \\"should have required property url\\"
717
- },
718
- {
719
- \\"keyword\\": \\"errorMessage\\",
720
- \\"dataPath\\": \\"/urls/5\\",
721
- \\"schemaPath\\": \\"#/properties/urls/items/errorMessage\\",
722
- \\"params\\": {
723
- \\"errors\\": [
724
- {
725
- \\"keyword\\": \\"type\\",
726
- \\"dataPath\\": \\"/urls/5\\",
727
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf/0/type\\",
728
- \\"params\\": {
729
- \\"type\\": \\"string\\"
730
- },
731
- \\"message\\": \\"should be string\\",
732
- \\"emUsed\\": true
733
- },
734
- {
735
- \\"keyword\\": \\"oneOf\\",
736
- \\"dataPath\\": \\"/urls/5\\",
737
- \\"schemaPath\\": \\"#/properties/urls/items/oneOf\\",
738
- \\"params\\": {
739
- \\"passingSchemas\\": null
740
- },
741
- \\"message\\": \\"should match exactly one schema in oneOf\\",
742
- \\"emUsed\\": true
743
- }
744
- ]
745
- },
746
- \\"message\\": \\"should be either URL string or object with the appropriate properties\\"
747
- }
748
- ]
749
- "
750
- `;
751
-
752
- exports[`pageanrc lint should lint the empty pageanrc and return all CLI errors 1`] = `
753
- "
754
- ./tests/test-configs/unit-tests/empty.pageanrc.json
755
- <pageanrc> should have required property 'urls'
756
-
757
- Fatal error - exiting (1)
758
- "
759
- `;