testaro 8.4.7 → 9.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/README.md +94 -155
- package/{commands.js → actSpecs.js} +1 -1
- package/call.js +35 -13
- package/package.json +2 -3
- package/run.js +155 -181
- package/samples/00000-ts18-example.json +3 -3
- package/validation/executors/run.js +40 -0
- package/validation/executors/watchDir.js +7 -6
- package/validation/executors/watchNet.js +5 -6
- package/validation/jobs/done/README.md +3 -0
- package/validation/jobs/{00000-simple-example.json → todo/00000-simple-example.json} +6 -7
- package/validation/jobs/{README.md → todo/README.md} +0 -0
- package/validation/tests/jobs/allHidden.json +3 -2
- package/validation/tests/jobs/bulk.json +3 -2
- package/validation/tests/jobs/docType.json +3 -2
- package/validation/tests/jobs/elements.json +3 -2
- package/validation/tests/jobs/embAc.json +3 -2
- package/validation/tests/jobs/filter.json +3 -2
- package/validation/tests/jobs/focAll.json +3 -2
- package/validation/tests/jobs/focInd.json +3 -2
- package/validation/tests/jobs/focOp.json +3 -2
- package/validation/tests/jobs/focVis.json +3 -2
- package/validation/tests/jobs/hover.json +3 -2
- package/validation/tests/jobs/labClash.json +3 -2
- package/validation/tests/jobs/linkTo.json +3 -2
- package/validation/tests/jobs/linkUl.json +3 -2
- package/validation/tests/jobs/menuNav.json +3 -2
- package/validation/tests/jobs/miniText.json +3 -2
- package/validation/tests/jobs/motion.json +3 -2
- package/validation/tests/jobs/nonTable.json +3 -2
- package/validation/tests/jobs/radioSet.json +3 -2
- package/validation/tests/jobs/role.json +3 -2
- package/validation/tests/jobs/styleDiff.json +3 -2
- package/validation/tests/jobs/tabNav.json +3 -2
- package/validation/tests/jobs/textNodes.json +3 -2
- package/validation/tests/jobs/title.json +3 -2
- package/validation/tests/jobs/titledEl.json +3 -2
- package/validation/tests/jobs/zIndex.json +3 -2
- package/validation/validateTest.js +3 -8
- package/validation/watch/{README.md → done/README.md} +0 -0
- package/validation/watch/todo/README.md +3 -0
- package/watch.js +39 -49
- package/high.js +0 -60
- package/validation/executors/high.js +0 -52
- package/validation/executors/low.js +0 -53
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// run.js
|
|
2
|
+
// Validator for immediate job execution.
|
|
3
|
+
|
|
4
|
+
// ########## IMPORTS
|
|
5
|
+
|
|
6
|
+
const fs = require('fs/promises');
|
|
7
|
+
|
|
8
|
+
// ########## CONSTANTS
|
|
9
|
+
|
|
10
|
+
const {doJob} = require('../../run');
|
|
11
|
+
const jobID = '00000-simple-example';
|
|
12
|
+
|
|
13
|
+
// ########## OPERATION
|
|
14
|
+
|
|
15
|
+
// Get the simple job.
|
|
16
|
+
fs.readFile(`${__dirname}/../jobs/todo/${jobID}.json`, 'utf8')
|
|
17
|
+
.then(async jobJSON => {
|
|
18
|
+
const report = JSON.parse(jobJSON);
|
|
19
|
+
// Run it.
|
|
20
|
+
await doJob(report);
|
|
21
|
+
try {
|
|
22
|
+
// Check the report against expectations.
|
|
23
|
+
const {acts, jobData} = report;
|
|
24
|
+
if (acts.length !== 3) {
|
|
25
|
+
console.log('Failure: Counts of acts is not 3');
|
|
26
|
+
}
|
|
27
|
+
else if (! jobData) {
|
|
28
|
+
console.log('Failure: Report omits jobData');
|
|
29
|
+
}
|
|
30
|
+
else if (jobData.endTime < jobData.startTime) {
|
|
31
|
+
console.log('Failure: End time precedes start time');
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
console.log('Success');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch(error) {
|
|
38
|
+
console.log(`ERROR: ${error.message}`);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
@@ -10,18 +10,19 @@ const fs = require('fs/promises');
|
|
|
10
10
|
// Override cycle environment variables with validation-specific ones.
|
|
11
11
|
process.env.PROTOCOL = 'http';
|
|
12
12
|
process.env.JOBDIR = `${__dirname}/../watch`;
|
|
13
|
-
process.env.DONEDIR = `${__dirname}/../done`;
|
|
14
13
|
process.env.REPORTDIR = `${__dirname}/../../temp`;
|
|
15
14
|
const jobID = '00000-simple-example';
|
|
16
|
-
const {cycle} = require(
|
|
15
|
+
const {cycle} = require('../../watch');
|
|
17
16
|
|
|
18
17
|
// Start checking for jobs every 5 seconds.
|
|
19
18
|
cycle(true, false, 5)
|
|
20
19
|
.then(() => {
|
|
21
|
-
console.log('Watch validation ended');
|
|
20
|
+
console.log('Success: Watch validation ended');
|
|
22
21
|
});
|
|
23
|
-
//
|
|
22
|
+
// Make a job available after 7 seconds.
|
|
24
23
|
setTimeout(() => {
|
|
25
|
-
fs.copyFile(
|
|
26
|
-
|
|
24
|
+
fs.copyFile(
|
|
25
|
+
`${__dirname}/../jobs/todo/${jobID}.json`, `${process.env.JOBDIR}/todo/${jobID}.json`
|
|
26
|
+
);
|
|
27
|
+
console.log('Job made available after 7 seconds');
|
|
27
28
|
}, 7000);
|
|
@@ -9,11 +9,11 @@ const fs = require('fs/promises');
|
|
|
9
9
|
|
|
10
10
|
// Override cycle environment variables with validation-specific ones.
|
|
11
11
|
process.env.PROTOCOL = 'http';
|
|
12
|
-
const jobDir = `${__dirname}/../jobs`;
|
|
12
|
+
const jobDir = `${__dirname}/../jobs/todo`;
|
|
13
13
|
process.env.JOB_URL = 'localhost:3007/api/job';
|
|
14
14
|
process.env.REPORT_URL = 'localhost:3007/api';
|
|
15
15
|
process.env.AGENT = 'testarauth';
|
|
16
|
-
const {cycle} = require(
|
|
16
|
+
const {cycle} = require('../../watch');
|
|
17
17
|
const client = require(process.env.PROTOCOL);
|
|
18
18
|
const jobID = '00000-simple-example';
|
|
19
19
|
|
|
@@ -81,11 +81,10 @@ const requestHandler = (request, response) => {
|
|
|
81
81
|
const bodyJSON = bodyParts.join('');
|
|
82
82
|
const body = JSON.parse(bodyJSON);
|
|
83
83
|
if (
|
|
84
|
-
body.
|
|
85
|
-
&& body.acts
|
|
84
|
+
body.acts
|
|
86
85
|
&& body.jobData
|
|
87
|
-
&& body.agent
|
|
88
|
-
&& body.agent === process.env.AGENT
|
|
86
|
+
&& body.jobData.agent
|
|
87
|
+
&& body.jobData.agent === process.env.AGENT
|
|
89
88
|
) {
|
|
90
89
|
ack.result = 'Success: Valid report submitted';
|
|
91
90
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "00000-simple-example",
|
|
3
|
-
"what": "Test example.
|
|
3
|
+
"what": "Test example.edu with bulk",
|
|
4
4
|
"strict": true,
|
|
5
5
|
"timeLimit": 10,
|
|
6
|
-
"
|
|
6
|
+
"acts": [
|
|
7
7
|
{
|
|
8
8
|
"type": "launch",
|
|
9
9
|
"which": "chromium",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
},
|
|
12
12
|
{
|
|
13
13
|
"type": "url",
|
|
14
|
-
"which": "https://example.
|
|
14
|
+
"which": "https://example.edu/",
|
|
15
15
|
"what": "Example.com",
|
|
16
16
|
"id": "example"
|
|
17
17
|
},
|
|
@@ -24,13 +24,12 @@
|
|
|
24
24
|
"sources": {
|
|
25
25
|
"script": "simple",
|
|
26
26
|
"batch": "",
|
|
27
|
-
"
|
|
27
|
+
"target": {
|
|
28
28
|
"id": "example",
|
|
29
|
-
"
|
|
30
|
-
"what": "Example.com"
|
|
29
|
+
"what": "Example"
|
|
31
30
|
},
|
|
32
31
|
"requester": "user@domain.tld"
|
|
33
32
|
},
|
|
34
|
-
"
|
|
33
|
+
"creationTime": "2022-11-12T22:51:45",
|
|
35
34
|
"timeStamp": "00000"
|
|
36
35
|
}
|
|
File without changes
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "allHiddenVal",
|
|
3
3
|
"what": "validation of allHidden test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -308,6 +309,6 @@
|
|
|
308
309
|
"host": {},
|
|
309
310
|
"requester": ""
|
|
310
311
|
},
|
|
311
|
-
"
|
|
312
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
312
313
|
"timeStamp": "00000"
|
|
313
314
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "bulkVal",
|
|
3
3
|
"what": "validation of bulk test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -42,6 +43,6 @@
|
|
|
42
43
|
"host": {},
|
|
43
44
|
"requester": ""
|
|
44
45
|
},
|
|
45
|
-
"
|
|
46
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
46
47
|
"timeStamp": "00000"
|
|
47
48
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "docTypeVal",
|
|
3
3
|
"what": "validation of docType test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -40,6 +41,6 @@
|
|
|
40
41
|
"host": {},
|
|
41
42
|
"requester": ""
|
|
42
43
|
},
|
|
43
|
-
"
|
|
44
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
44
45
|
"timeStamp": "00000"
|
|
45
46
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "elementsVal",
|
|
3
3
|
"what": "validation of elements test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -134,6 +135,6 @@
|
|
|
134
135
|
"host": {},
|
|
135
136
|
"requester": ""
|
|
136
137
|
},
|
|
137
|
-
"
|
|
138
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
138
139
|
"timeStamp": "00000"
|
|
139
140
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "embAcVal",
|
|
3
3
|
"what": "validation of embAc test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -48,6 +49,6 @@
|
|
|
48
49
|
"host": {},
|
|
49
50
|
"requester": ""
|
|
50
51
|
},
|
|
51
|
-
"
|
|
52
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
52
53
|
"timeStamp": "00000"
|
|
53
54
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "filterVal",
|
|
3
3
|
"what": "validation of filter test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -49,6 +50,6 @@
|
|
|
49
50
|
"host": {},
|
|
50
51
|
"requester": ""
|
|
51
52
|
},
|
|
52
|
-
"
|
|
53
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
53
54
|
"timeStamp": "00000"
|
|
54
55
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "focAllVal",
|
|
3
3
|
"what": "validation of focAll test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -62,6 +63,6 @@
|
|
|
62
63
|
"host": {},
|
|
63
64
|
"requester": ""
|
|
64
65
|
},
|
|
65
|
-
"
|
|
66
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
66
67
|
"timeStamp": "00000"
|
|
67
68
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "focIndVal",
|
|
3
3
|
"what": "validation of focInd test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -63,6 +64,6 @@
|
|
|
63
64
|
"host": {},
|
|
64
65
|
"requester": ""
|
|
65
66
|
},
|
|
66
|
-
"
|
|
67
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
67
68
|
"timeStamp": "00000"
|
|
68
69
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "focOpVal",
|
|
3
3
|
"what": "validation of focOp test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -56,6 +57,6 @@
|
|
|
56
57
|
"host": {},
|
|
57
58
|
"requester": ""
|
|
58
59
|
},
|
|
59
|
-
"
|
|
60
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
60
61
|
"timeStamp": "00000"
|
|
61
62
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "focVisVal",
|
|
3
3
|
"what": "validation of focVis test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -29,6 +30,6 @@
|
|
|
29
30
|
"host": {},
|
|
30
31
|
"requester": ""
|
|
31
32
|
},
|
|
32
|
-
"
|
|
33
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
33
34
|
"timeStamp": "00000"
|
|
34
35
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "hoverVal",
|
|
3
3
|
"what": "validation of hover test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -112,6 +113,6 @@
|
|
|
112
113
|
"host": {},
|
|
113
114
|
"requester": ""
|
|
114
115
|
},
|
|
115
|
-
"
|
|
116
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
116
117
|
"timeStamp": "00000"
|
|
117
118
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "labClashVal",
|
|
3
3
|
"what": "validation of labClash test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -46,6 +47,6 @@
|
|
|
46
47
|
"host": {},
|
|
47
48
|
"requester": ""
|
|
48
49
|
},
|
|
49
|
-
"
|
|
50
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
50
51
|
"timeStamp": "00000"
|
|
51
52
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "linkToVal",
|
|
3
3
|
"what": "validation of linkTo test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -29,6 +30,6 @@
|
|
|
29
30
|
"host": {},
|
|
30
31
|
"requester": ""
|
|
31
32
|
},
|
|
32
|
-
"
|
|
33
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
33
34
|
"timeStamp": "00000"
|
|
34
35
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "linkUlVal",
|
|
3
3
|
"what": "validation of linkUl test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -65,6 +66,6 @@
|
|
|
65
66
|
"host": {},
|
|
66
67
|
"requester": ""
|
|
67
68
|
},
|
|
68
|
-
"
|
|
69
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
69
70
|
"timeStamp": "00000"
|
|
70
71
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "menuNavVal",
|
|
3
3
|
"what": "validation of menuNav test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -100,6 +101,6 @@
|
|
|
100
101
|
"host": {},
|
|
101
102
|
"requester": ""
|
|
102
103
|
},
|
|
103
|
-
"
|
|
104
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
104
105
|
"timeStamp": "00000"
|
|
105
106
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "miniTextVal",
|
|
3
3
|
"what": "validation of miniText test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -30,6 +31,6 @@
|
|
|
30
31
|
"host": {},
|
|
31
32
|
"requester": ""
|
|
32
33
|
},
|
|
33
|
-
"
|
|
34
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
34
35
|
"timeStamp": "00000"
|
|
35
36
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "motionVal",
|
|
3
3
|
"what": "validation of motion test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "webkit",
|
|
@@ -56,6 +57,6 @@
|
|
|
56
57
|
"host": {},
|
|
57
58
|
"requester": ""
|
|
58
59
|
},
|
|
59
|
-
"
|
|
60
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
60
61
|
"timeStamp": "00000"
|
|
61
62
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "nonTableVal",
|
|
3
3
|
"what": "validation of nonTable test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -31,6 +32,6 @@
|
|
|
31
32
|
"host": {},
|
|
32
33
|
"requester": ""
|
|
33
34
|
},
|
|
34
|
-
"
|
|
35
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
35
36
|
"timeStamp": "00000"
|
|
36
37
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "radioSetVal",
|
|
3
3
|
"what": "validation of radioSet test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -46,6 +47,6 @@
|
|
|
46
47
|
"host": {},
|
|
47
48
|
"requester": ""
|
|
48
49
|
},
|
|
49
|
-
"
|
|
50
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
50
51
|
"timeStamp": "00000"
|
|
51
52
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "roleVal",
|
|
3
3
|
"what": "validation of role test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -54,6 +55,6 @@
|
|
|
54
55
|
"host": {},
|
|
55
56
|
"requester": ""
|
|
56
57
|
},
|
|
57
|
-
"
|
|
58
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
58
59
|
"timeStamp": "00000"
|
|
59
60
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "styleDiffVal",
|
|
3
3
|
"what": "validation of styleDiff test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -65,6 +66,6 @@
|
|
|
65
66
|
"host": {},
|
|
66
67
|
"requester": ""
|
|
67
68
|
},
|
|
68
|
-
"
|
|
69
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
69
70
|
"timeStamp": "00000"
|
|
70
71
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "tabNavVal",
|
|
3
3
|
"what": "validation of tabNav test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -100,6 +101,6 @@
|
|
|
100
101
|
"host": {},
|
|
101
102
|
"requester": ""
|
|
102
103
|
},
|
|
103
|
-
"
|
|
104
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
104
105
|
"timeStamp": "00000"
|
|
105
106
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "elementsVal",
|
|
3
3
|
"what": "validation of elements test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -92,6 +93,6 @@
|
|
|
92
93
|
"host": {},
|
|
93
94
|
"requester": ""
|
|
94
95
|
},
|
|
95
|
-
"
|
|
96
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
96
97
|
"timeStamp": "00000"
|
|
97
98
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "titleVal",
|
|
3
3
|
"what": "validation of title test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -40,6 +41,6 @@
|
|
|
40
41
|
"host": {},
|
|
41
42
|
"requester": ""
|
|
42
43
|
},
|
|
43
|
-
"
|
|
44
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
44
45
|
"timeStamp": "00000"
|
|
45
46
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "titledElVal",
|
|
3
3
|
"what": "validation of titledEl test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -31,6 +32,6 @@
|
|
|
31
32
|
"host": {},
|
|
32
33
|
"requester": ""
|
|
33
34
|
},
|
|
34
|
-
"
|
|
35
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
35
36
|
"timeStamp": "00000"
|
|
36
37
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"id": "zIndexVal",
|
|
3
3
|
"what": "validation of zIndex test",
|
|
4
4
|
"strict": true,
|
|
5
|
-
"
|
|
5
|
+
"timeLimit": 20,
|
|
6
|
+
"acts": [
|
|
6
7
|
{
|
|
7
8
|
"type": "launch",
|
|
8
9
|
"which": "chromium",
|
|
@@ -43,6 +44,6 @@
|
|
|
43
44
|
"host": {},
|
|
44
45
|
"requester": ""
|
|
45
46
|
},
|
|
46
|
-
"
|
|
47
|
+
"creationTime": "2002-11-12T09:31:00",
|
|
47
48
|
"timeStamp": "00000"
|
|
48
49
|
}
|
|
@@ -2,18 +2,13 @@
|
|
|
2
2
|
// Validator for one Testaro test.
|
|
3
3
|
|
|
4
4
|
const fs = require('fs').promises;
|
|
5
|
-
const {doJob} = require(
|
|
5
|
+
const {doJob} = require('../run');
|
|
6
6
|
exports.validateTest = async testID => {
|
|
7
7
|
const jobFileNames = await fs.readdir(`${__dirname}/tests/jobs`);
|
|
8
8
|
for (const jobFileName of jobFileNames.filter(fileName => fileName === `${testID}.json`)) {
|
|
9
9
|
const rawJobJSON = await fs.readFile(`${__dirname}/tests/jobs/${jobFileName}`, 'utf8');
|
|
10
10
|
const jobJSON = rawJobJSON.replace(/__targets__/g, 'file://validation/tests/targets');
|
|
11
|
-
const
|
|
12
|
-
const report = {
|
|
13
|
-
job,
|
|
14
|
-
acts: [],
|
|
15
|
-
jobData: {}
|
|
16
|
-
};
|
|
11
|
+
const report = JSON.parse(jobJSON);
|
|
17
12
|
await doJob(report);
|
|
18
13
|
const {acts, jobData} = report;
|
|
19
14
|
if (jobData.endTime && /^\d{4}-.+$/.test(jobData.endTime)) {
|
|
@@ -24,7 +19,7 @@ exports.validateTest = async testID => {
|
|
|
24
19
|
}
|
|
25
20
|
const testActs = acts.filter(act => act.type && act.type === 'test');
|
|
26
21
|
if (
|
|
27
|
-
testActs.length ===
|
|
22
|
+
testActs.length === report.acts.filter(act => act.type === 'test').length
|
|
28
23
|
&& testActs.every(testAct => testAct.result && testAct.result.failureCount !== undefined)
|
|
29
24
|
) {
|
|
30
25
|
console.log('Success: Reports have been correctly populated');
|
|
File without changes
|