@matter/testing 0.12.2 → 0.12.3-alpha.0-20250205-ad3416ca3
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/dist/cjs/cli.js +1 -1
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/failure-detail.d.ts +7 -6
- package/dist/cjs/failure-detail.d.ts.map +1 -1
- package/dist/cjs/failure-detail.js +26 -75
- package/dist/cjs/failure-detail.js.map +2 -2
- package/dist/cjs/failure-reporter.d.ts +11 -0
- package/dist/cjs/failure-reporter.d.ts.map +1 -0
- package/dist/cjs/failure-reporter.js +78 -0
- package/dist/cjs/failure-reporter.js.map +6 -0
- package/dist/cjs/global-declarations.d.ts +8 -0
- package/dist/cjs/global-declarations.d.ts.map +1 -1
- package/dist/cjs/mocha.d.ts.map +1 -1
- package/dist/cjs/mocha.js +4 -3
- package/dist/cjs/mocha.js.map +1 -1
- package/dist/cjs/mocks/logging.js +2 -12
- package/dist/cjs/mocks/logging.js.map +2 -2
- package/dist/cjs/nodejs-reporter.d.ts +24 -0
- package/dist/cjs/nodejs-reporter.d.ts.map +1 -0
- package/dist/cjs/nodejs-reporter.js +123 -0
- package/dist/cjs/nodejs-reporter.js.map +6 -0
- package/dist/cjs/package.json +2 -1
- package/dist/cjs/reporter.d.ts +0 -23
- package/dist/cjs/reporter.d.ts.map +1 -1
- package/dist/cjs/reporter.js +0 -141
- package/dist/cjs/reporter.js.map +2 -2
- package/dist/cjs/runner.d.ts.map +1 -1
- package/dist/cjs/runner.js +7 -7
- package/dist/cjs/runner.js.map +2 -2
- package/dist/cjs/text-diff.d.ts +10 -0
- package/dist/cjs/text-diff.d.ts.map +1 -0
- package/dist/cjs/text-diff.js +37 -0
- package/dist/cjs/text-diff.js.map +6 -0
- package/dist/cjs/web-reporter.d.ts +22 -0
- package/dist/cjs/web-reporter.d.ts.map +1 -0
- package/dist/cjs/web-reporter.js +58 -0
- package/dist/cjs/web-reporter.js.map +6 -0
- package/dist/cjs/web.d.ts.map +1 -1
- package/dist/cjs/web.js +3 -3
- package/dist/cjs/web.js.map +1 -1
- package/dist/esm/cli.js +2 -2
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/failure-detail.d.ts +7 -6
- package/dist/esm/failure-detail.d.ts.map +1 -1
- package/dist/esm/failure-detail.js +26 -65
- package/dist/esm/failure-detail.js.map +2 -2
- package/dist/esm/failure-reporter.d.ts +11 -0
- package/dist/esm/failure-reporter.d.ts.map +1 -0
- package/dist/esm/failure-reporter.js +58 -0
- package/dist/esm/failure-reporter.js.map +6 -0
- package/dist/esm/global-declarations.d.ts +8 -0
- package/dist/esm/global-declarations.d.ts.map +1 -1
- package/dist/esm/mocha.d.ts.map +1 -1
- package/dist/esm/mocha.js +4 -3
- package/dist/esm/mocha.js.map +1 -1
- package/dist/esm/mocks/logging.js +2 -2
- package/dist/esm/mocks/logging.js.map +1 -1
- package/dist/esm/nodejs-reporter.d.ts +24 -0
- package/dist/esm/nodejs-reporter.d.ts.map +1 -0
- package/dist/esm/nodejs-reporter.js +103 -0
- package/dist/esm/nodejs-reporter.js.map +6 -0
- package/dist/esm/package.json +2 -1
- package/dist/esm/reporter.d.ts +0 -23
- package/dist/esm/reporter.d.ts.map +1 -1
- package/dist/esm/reporter.js +0 -127
- package/dist/esm/reporter.js.map +1 -1
- package/dist/esm/runner.d.ts.map +1 -1
- package/dist/esm/runner.js +8 -8
- package/dist/esm/runner.js.map +1 -1
- package/dist/esm/text-diff.d.ts +10 -0
- package/dist/esm/text-diff.d.ts.map +1 -0
- package/dist/esm/text-diff.js +17 -0
- package/dist/esm/text-diff.js.map +6 -0
- package/dist/esm/web-reporter.d.ts +22 -0
- package/dist/esm/web-reporter.d.ts.map +1 -0
- package/dist/esm/web-reporter.js +38 -0
- package/dist/esm/web-reporter.js.map +6 -0
- package/dist/esm/web.d.ts.map +1 -1
- package/dist/esm/web.js +3 -3
- package/dist/esm/web.js.map +1 -1
- package/package.json +4 -3
- package/src/cli.ts +2 -2
- package/src/failure-detail.ts +41 -64
- package/src/failure-reporter.ts +65 -0
- package/src/global-declarations.ts +8 -0
- package/src/mocha.ts +5 -3
- package/src/mocks/logging.ts +2 -2
- package/src/nodejs-reporter.ts +123 -0
- package/src/reporter.ts +0 -147
- package/src/runner.ts +10 -7
- package/src/text-diff.ts +16 -0
- package/src/tsconfig.json +5 -1
- package/src/web-reporter.ts +51 -0
- package/src/web.ts +4 -3
|
@@ -3,22 +3,9 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
let diff;
|
|
9
|
-
const { message, stack, cause, errors } = parseError(error);
|
|
10
|
-
if (error.expected && error.actual) {
|
|
11
|
-
if (FailureDetail.diff === void 0) {
|
|
12
|
-
diff = "(no diff implementation installed)";
|
|
13
|
-
} else {
|
|
14
|
-
diff = FailureDetail.diff(error.actual.toString(), error.expected.toString());
|
|
15
|
-
diff = diff.trim().replace(/^ {6}/gm, "");
|
|
16
|
-
}
|
|
17
|
-
}
|
|
6
|
+
function FailureDetail(error, logs, parentStack) {
|
|
7
|
+
const { message, stack, stackLines, cause, errors } = parseError(error, parentStack);
|
|
18
8
|
const result = { message };
|
|
19
|
-
if (diff) {
|
|
20
|
-
result.diff = diff;
|
|
21
|
-
}
|
|
22
9
|
if (stack) {
|
|
23
10
|
result.stack = stack;
|
|
24
11
|
}
|
|
@@ -31,49 +18,23 @@ function FailureDetail(error, logs) {
|
|
|
31
18
|
if (errors) {
|
|
32
19
|
result.errors = errors;
|
|
33
20
|
}
|
|
21
|
+
if (stackLines) {
|
|
22
|
+
result.stackLines = stackLines;
|
|
23
|
+
}
|
|
24
|
+
const { actual, expected } = error;
|
|
25
|
+
if (actual) {
|
|
26
|
+
result.actual = actual;
|
|
27
|
+
}
|
|
28
|
+
if (expected) {
|
|
29
|
+
result.expected = expected;
|
|
30
|
+
}
|
|
34
31
|
return result;
|
|
35
32
|
}
|
|
36
|
-
(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
`));
|
|
41
|
-
if (failure.diff) {
|
|
42
|
-
process.stdout.write(`${prefix} ${failure.diff.replace(/\n/g, "\n ")}
|
|
43
|
-
|
|
44
|
-
`);
|
|
45
|
-
}
|
|
46
|
-
if (failure.stack) {
|
|
47
|
-
process.stdout.write(`${prefix}${colors.dim(failure.stack.replace(/\n/g, `
|
|
48
|
-
${prefix}`))}
|
|
49
|
-
|
|
50
|
-
`);
|
|
51
|
-
}
|
|
52
|
-
if (failure.cause) {
|
|
53
|
-
process.stdout.write(`${prefix}Caused by:
|
|
54
|
-
|
|
55
|
-
`);
|
|
56
|
-
dump(failure.cause, prefix);
|
|
57
|
-
}
|
|
58
|
-
if (failure.errors?.length) {
|
|
59
|
-
let num = 0;
|
|
60
|
-
for (const cause of failure.errors) {
|
|
61
|
-
process.stdout.write(`${prefix}Cause #${++num}:
|
|
62
|
-
|
|
63
|
-
`);
|
|
64
|
-
dump(cause, `${prefix} `);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
if (failure.logs) {
|
|
68
|
-
process.stdout.write(` ${failure.logs.replace(/\n/g, "\n ")}
|
|
69
|
-
|
|
70
|
-
`);
|
|
71
|
-
}
|
|
33
|
+
function messageAndStackFor(error, parentStack) {
|
|
34
|
+
if (MatterHooks?.messageAndStackFor) {
|
|
35
|
+
return MatterHooks.messageAndStackFor(error, parentStack);
|
|
72
36
|
}
|
|
73
|
-
|
|
74
|
-
})(FailureDetail || (FailureDetail = {}));
|
|
75
|
-
function parseError(error) {
|
|
76
|
-
let message, stack, cause, errors;
|
|
37
|
+
let message, stack;
|
|
77
38
|
if (error === void 0 || error === null) {
|
|
78
39
|
message = `(error is ${error})`;
|
|
79
40
|
} else {
|
|
@@ -88,24 +49,24 @@ function parseError(error) {
|
|
|
88
49
|
if (lines.length) {
|
|
89
50
|
stack = lines.map((line) => line.trim()).join("\n");
|
|
90
51
|
}
|
|
91
|
-
} else if (error.message) {
|
|
92
|
-
message = error.message;
|
|
93
|
-
} else {
|
|
94
|
-
message = error.toString();
|
|
95
52
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
message = message.slice(0, message.length - 1);
|
|
53
|
+
if (!message) {
|
|
54
|
+
message = error.toString();
|
|
99
55
|
}
|
|
56
|
+
return { message, stack };
|
|
57
|
+
}
|
|
58
|
+
function parseError(error, parentStack) {
|
|
59
|
+
const { message, stack, stackLines } = messageAndStackFor(error, parentStack);
|
|
60
|
+
let cause, errors;
|
|
100
61
|
const errorCause = error.cause;
|
|
101
62
|
if (errorCause) {
|
|
102
|
-
cause = FailureDetail(errorCause);
|
|
63
|
+
cause = FailureDetail(errorCause, void 0, stackLines);
|
|
103
64
|
}
|
|
104
65
|
const errorErrors = error.errors;
|
|
105
66
|
if (Array.isArray(errorErrors)) {
|
|
106
|
-
errors = errorErrors.map((e) => FailureDetail(e));
|
|
67
|
+
errors = errorErrors.map((e) => FailureDetail(e, void 0, stackLines));
|
|
107
68
|
}
|
|
108
|
-
return { message, stack, cause, errors };
|
|
69
|
+
return { message, stack, stackLines, cause, errors };
|
|
109
70
|
}
|
|
110
71
|
export {
|
|
111
72
|
FailureDetail
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/failure-detail.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
5
|
-
"names": [
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAoBO,SAAS,cAAc,OAAY,MAAiB,aAAwB;AAC/E,QAAM,EAAE,SAAS,OAAO,YAAY,OAAO,OAAO,IAAI,WAAW,OAAO,WAAW;AACnF,QAAM,SAAS,EAAE,QAAQ;AAEzB,MAAI,OAAO;AACP,WAAO,QAAQ;AAAA,EACnB;AACA,MAAI,MAAM,QAAQ;AACd,WAAO,OAAO,KAAK,KAAK,IAAI;AAAA,EAChC;AACA,MAAI,OAAO;AACP,WAAO,QAAQ;AAAA,EACnB;AACA,MAAI,QAAQ;AACR,WAAO,SAAS;AAAA,EACpB;AACA,MAAI,YAAY;AACZ,WAAO,aAAa;AAAA,EACxB;AAEA,QAAM,EAAE,QAAQ,SAAS,IAAI;AAC7B,MAAI,QAAQ;AACR,WAAO,SAAS;AAAA,EACpB;AACA,MAAI,UAAU;AACV,WAAO,WAAW;AAAA,EACtB;AAEA,SAAO;AACX;AAEA,SAAS,mBACL,OACA,aAC0D;AAE1D,MAAI,aAAa,oBAAoB;AACjC,WAAO,YAAY,mBAAmB,OAAO,WAAW;AAAA,EAC5D;AAGA,MAAI,SAAS;AACb,MAAI,UAAU,UAAa,UAAU,MAAM;AACvC,cAAU,aAAa,KAAK;AAAA,EAChC,OAAO;AACH,cAAU,MAAM;AAAA,EACpB;AAEA,MAAI,MAAM,OAAO;AACb,QAAI,QAAQ,MAAM,MAAM,KAAK,EAAE,MAAM,IAAI;AACzC,QAAI,CAAC,SAAS;AACV,gBAAU,MAAM,CAAC;AAAA,IACrB;AACA,YAAQ,MAAM,OAAO,UAAQ,KAAK,MAAM,aAAa,CAAC;AACtD,QAAI,MAAM,QAAQ;AACd,cAAQ,MAAM,IAAI,UAAQ,KAAK,KAAK,CAAC,EAAE,KAAK,IAAI;AAAA,IACpD;AAAA,EACJ;AAEA,MAAI,CAAC,SAAS;AACV,cAAU,MAAM,SAAS;AAAA,EAC7B;AAEA,SAAO,EAAE,SAAS,MAAM;AAC5B;AAEA,SAAS,WAAW,OAAc,aAAwB;AACtD,QAAM,EAAE,SAAS,OAAO,WAAW,IAAI,mBAAmB,OAAO,WAAW;AAE5E,MAAI,OAAkC;AAEtC,QAAM,aAAa,MAAM;AACzB,MAAI,YAAY;AACZ,YAAQ,cAAc,YAAY,QAAW,UAAU;AAAA,EAC3D;AAEA,QAAM,cAAe,MAAyB;AAC9C,MAAI,MAAM,QAAQ,WAAW,GAAG;AAC5B,aAAS,YAAY,IAAI,OAAK,cAAc,GAAG,QAAW,UAAU,CAAC;AAAA,EACzE;AAEA,SAAO,EAAE,SAAS,OAAO,YAAY,OAAO,OAAO;AACvD;",
|
|
5
|
+
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Printer } from "#tools";
|
|
7
|
+
import { FailureDetail } from "./failure-detail.js";
|
|
8
|
+
export declare namespace FailureReporter {
|
|
9
|
+
function report(out: Printer, failure: FailureDetail, title: string): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=failure-reporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failure-reporter.d.ts","sourceRoot":"","sources":["../../src/failure-reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAQ,OAAO,EAAU,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMpD,yBAAiB,eAAe,CAAC;IAC7B,SAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,QAUzE;CACJ"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ansi, screen } from "#tools";
|
|
7
|
+
import { TextDiff } from "./text-diff.js";
|
|
8
|
+
const OUTER_PREFIX = `${ansi.red}\u258C ${ansi.not.red}`;
|
|
9
|
+
const INNER_PREFIX = `${ansi.dim}\u2506 ${ansi.not.dim}`;
|
|
10
|
+
var FailureReporter;
|
|
11
|
+
((FailureReporter2) => {
|
|
12
|
+
function report(out, failure, title) {
|
|
13
|
+
out.state({ style: ansi.reset.white.bg.red }, () => {
|
|
14
|
+
out(screen.erase.toEol, "\n ", title, screen.erase.toEol, "\n", screen.erase.toEol, "\n");
|
|
15
|
+
});
|
|
16
|
+
out(screen.erase.toEol);
|
|
17
|
+
out.state({ linePrefix: OUTER_PREFIX }, () => {
|
|
18
|
+
dumpDetails(out, failure);
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
FailureReporter2.report = report;
|
|
22
|
+
})(FailureReporter || (FailureReporter = {}));
|
|
23
|
+
function dumpCause(out, failure) {
|
|
24
|
+
out.state({ linePrefix: INNER_PREFIX }, () => {
|
|
25
|
+
dumpDetails(out, failure);
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function dumpDetails(out, { message, actual, expected, stack, cause, errors, logs }) {
|
|
29
|
+
out("\n", ansi.bright.red(message), "\n");
|
|
30
|
+
if (actual !== void 0 && expected !== void 0) {
|
|
31
|
+
out("\n");
|
|
32
|
+
out.state({ linePrefix: " " }, () => out(TextDiff(actual, expected)));
|
|
33
|
+
out("\n");
|
|
34
|
+
}
|
|
35
|
+
if (stack) {
|
|
36
|
+
out("\n");
|
|
37
|
+
out.state({ linePrefix: " " }, () => out(stack));
|
|
38
|
+
out("\n");
|
|
39
|
+
}
|
|
40
|
+
if (cause) {
|
|
41
|
+
out("\n", ansi.bold("Caused by:"), "\n");
|
|
42
|
+
dumpCause(out, cause);
|
|
43
|
+
}
|
|
44
|
+
if (errors?.length) {
|
|
45
|
+
let num = 0;
|
|
46
|
+
for (const cause2 of errors) {
|
|
47
|
+
out("\n", ansi.bold(`Cause #${++num}:`), "\n");
|
|
48
|
+
dumpCause(out, cause2);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (logs) {
|
|
52
|
+
out("\n", logs, "\n");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export {
|
|
56
|
+
FailureReporter
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=failure-reporter.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/failure-reporter.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,MAAe,cAAc;AAEtC,SAAS,gBAAgB;AAEzB,MAAM,eAAe,GAAG,KAAK,GAAG,UAAK,KAAK,IAAI,GAAG;AACjD,MAAM,eAAe,GAAG,KAAK,GAAG,UAAK,KAAK,IAAI,GAAG;AAE1C,IAAU;AAAA,CAAV,CAAUA,qBAAV;AACI,WAAS,OAAO,KAAc,SAAwB,OAAe;AACxE,QAAI,MAAM,EAAE,OAAO,KAAK,MAAM,MAAM,GAAG,IAAI,GAAG,MAAM;AAChD,UAAI,OAAO,MAAM,OAAO,OAAO,OAAO,OAAO,MAAM,OAAO,MAAM,OAAO,MAAM,OAAO,IAAI;AAAA,IAC5F,CAAC;AAED,QAAI,OAAO,MAAM,KAAK;AAEtB,QAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,kBAAY,KAAK,OAAO;AAAA,IAC5B,CAAC;AAAA,EACL;AAVO,EAAAA,iBAAS;AAAA,GADH;AAcjB,SAAS,UAAU,KAAc,SAAwB;AACrD,MAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,gBAAY,KAAK,OAAO;AAAA,EAC5B,CAAC;AACL;AAEA,SAAS,YAAY,KAAc,EAAE,SAAS,QAAQ,UAAU,OAAO,OAAO,QAAQ,KAAK,GAAkB;AACzG,MAAI,MAAM,KAAK,OAAO,IAAI,OAAO,GAAG,IAAI;AAExC,MAAI,WAAW,UAAa,aAAa,QAAW;AAChD,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,OAAO,GAAG,MAAM,IAAI,SAAS,QAAQ,QAAQ,CAAC,CAAC;AACvE,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,KAAK,GAAG,MAAM,IAAI,KAAK,CAAC;AAChD,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,MAAM,KAAK,KAAK,YAAY,GAAG,IAAI;AACvC,cAAU,KAAK,KAAK;AAAA,EACxB;AAEA,MAAI,QAAQ,QAAQ;AAChB,QAAI,MAAM;AACV,eAAWC,UAAS,QAAQ;AACxB,UAAI,MAAM,KAAK,KAAK,UAAU,EAAE,GAAG,GAAG,GAAG,IAAI;AAC7C,gBAAU,KAAKA,MAAK;AAAA,IACxB;AAAA,EACJ;AAEA,MAAI,MAAM;AACN,QAAI,MAAM,MAAM,IAAI;AAAA,EACxB;AACJ;",
|
|
5
|
+
"names": ["FailureReporter", "cause"]
|
|
6
|
+
}
|
|
@@ -38,6 +38,14 @@ declare global {
|
|
|
38
38
|
* Receive intercepted log messages.
|
|
39
39
|
*/
|
|
40
40
|
loggerSink?: (level: number, message: string) => void;
|
|
41
|
+
/**
|
|
42
|
+
* Extract error details.
|
|
43
|
+
*/
|
|
44
|
+
messageAndStackFor?: (error: unknown, parentStack?: string[]) => {
|
|
45
|
+
message: string;
|
|
46
|
+
stack?: string;
|
|
47
|
+
stackLines?: string[];
|
|
48
|
+
};
|
|
41
49
|
};
|
|
42
50
|
namespace Mocha {
|
|
43
51
|
interface Suite {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-declarations.d.ts","sourceRoot":"","sources":["../../src/global-declarations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,CAAC,MAAM,CAAC;IAEX,MAAM,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC;IAGjC,IAAI,QAAQ,EAAE,QAAQ,CAAC;IAGvB,IAAI,UAAU,EAAE,UAAU,CAAC;IAE3B;;;OAGG;IACH,IAAI,WAAW,EACT,SAAS,GACT;QACI;;WAEG;QACH,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAEhC;;WAEG;QACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;QAEpC;;WAEG;QACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;QAEpC;;WAEG;QACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"global-declarations.d.ts","sourceRoot":"","sources":["../../src/global-declarations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,CAAC,MAAM,CAAC;IAEX,MAAM,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC;IAGjC,IAAI,QAAQ,EAAE,QAAQ,CAAC;IAGvB,IAAI,UAAU,EAAE,UAAU,CAAC;IAE3B;;;OAGG;IACH,IAAI,WAAW,EACT,SAAS,GACT;QACI;;WAEG;QACH,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAEhC;;WAEG;QACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;QAEpC;;WAEG;QACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;QAEpC;;WAEG;QACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAEtD;;WAEG;QACH,kBAAkB,CAAC,EAAE,CACjB,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,MAAM,EAAE,KACrB;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;KACnE,CAAC;IAER,UAAU,KAAK,CAAC;QACZ,UAAU,KAAK;YACX,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;SACvC;QAED,UAAU,IAAI;YACV,UAAU,EAAE,cAAc,CAAC;SAC9B;KACJ;CACJ"}
|
package/dist/esm/mocha.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mocha.d.ts","sourceRoot":"","sources":["../../src/mocha.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,SAAS,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAK7B,OAAO,
|
|
1
|
+
{"version":3,"file":"mocha.d.ts","sourceRoot":"","sources":["../../src/mocha.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,SAAS,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAK7B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAUzC,QAAA,MAAM,aAAa,eAAwB,CAAC;AAC5C,QAAA,MAAM,YAAY,eAAuB,CAAC;AAE1C,UAAU,YAAa,SAAQ,IAAI;IAC/B,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;IAC/C,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,QAK7E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,QAK5E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,QA8CxC;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,SAAS,QAqEhD;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE,KAAK,iBAgB1C;AAQD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;iBAM5D,KAAK,CAAC,MAAM;;;;;;;;;;;;iBA2Gwza,GAAG;;;;;;;;;;;;EA3Dl2a;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,QAuB/C;AAID,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,QAEzD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,QAExD"}
|
package/dist/esm/mocha.js
CHANGED
|
@@ -7,8 +7,9 @@ import { FailureDetail } from "./failure-detail.js";
|
|
|
7
7
|
import { Boot } from "./mocks/boot.js";
|
|
8
8
|
import { LoggerHooks } from "./mocks/logging.js";
|
|
9
9
|
import { TestOptions } from "./options.js";
|
|
10
|
-
import {
|
|
10
|
+
import { TextDiff } from "./text-diff.js";
|
|
11
11
|
import { wtf } from "./util/wtf.js";
|
|
12
|
+
import { WebReporter } from "./web-reporter.js";
|
|
12
13
|
const TEST_HOOK_TIMEOUT = 6e4;
|
|
13
14
|
const beforeOneHook = Symbol("before-hook");
|
|
14
15
|
const afterOneHook = Symbol("after-hook");
|
|
@@ -57,7 +58,7 @@ function generalSetup(mocha) {
|
|
|
57
58
|
}
|
|
58
59
|
return this.currentTest[afterOneHook]?.call(this, done);
|
|
59
60
|
});
|
|
60
|
-
|
|
61
|
+
TextDiff.generator = Base.generateDiff.bind(Base);
|
|
61
62
|
}
|
|
62
63
|
function extendApi(Mocha2) {
|
|
63
64
|
const descriptors = /* @__PURE__ */ new WeakMap();
|
|
@@ -192,7 +193,7 @@ function browserSetup(mocha) {
|
|
|
192
193
|
// Start Mocha, proxying reporting through console to Playwright and completing once Mocha has finished
|
|
193
194
|
auto: async function(options) {
|
|
194
195
|
TestOptions.apply(mocha, options);
|
|
195
|
-
mocha.reporter(adaptReporter(Mocha, "Web", new
|
|
196
|
+
mocha.reporter(adaptReporter(Mocha, "Web", new WebReporter()));
|
|
196
197
|
return new Promise((accept) => {
|
|
197
198
|
const runner = this.start();
|
|
198
199
|
runner.on("end", accept);
|
package/dist/esm/mocha.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/mocha.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AASA,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["Mocha", "logs"]
|
|
6
6
|
}
|
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
6
|
+
import { ansi, Wrapper } from "#tools/ansi-text";
|
|
7
7
|
const TheMockLogger = {
|
|
8
8
|
emitAll: false,
|
|
9
9
|
injectExternalMessage: (source, text) => console.log(formatExternalMessage(source, text))
|
|
10
10
|
};
|
|
11
11
|
function formatExternalMessage(source, text) {
|
|
12
|
-
return `${
|
|
12
|
+
return `${Wrapper.prefixStart}${ansi.black.bg.cyan.bold(` ${source} `)} ${Wrapper.prefixStop}${ansi.dim(text)}`;
|
|
13
13
|
}
|
|
14
14
|
const LoggerHooks = {
|
|
15
15
|
beforeEach: Array(),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/mocks/logging.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,MAAM,eAAe;AAYvB,MAAM,gBAA4B;AAAA,EACrC,SAAS;AAAA,EACT,uBAAuB,CAAC,QAAgB,SAAiB,QAAQ,IAAI,sBAAsB,QAAQ,IAAI,CAAC;AAC5G;AAEA,SAAS,sBAAsB,QAAgB,MAAc;AACzD,SAAO,GAAG,QAAQ,WAAW,GAAG,KAAK,MAAM,GAAG,KAAK,KAAK,IAAI,MAAM,GAAG,CAAC,IAAI,QAAQ,UAAU,GAAG,KAAK,IAAI,IAAI,CAAC;AACjH;AASO,MAAM,cAAc;AAAA,EACvB,YAAY,MAA8B;AAAA,EAC1C,WAAW,MAA8B;AAC7C;AAEO,SAAS,YAAY,QAAoB;AAU5C,SAAO,SAAS;AAEhB,MAAI;AAEJ,QAAM,aAAa,OAAO;AAE1B,WAAS,YAAY,MAAwB;AACzC,eAAW,MAAM,QAAQ,IAAI;AAAA,EACjC;AAEA,WAAS,sBAAsB,MAAwB;AACnD,QAAI,UAAU,cAAc;AAC5B,QAAI,aAAa,YAAY;AACzB,kBAAY,WAAW,GAAG,IAAI;AAAA,IAClC,WAAW,CAAC,SAAS;AACjB,UAAI,eAAe;AACf,sBAAc,KAAK,IAAI;AAAA,MAC3B,OAAO;AACH,kBAAU;AAAA,MACd;AAAA,IACJ;AAEA,QAAI,SAAS;AACT,kBAAY,IAAI;AAAA,IACpB;AAAA,EACJ;AAEA,gBAAc,wBAAwB,CAAC,QAAQ,SAAS,mBAAmB,GAAG,sBAAsB,QAAQ,IAAI,CAAC;AAEjH,SAAO,MAAM;AAGb,cAAY,WAAW,KAAK,WAAY;AACpC,QAAI,CAAC,cAAc,SAAS;AACxB,sBAAgB,CAAC;AAAA,IACrB;AAAA,EACJ,CAAC;AAGD,cAAY,UAAU,KAAK,WAAS;AAChC,QAAI,eAAe,QAAQ;AACvB,UAAI,MAAM,MAAM,IAAI,aAAa,SAAS,GAAG;AACzC,mBAAW,QAAQ,eAAe;AAC9B,sBAAY,IAAI;AAAA,QACpB;AAAA,MACJ;AACA,sBAAgB;AAAA,IACpB;AAAA,EACJ,CAAC;AACL;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Progress } from "#tools";
|
|
7
|
+
import { FailureDetail } from "./failure-detail.js";
|
|
8
|
+
import { Reporter, Stats } from "./reporter.js";
|
|
9
|
+
/**
|
|
10
|
+
* Test UI for Node.js.
|
|
11
|
+
*/
|
|
12
|
+
export declare abstract class NodejsReporter implements Reporter {
|
|
13
|
+
#private;
|
|
14
|
+
private progress;
|
|
15
|
+
constructor(progress: Progress);
|
|
16
|
+
beginRun(name: string, stats: Stats | undefined, supportsSuites?: boolean): void;
|
|
17
|
+
beginSuite(name: string[]): void;
|
|
18
|
+
beginTest(name: string, stats?: Stats): void;
|
|
19
|
+
beginStep(name: string): void;
|
|
20
|
+
failTest(name: string, detail: FailureDetail): void;
|
|
21
|
+
abstract failRun(detail: FailureDetail): void;
|
|
22
|
+
endRun(stats?: Stats): void;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=nodejs-reporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodejs-reporter.d.ts","sourceRoot":"","sources":["../../src/nodejs-reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAa,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAW,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEzD;;GAEG;AACH,8BAAsB,cAAe,YAAW,QAAQ;;IASxC,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,QAAQ;IAEtC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,cAAc,UAAO,GAAG,IAAI;IAS7E,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAIhC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAU5C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAiB7B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa;IAS5C,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAE7C,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;CA8C9B"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ansi, std } from "#tools";
|
|
7
|
+
import { FailureReporter } from "./failure-reporter.js";
|
|
8
|
+
class NodejsReporter {
|
|
9
|
+
constructor(progress) {
|
|
10
|
+
this.progress = progress;
|
|
11
|
+
}
|
|
12
|
+
#run = "";
|
|
13
|
+
#suite = Array();
|
|
14
|
+
#test;
|
|
15
|
+
#step;
|
|
16
|
+
#stats;
|
|
17
|
+
#failures = Array();
|
|
18
|
+
#lastTitle;
|
|
19
|
+
beginRun(name, stats, supportsSuites = true) {
|
|
20
|
+
this.#run = name;
|
|
21
|
+
this.#suite = [];
|
|
22
|
+
this.#failures = [];
|
|
23
|
+
if (!supportsSuites) {
|
|
24
|
+
this.progress.update(this.#summarize(stats));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
beginSuite(name) {
|
|
28
|
+
this.#suite = name;
|
|
29
|
+
}
|
|
30
|
+
beginTest(name, stats) {
|
|
31
|
+
this.#test = name;
|
|
32
|
+
this.#stats = stats;
|
|
33
|
+
this.#step = void 0;
|
|
34
|
+
const title = process.stdout.isTTY ? this.#formatName(this.#suite, name) : this.#suite[0];
|
|
35
|
+
this.#updateTitle(title);
|
|
36
|
+
}
|
|
37
|
+
beginStep(name) {
|
|
38
|
+
this.#step = name;
|
|
39
|
+
if (process.stdout.isTTY && this.#test) {
|
|
40
|
+
const title = this.#formatName(this.#suite, this.#test, name);
|
|
41
|
+
this.#updateTitle(title);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
#updateTitle(title) {
|
|
45
|
+
if (title === this.#lastTitle) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
this.#lastTitle = title;
|
|
49
|
+
this.progress.update(this.#summarize(this.#stats), title);
|
|
50
|
+
}
|
|
51
|
+
failTest(name, detail) {
|
|
52
|
+
this.#failures.push({
|
|
53
|
+
suite: this.#suite,
|
|
54
|
+
test: name,
|
|
55
|
+
step: this.#step,
|
|
56
|
+
detail
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
endRun(stats) {
|
|
60
|
+
if (this.#failures.length) {
|
|
61
|
+
this.progress.failure(this.#summarize(stats));
|
|
62
|
+
this.#dumpFailures();
|
|
63
|
+
} else if (stats && !stats.complete) {
|
|
64
|
+
this.progress.failure("No tests found");
|
|
65
|
+
} else {
|
|
66
|
+
this.progress.success(this.#summarize(stats));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
#summarize(stats) {
|
|
70
|
+
let statStr;
|
|
71
|
+
if (stats) {
|
|
72
|
+
const complete = ansi.dim(`${stats.complete}/${stats.total}`);
|
|
73
|
+
const failures = stats.failures ? ansi.bright.red(` ${stats.failures.toString()} failed`) : "";
|
|
74
|
+
statStr = ` ${complete}${failures}`;
|
|
75
|
+
} else {
|
|
76
|
+
statStr = "";
|
|
77
|
+
}
|
|
78
|
+
return `${ansi.bold(this.#run)}${statStr}`;
|
|
79
|
+
}
|
|
80
|
+
#dumpFailures() {
|
|
81
|
+
for (let i = 0; i < this.#failures.length; i++) {
|
|
82
|
+
if (i !== 0) {
|
|
83
|
+
std.out("\n");
|
|
84
|
+
}
|
|
85
|
+
const failure = this.#failures[i];
|
|
86
|
+
const index = `Failure ${ansi.bold((i + 1).toString())} of ${this.#failures.length}`;
|
|
87
|
+
const title = `${index} ${this.#formatName(failure.suite, failure.test, failure.step)}`;
|
|
88
|
+
FailureReporter.report(std.out, failure.detail, title);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
#formatName(suite, test, step) {
|
|
92
|
+
const breadcrumb = [...suite, test];
|
|
93
|
+
if (step) {
|
|
94
|
+
breadcrumb.push(step);
|
|
95
|
+
}
|
|
96
|
+
breadcrumb[breadcrumb.length - 1] = ansi.bold(breadcrumb[breadcrumb.length - 1]).toString();
|
|
97
|
+
return breadcrumb.join(" \u27A1 ");
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
export {
|
|
101
|
+
NodejsReporter
|
|
102
|
+
};
|
|
103
|
+
//# sourceMappingURL=nodejs-reporter.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/nodejs-reporter.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/esm/package.json
CHANGED
package/dist/esm/reporter.d.ts
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Progress } from "#tools";
|
|
7
6
|
import { FailureDetail } from "./failure-detail.js";
|
|
8
7
|
export type Stats = {
|
|
9
8
|
total: number;
|
|
@@ -25,26 +24,4 @@ export interface Failure {
|
|
|
25
24
|
step?: string;
|
|
26
25
|
detail: FailureDetail;
|
|
27
26
|
}
|
|
28
|
-
export declare abstract class ProgressReporter implements Reporter {
|
|
29
|
-
#private;
|
|
30
|
-
private progress;
|
|
31
|
-
constructor(progress: Progress);
|
|
32
|
-
beginRun(name: string, stats: Stats | undefined, supportsSuites?: boolean): void;
|
|
33
|
-
beginSuite(name: string[]): void;
|
|
34
|
-
beginTest(name: string, stats?: Stats): void;
|
|
35
|
-
beginStep(name: string): void;
|
|
36
|
-
failTest(name: string, detail: FailureDetail): void;
|
|
37
|
-
abstract failRun(detail: FailureDetail): void;
|
|
38
|
-
endRun(stats?: Stats): void;
|
|
39
|
-
}
|
|
40
|
-
export declare class ConsoleProxyReporter implements Reporter {
|
|
41
|
-
static FLAG: string;
|
|
42
|
-
beginRun(name: string, stats?: Stats): void;
|
|
43
|
-
beginSuite(name: string[], stats?: Stats): void;
|
|
44
|
-
beginTest(name: string, stats?: Stats): void;
|
|
45
|
-
beginStep(name: string): void;
|
|
46
|
-
endRun(stats?: Stats): void;
|
|
47
|
-
failTest(name: string, detail: FailureDetail): void;
|
|
48
|
-
failRun(detail: FailureDetail): void;
|
|
49
|
-
}
|
|
50
27
|
//# sourceMappingURL=reporter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,MAAM,KAAK,GAAG;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACtE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAChD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IACpD,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,OAAO;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;CACzB"}
|