Skip to content

Commit 358bd51

Browse files
committed
[node] adds "type" to test runner event details
In [version 20.0.0 (and backported to 19.9.0 and 18.7.0)](nodejs/node#47094) the test runner started reporting on whether a test was a suite. This was exposed to reporters in the `details` object of a `test:pass` or `test:fail` event but this hasn't been documented. This adds the `type` property to both event's `details` object.
1 parent 0c7f509 commit 358bd51

File tree

8 files changed

+44
-8
lines changed

8 files changed

+44
-8
lines changed

types/node/test.d.ts

+8
Original file line numberDiff line numberDiff line change
@@ -1223,6 +1223,10 @@ interface TestFail {
12231223
* The error thrown by the test.
12241224
*/
12251225
error: Error;
1226+
/**
1227+
* The type of the test, used to denote whether this is a suite
1228+
*/
1229+
type?: 'suite';
12261230
};
12271231
/**
12281232
* The test name.
@@ -1258,6 +1262,10 @@ interface TestPass {
12581262
* The duration of the test in milliseconds.
12591263
*/
12601264
duration_ms: number;
1265+
/**
1266+
* The type of the test, used to denote whether this is a suite
1267+
*/
1268+
type?: 'suite';
12611269
};
12621270
/**
12631271
* The test name.

types/node/test/test.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -668,14 +668,15 @@ class TestReporter extends Transform {
668668
case 'test:fail':
669669
callback(
670670
null,
671-
`${event.data.name}/${event.data.details.duration_ms}/
671+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
672672
${event.data.details.error}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
673673
);
674674
break;
675675
case 'test:pass':
676676
callback(
677677
null,
678-
`${event.data.name}/${event.data.details.duration_ms}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
678+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
679+
${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
679680
);
680681
break;
681682
case 'test:plan':

types/node/ts4.8/test.d.ts

+8
Original file line numberDiff line numberDiff line change
@@ -1205,6 +1205,10 @@ interface TestFail {
12051205
* The error thrown by the test.
12061206
*/
12071207
error: Error;
1208+
/**
1209+
* The type of the test, used to denote whether this is a suite
1210+
*/
1211+
type?: 'suite';
12081212
};
12091213
/**
12101214
* The test name.
@@ -1240,6 +1244,10 @@ interface TestPass {
12401244
* The duration of the test in milliseconds.
12411245
*/
12421246
duration_ms: number;
1247+
/**
1248+
* The type of the test, used to denote whether this is a suite
1249+
*/
1250+
type?: 'suite';
12431251
};
12441252
/**
12451253
* The test name.

types/node/ts4.8/test/test.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -638,14 +638,15 @@ class TestReporter extends Transform {
638638
case 'test:fail':
639639
callback(
640640
null,
641-
`${event.data.name}/${event.data.details.duration_ms}/
641+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
642642
${event.data.details.error}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
643643
);
644644
break;
645645
case 'test:pass':
646646
callback(
647647
null,
648-
`${event.data.name}/${event.data.details.duration_ms}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
648+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
649+
${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
649650
);
650651
break;
651652
case 'test:plan':

types/node/v18/test.d.ts

+8
Original file line numberDiff line numberDiff line change
@@ -742,6 +742,10 @@ interface TestFail {
742742
* The error thrown by the test.
743743
*/
744744
error: Error;
745+
/**
746+
* The type of the test, used to denote whether this is a suite
747+
*/
748+
type?: 'suite';
745749
};
746750
/**
747751
* The test name.
@@ -777,6 +781,10 @@ interface TestPass {
777781
* The duration of the test in milliseconds.
778782
*/
779783
duration_ms: number;
784+
/**
785+
* The type of the test, used to denote whether this is a suite
786+
*/
787+
type?: 'suite';
780788
};
781789
/**
782790
* The test name.

types/node/v18/test/test.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -548,14 +548,15 @@ class TestReporter extends Transform {
548548
case 'test:fail':
549549
callback(
550550
null,
551-
`${event.data.name}/${event.data.details.duration_ms}/
551+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
552552
${event.data.details.error}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
553553
);
554554
break;
555555
case 'test:pass':
556556
callback(
557557
null,
558-
`${event.data.name}/${event.data.details.duration_ms}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
558+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
559+
${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
559560
);
560561
break;
561562
case 'test:plan':

types/node/v18/ts4.8/test.d.ts

+8
Original file line numberDiff line numberDiff line change
@@ -742,6 +742,10 @@ interface TestFail {
742742
* The error thrown by the test.
743743
*/
744744
error: Error;
745+
/**
746+
* The type of the test, used to denote whether this is a suite
747+
*/
748+
type?: 'suite';
745749
};
746750
/**
747751
* The test name.
@@ -777,6 +781,10 @@ interface TestPass {
777781
* The duration of the test in milliseconds.
778782
*/
779783
duration_ms: number;
784+
/**
785+
* The type of the test, used to denote whether this is a suite
786+
*/
787+
type?: 'suite';
780788
};
781789
/**
782790
* The test name.

types/node/v18/ts4.8/test/test.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -548,14 +548,15 @@ class TestReporter extends Transform {
548548
case 'test:fail':
549549
callback(
550550
null,
551-
`${event.data.name}/${event.data.details.duration_ms}/
551+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
552552
${event.data.details.error}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
553553
);
554554
break;
555555
case 'test:pass':
556556
callback(
557557
null,
558-
`${event.data.name}/${event.data.details.duration_ms}/${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
558+
`${event.data.name}/${event.data.details.duration_ms}/${event.data.details.type}/
559+
${event.data.nesting}/${event.data.testNumber}/${event.data.todo}/${event.data.skip}/${event.data.file}`,
559560
);
560561
break;
561562
case 'test:plan':

0 commit comments

Comments
 (0)