testaro 30.0.7 → 32.0.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/CONTRIBUTING.md +26 -4
- package/LICENSE +1 -1
- package/README.md +24 -2
- package/aceconfig.js +27 -0
- package/actSpecs.js +28 -1
- package/call.js +22 -1
- package/data/template.js +22 -0
- package/dirWatch.js +22 -0
- package/package.json +1 -1
- package/procs/aslint.js +24 -0
- package/procs/getLocatorData.js +29 -1
- package/procs/getSource.js +30 -3
- package/procs/isInlineLink.js +23 -0
- package/procs/operable.js +23 -2
- package/procs/sample.js +22 -0
- package/procs/standardize.js +28 -7
- package/procs/tellServer.js +24 -2
- package/procs/testaro.js +26 -1
- package/procs/visChange.js +22 -0
- package/run.js +371 -83
- package/testaro/allCaps.js +22 -0
- package/testaro/allHidden.js +22 -0
- package/testaro/allSlanted.js +22 -0
- package/testaro/attVal.js +22 -0
- package/testaro/autocomplete.js +22 -0
- package/testaro/bulk.js +22 -0
- package/testaro/buttonMenu.js +22 -0
- package/testaro/distortion.js +22 -0
- package/testaro/docType.js +22 -0
- package/testaro/dupAtt.js +22 -0
- package/testaro/elements.js +22 -0
- package/testaro/embAc.js +22 -0
- package/testaro/filter.js +22 -0
- package/testaro/focAll.js +22 -0
- package/testaro/focInd.js +22 -0
- package/testaro/focOp.js +22 -0
- package/testaro/focVis.js +22 -0
- package/testaro/headEl.js +22 -0
- package/testaro/headingAmb.js +22 -0
- package/testaro/hovInd.js +21 -24
- package/testaro/hover.js +22 -0
- package/testaro/labClash.js +22 -0
- package/testaro/lineHeight.js +22 -0
- package/testaro/linkAmb.js +22 -0
- package/testaro/linkTitle.js +22 -0
- package/testaro/linkUl.js +22 -0
- package/testaro/miniText.js +22 -0
- package/testaro/motion.js +22 -0
- package/testaro/nonTable.js +22 -0
- package/testaro/opFoc.js +22 -0
- package/testaro/pseudoP.js +25 -3
- package/testaro/radioSet.js +22 -0
- package/testaro/role.js +22 -0
- package/testaro/styleDiff.js +80 -1
- package/testaro/tabNav.js +99 -2
- package/testaro/targetSize.js +22 -0
- package/testaro/textNodes.js +25 -3
- package/testaro/title.js +22 -0
- package/testaro/zIndex.js +22 -0
- package/tests/alfa.js +34 -12
- package/tests/aslint.js +55 -17
- package/tests/axe.js +35 -9
- package/tests/htmlcs.js +109 -78
- package/tests/ibm.js +111 -45
- package/tests/nuVal.js +39 -9
- package/tests/qualWeb.js +49 -25
- package/tests/testaro.js +50 -22
- package/tests/wave.js +36 -10
- package/validation/executors/run.js +26 -2
- package/validation/executors/test.js +27 -3
- package/validation/executors/tests.js +26 -2
- package/validation/executors/watchDir.js +26 -2
- package/validation/executors/watchNet.js +26 -2
- package/validation/jobs/todo/README.md +22 -0
- package/validation/tests/targets/adbID/index.html +21 -0
- package/validation/tests/targets/allCaps/index.html +21 -0
- package/validation/tests/targets/allHidden/ariaHiddenBody.html +21 -0
- package/validation/tests/targets/allHidden/good.html +21 -0
- package/validation/tests/targets/allHidden/hiddenMain.html +21 -0
- package/validation/tests/targets/allHidden/mixedHidden.html +22 -1
- package/validation/tests/targets/allHidden/noBody.html +21 -0
- package/validation/tests/targets/allHidden/noMain.html +21 -0
- package/validation/tests/targets/allHidden/noneDoc.html +21 -0
- package/validation/tests/targets/allHidden/visHiddenMain.html +21 -0
- package/validation/tests/targets/allSlanted/index.html +21 -0
- package/validation/tests/targets/altScheme/index.html +21 -0
- package/validation/tests/targets/attVal/bad.html +21 -0
- package/validation/tests/targets/attVal/good.html +21 -0
- package/validation/tests/targets/autocomplete/bad.html +21 -0
- package/validation/tests/targets/autocomplete/good.html +21 -0
- package/validation/tests/targets/bulk/bad.html +21 -0
- package/validation/tests/targets/bulk/good.html +21 -0
- package/validation/tests/targets/buttonMenu/bad.html +21 -0
- package/validation/tests/targets/buttonMenu/bad.js +27 -0
- package/validation/tests/targets/buttonMenu/good.html +21 -0
- package/validation/tests/targets/buttonMenu/good.js +27 -0
- package/validation/tests/targets/buttonMenu/style.css +27 -0
- package/validation/tests/targets/captionLoc/index.html +21 -0
- package/validation/tests/targets/datalistRef/index.html +21 -0
- package/validation/tests/targets/distortion/index.html +21 -0
- package/validation/tests/targets/docType/bad.html +21 -0
- package/validation/tests/targets/docType/good.html +21 -0
- package/validation/tests/targets/dupAtt/bad.html +21 -0
- package/validation/tests/targets/dupAtt/good.html +21 -0
- package/validation/tests/targets/elements/index.html +21 -0
- package/validation/tests/targets/embAc/bad.html +21 -0
- package/validation/tests/targets/embAc/good.html +21 -0
- package/validation/tests/targets/filter/bad.html +21 -0
- package/validation/tests/targets/filter/good.html +21 -0
- package/validation/tests/targets/focAll/good.html +21 -0
- package/validation/tests/targets/focAll/less.html +21 -0
- package/validation/tests/targets/focAll/more.html +21 -0
- package/validation/tests/targets/focInd/bad.html +21 -0
- package/validation/tests/targets/focInd/good.html +21 -0
- package/validation/tests/targets/focOp/bad.html +21 -0
- package/validation/tests/targets/focOp/good.html +21 -0
- package/validation/tests/targets/focVis/index.html +21 -0
- package/validation/tests/targets/headEl/index.html +21 -0
- package/validation/tests/targets/headingAmb/index.html +21 -0
- package/validation/tests/targets/hovInd/index.html +21 -0
- package/validation/tests/targets/hover/bad.html +21 -0
- package/validation/tests/targets/hover/good.html +21 -0
- package/validation/tests/targets/hr/index.html +21 -0
- package/validation/tests/targets/imageLink/index.html +21 -0
- package/validation/tests/targets/labClash/bad.html +21 -0
- package/validation/tests/targets/labClash/good.html +21 -0
- package/validation/tests/targets/legendLoc/index.html +21 -0
- package/validation/tests/targets/lineHeight/index.html +21 -0
- package/validation/tests/targets/linkAmb/index.html +21 -0
- package/validation/tests/targets/linkExt/index.html +21 -0
- package/validation/tests/targets/linkOldAtt/index.html +21 -0
- package/validation/tests/targets/linkTitle/index.html +21 -0
- package/validation/tests/targets/linkTo/index.html +21 -0
- package/validation/tests/targets/linkUl/bad.html +21 -0
- package/validation/tests/targets/linkUl/good.html +21 -0
- package/validation/tests/targets/linkUl/na.html +21 -0
- package/validation/tests/targets/miniText/index.html +21 -0
- package/validation/tests/targets/motion/bad.css +27 -0
- package/validation/tests/targets/motion/bad.html +21 -0
- package/validation/tests/targets/motion/good.html +21 -0
- package/validation/tests/targets/nonTable/index.html +21 -0
- package/validation/tests/targets/opFoc/bad.html +21 -0
- package/validation/tests/targets/opFoc/good.html +21 -0
- package/validation/tests/targets/optRoleSel/index.html +21 -0
- package/validation/tests/targets/phOnly/index.html +21 -0
- package/validation/tests/targets/pseudoP/index.html +21 -0
- package/validation/tests/targets/radioSet/bad.html +21 -0
- package/validation/tests/targets/radioSet/good.html +21 -0
- package/validation/tests/targets/role/bad.html +21 -0
- package/validation/tests/targets/role/good.html +21 -0
- package/validation/tests/targets/secHeading/index.html +21 -0
- package/validation/tests/targets/styleDiff/bad.html +21 -0
- package/validation/tests/targets/styleDiff/good.html +21 -0
- package/validation/tests/targets/tabNav/bad.html +21 -0
- package/validation/tests/targets/tabNav/bad.js +27 -0
- package/validation/tests/targets/tabNav/good.html +21 -0
- package/validation/tests/targets/tabNav/good.js +27 -0
- package/validation/tests/targets/tabNav/style.css +27 -0
- package/validation/tests/targets/targetSize/index.html +21 -0
- package/validation/tests/targets/textNodes/index.html +21 -0
- package/validation/tests/targets/textSem/index.html +21 -0
- package/validation/tests/targets/title/bad.html +21 -0
- package/validation/tests/targets/title/good.html +21 -0
- package/validation/tests/targets/titledEl/index.html +21 -0
- package/validation/tests/targets/zIndex/bad.html +21 -0
- package/validation/tests/targets/zIndex/good.html +21 -0
- package/validation/validateTest.js +26 -2
- package/validation/watch/done/README.md +23 -1
- package/validation/watch/todo/README.md +23 -1
- package/watch.js +32 -7
- package/call-old.js +0 -86
- package/procs/allText.js +0 -76
- package/procs/allVis.js +0 -17
- package/procs/getTextNodes.js +0 -39
- package/procs/linksByType.js +0 -54
- package/procs/nav.js +0 -259
- package/procs/textOf.txt +0 -73
- package/test copy.js +0 -38
- package/validation/tests/old/allCaps.json +0 -102
- package/validation/tests/old/allHidden.json +0 -314
- package/validation/tests/old/attVal.json +0 -60
- package/validation/tests/old/autocomplete.json +0 -51
- package/validation/tests/old/bulk.json +0 -48
- package/validation/tests/old/docType.json +0 -46
- package/validation/tests/old/dupAtt.json +0 -51
- package/validation/tests/old/elements.json +0 -140
- package/validation/tests/old/embAc.json +0 -54
- package/validation/tests/old/filter.json +0 -55
- package/validation/tests/old/focAll.json +0 -68
- package/validation/tests/old/focInd.json +0 -69
- package/validation/tests/old/focOp.json +0 -62
- package/validation/tests/old/focVis.json +0 -35
- package/validation/tests/old/hover.json +0 -118
- package/validation/tests/old/labClash.json +0 -52
- package/validation/tests/old/linkTo.json +0 -35
- package/validation/tests/old/linkUl.json +0 -71
- package/validation/tests/old/menuNav.json +0 -106
- package/validation/tests/old/miniText.json +0 -36
- package/validation/tests/old/motion.json +0 -62
- package/validation/tests/old/nonTable.json +0 -37
- package/validation/tests/old/radioSet.json +0 -52
- package/validation/tests/old/role.json +0 -60
- package/validation/tests/old/styleDiff.json +0 -71
- package/validation/tests/old/tabNav.json +0 -106
- package/validation/tests/old/temp.js +0 -28
- package/validation/tests/old/textNodes.json +0 -98
- package/validation/tests/old/title.json +0 -46
- package/validation/tests/old/titledEl.json +0 -37
- package/validation/tests/old/zIndex.json +0 -49
- package/validation/tests/targets/tabNav/goodMoz.js +0 -206
- package/watch-old.js +0 -275
- package/watch-temp.js +0 -45
package/CONTRIBUTING.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
# Contributing to Testaro
|
|
2
24
|
|
|
3
25
|
## Types of contributions
|
|
@@ -29,13 +51,13 @@ However, many other significant accessibility issues exist that are not covered
|
|
|
29
51
|
|
|
30
52
|
### Step 1
|
|
31
53
|
|
|
32
|
-
The first step in contributing a new rule to Testaro is to satisfy yourself that it will not duplicate existing rules. The `procs/score/
|
|
54
|
+
The first step in contributing a new rule to Testaro is to satisfy yourself that it will not duplicate existing rules. The latest `procs/score/tic….js` file in the Testilo package should be helpful here.
|
|
33
55
|
|
|
34
56
|
### Step 2
|
|
35
57
|
|
|
36
58
|
The second step is to write a validator for the new rule. A validator is software that defines the correct behavior of the implementation of the rule.
|
|
37
59
|
|
|
38
|
-
Every Testaro rule has a correspoding validator. A validator has two parts:
|
|
60
|
+
Every Testaro rule (which means each of the approximately 50 rules of the Testaro tool) has a correspoding validator. A validator has two parts:
|
|
39
61
|
- A job file, in the `validation/tests/jobs` directory. It tells Testaro what tests to perform and what the results should be.
|
|
40
62
|
- A target directory, within the `validation/tests/targets` directory. The target directory contains one or more HTML files that will be tested by the job.
|
|
41
63
|
|
|
@@ -53,7 +75,7 @@ To optimize quality, it may be wise for one person to perform steps 1, 2, and 3,
|
|
|
53
75
|
|
|
54
76
|
At any time after an implementation is attempted or revised, the developer can run the validation on it, simply by executing the statement `npm test xyz` (replacing `xyz` with the name of the new rule). When the implementation fails validation, diagnosis may find fault either with the implementation or with the validator.
|
|
55
77
|
|
|
56
|
-
Whether a new rule should be implemented in JSON or JavaScript depends on the complexity of the rule. The JSON format is effective for simple rules,and JavaScript is needed for more complex rules.
|
|
78
|
+
Whether a new rule should be implemented in JSON or JavaScript depends on the complexity of the rule. The JSON format is effective for simple rules, and JavaScript is needed for more complex rules.
|
|
57
79
|
|
|
58
80
|
### Simple rules
|
|
59
81
|
|
|
@@ -95,4 +117,4 @@ The `isDestructive` property should be set to `true` if your pruner modifies the
|
|
|
95
117
|
|
|
96
118
|
Even more complex Testaro rules require analysis that cannot fit into the simple or simplifiable category. You can begin with existing JavaScript rules, or the `data/template.js` file, as an example.
|
|
97
119
|
|
|
98
|
-
Some utility functions in modules in the `procs` directory are available for support of new rules. Among these modules are `testaro` (used in many tests), `isInlineLink`, `operable`, and `visChange
|
|
120
|
+
Some utility functions in modules in the `procs` directory are available for support of new rules. Among these modules are `testaro` (used in many tests), `isInlineLink`, `operable`, and `visChange`.
|
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
© 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/README.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
# testaro
|
|
2
24
|
|
|
3
25
|
Ensemble testing for web accessibility
|
|
@@ -420,7 +442,7 @@ test: [
|
|
|
420
442
|
|
|
421
443
|
That means that a test act (i.e. an act with a `type` property having the value `'test'`) must have a string-valued `which` property naming a tool and may optionally have an array-valued `rules` property restricting the tests to be reported and/or a string-valued `what` property describing the tool and/or the tests.
|
|
422
444
|
|
|
423
|
-
If a particular test act either must have or may have any other properties, those properties are specified in the `
|
|
445
|
+
If a particular test act either must have or may have any other properties, those properties are specified in the `tools` property in `actSpecs.js`.
|
|
424
446
|
|
|
425
447
|
When you include a `rules` property, you limit the tests of the tool that are performed or reported. For some tools (`alfa`, `axe`, `htmlcs`, `qualWeb`, and `testaro`), only the specified tests are performed. Other tools (`ibm`, `nuVal`, and `wave`) do not allow such a limitation, so, for those tools, all tests are performed but results are reported from only the specified tests.
|
|
426
448
|
|
|
@@ -664,7 +686,7 @@ The `actSpecs.js` file contains rules governing acts. The rules determine whethe
|
|
|
664
686
|
|
|
665
687
|
##### Rule format
|
|
666
688
|
|
|
667
|
-
The rules in `actSpecs.js` are organized into two objects, `etc` and `tests`. The `etc` object contains rules for acts of all types. The `
|
|
689
|
+
The rules in `actSpecs.js` are organized into two objects, `etc` and `tests`. The `etc` object contains rules for acts of all types. The `tools` object contains additional rules that apply to some acts of type `test`, depending on the values of their `which` properties, namely which tools they perform tests of.
|
|
668
690
|
|
|
669
691
|
Here is an example of an act:
|
|
670
692
|
|
package/aceconfig.js
CHANGED
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
aceconfig
|
|
25
|
+
Configuration for the ibm tool.
|
|
26
|
+
*/
|
|
27
|
+
|
|
1
28
|
module.exports = {
|
|
2
29
|
reportLevels: [
|
|
3
30
|
'violation',
|
package/actSpecs.js
CHANGED
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
actSpecs
|
|
25
|
+
Validator for acts of a job.
|
|
26
|
+
*/
|
|
27
|
+
|
|
1
28
|
exports.actSpecs = {
|
|
2
29
|
etc: {
|
|
3
30
|
button: [
|
|
@@ -145,7 +172,7 @@ exports.actSpecs = {
|
|
|
145
172
|
}
|
|
146
173
|
]
|
|
147
174
|
},
|
|
148
|
-
|
|
175
|
+
tools: {
|
|
149
176
|
axe: [
|
|
150
177
|
'Perform Axe tests',
|
|
151
178
|
{
|
package/call.js
CHANGED
|
@@ -1,6 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2022–2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
1
22
|
|
|
2
23
|
/*
|
|
3
|
-
call
|
|
24
|
+
call
|
|
4
25
|
Invokes Testaro modules.
|
|
5
26
|
This is the universal module for use of Testaro from a command line.
|
|
6
27
|
Arguments:
|
package/data/template.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
template
|
|
3
25
|
This test reports ….
|
package/dirWatch.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
dirWatch.js
|
|
3
25
|
Module for launching a repeated one-time directory watch.
|
package/package.json
CHANGED
package/procs/aslint.js
CHANGED
|
@@ -1,6 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
aslint
|
|
3
25
|
Injects and captures results from the ASLint bundle.
|
|
26
|
+
This script is stored as a JavaScript module so that it can be validated before use. The
|
|
27
|
+
tests/aslint module reads it as a text file and inserts it into the page.
|
|
4
28
|
*/
|
|
5
29
|
const options = {
|
|
6
30
|
asyncRunner: true,
|
package/procs/getLocatorData.js
CHANGED
|
@@ -1,6 +1,32 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
getLocatorData
|
|
25
|
+
Returns data about the element identified by a locator.
|
|
26
|
+
*/
|
|
2
27
|
exports.getLocatorData = async loc => {
|
|
3
28
|
const locCount = await loc.count();
|
|
29
|
+
// If the locator identifies exactly 1 element:
|
|
4
30
|
if (locCount === 1) {
|
|
5
31
|
// Get the facts obtainable from the browser.
|
|
6
32
|
const data = await loc.evaluate(element => {
|
|
@@ -81,7 +107,9 @@ exports.getLocatorData = async loc => {
|
|
|
81
107
|
// Return the data.
|
|
82
108
|
return data;
|
|
83
109
|
}
|
|
110
|
+
// Otherwise, i.e. if it does not identify exactly 1 element:
|
|
84
111
|
else {
|
|
112
|
+
// Report this.
|
|
85
113
|
console.log(`ERROR: Locator count to get data from is ${locCount} instead of 1`);
|
|
86
114
|
return null;
|
|
87
115
|
}
|
package/procs/getSource.js
CHANGED
|
@@ -1,13 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
getSource
|
|
25
|
+
Gets and returns the source of a document.
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
// IMPORTS
|
|
2
29
|
|
|
3
30
|
// Module to make HTTP requests.
|
|
4
31
|
const fetch = require('node-fetch');
|
|
5
32
|
// Module to process files.
|
|
6
33
|
const fs = require('fs/promises');
|
|
7
34
|
|
|
8
|
-
//
|
|
35
|
+
// FUNCTIONS
|
|
9
36
|
|
|
10
|
-
// Gets and returns the source of a
|
|
37
|
+
// Gets and returns the source of a page.
|
|
11
38
|
exports.getSource = async page => {
|
|
12
39
|
const url = page.url();
|
|
13
40
|
const scheme = url.replace(/:.+/, '');
|
package/procs/isInlineLink.js
CHANGED
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
isInlineLink
|
|
2
25
|
Returns whether the link of a locator is inline.
|
|
3
26
|
A link is classified as inline unless it is in an ordered or unordered list of at least 2 links
|
|
4
27
|
with no other nonspacing text content.
|
package/procs/operable.js
CHANGED
|
@@ -1,9 +1,30 @@
|
|
|
1
1
|
/*
|
|
2
|
-
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
3
10
|
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
operable
|
|
4
25
|
Returns whether the element of a locator is operable., i.e. it has a non-inherited pointer cursor
|
|
5
26
|
and is not a 'LABEL' element, has an operable tag name, has an interactive explicit role, or has
|
|
6
|
-
an 'onclick' attribute.
|
|
27
|
+
an 'onclick' attribute. The isOperable function modifies the page.
|
|
7
28
|
*/
|
|
8
29
|
|
|
9
30
|
// ########## FUNCTIONS
|
package/procs/sample.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
sample
|
|
3
25
|
Draws a decreasingly index-weighted random sample.
|
package/procs/standardize.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
standardize.js
|
|
3
25
|
Converts test results to the standard format.
|
|
@@ -316,9 +338,9 @@ const doWAVE = (result, standardResult, categoryName) => {
|
|
|
316
338
|
}
|
|
317
339
|
};
|
|
318
340
|
// Converts a result.
|
|
319
|
-
const convert = (toolName, result, standardResult) => {
|
|
341
|
+
const convert = (toolName, data, result, standardResult) => {
|
|
320
342
|
// Prevention.
|
|
321
|
-
if (
|
|
343
|
+
if (data.prevented) {
|
|
322
344
|
standardResult.prevented = true;
|
|
323
345
|
}
|
|
324
346
|
// alfa
|
|
@@ -511,10 +533,10 @@ const convert = (toolName, result, standardResult) => {
|
|
|
511
533
|
}
|
|
512
534
|
// testaro
|
|
513
535
|
else if (toolName === 'testaro') {
|
|
514
|
-
const rules = result
|
|
536
|
+
const rules = result ? Object.keys(result) : [];
|
|
515
537
|
standardResult.totals = [0, 0, 0, 0];
|
|
516
538
|
rules.forEach(rule => {
|
|
517
|
-
const ruleResult = result
|
|
539
|
+
const ruleResult = result[rule];
|
|
518
540
|
standardResult.totals.forEach((total, index) => {
|
|
519
541
|
standardResult.totals[index] += ruleResult
|
|
520
542
|
&& ruleResult.totals ? ruleResult.totals[index] || 0 : 0;
|
|
@@ -570,10 +592,9 @@ const convert = (toolName, result, standardResult) => {
|
|
|
570
592
|
};
|
|
571
593
|
// Converts the results.
|
|
572
594
|
exports.standardize = act => {
|
|
573
|
-
const {which} = act;
|
|
574
|
-
const {result, standardResult} = act;
|
|
595
|
+
const {which, data, result, standardResult} = act;
|
|
575
596
|
if (which && result && standardResult) {
|
|
576
|
-
convert(which, result, standardResult);
|
|
597
|
+
convert(which, data, result, standardResult);
|
|
577
598
|
}
|
|
578
599
|
else {
|
|
579
600
|
console.log('ERROR: Result of incomplete act cannot be standardized');
|
package/procs/tellServer.js
CHANGED
|
@@ -1,6 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
tellServer
|
|
3
|
-
|
|
25
|
+
Send a notice to an observer.
|
|
4
26
|
*/
|
|
5
27
|
|
|
6
28
|
// CONSTANTS
|
|
@@ -11,7 +33,7 @@ const agent = process.env.AGENT;
|
|
|
11
33
|
|
|
12
34
|
// FUNCTIONS
|
|
13
35
|
|
|
14
|
-
//
|
|
36
|
+
// Sends a notification to an observer.
|
|
15
37
|
exports.tellServer = (report, messageParams, logMessage) => {
|
|
16
38
|
const observer = report.sources.sendReportTo.replace(/report$/, 'granular');
|
|
17
39
|
const whoParams = `agent=${agent}&jobID=${report.id || ''}`;
|
package/procs/testaro.js
CHANGED
|
@@ -1,4 +1,29 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
testaro
|
|
25
|
+
Utilities for Testaro tests.
|
|
26
|
+
*/
|
|
2
27
|
|
|
3
28
|
// ########## IMPORTS
|
|
4
29
|
|
package/procs/visChange.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
© 2023 CVS Health and/or one of its affiliates. All rights reserved.
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
|
|
1
23
|
/*
|
|
2
24
|
visChange
|
|
3
25
|
This procedure reports a change in the visible content of a page between two times, optionally
|