Skip to content

Commit 6fea3c8

Browse files
authored
Merge pull request #2932 from MichaelWest22/summary-reporter-error-reporting
fix(summaryReporter): add back broken error reporting and make log reporting optional for summaryReporter
2 parents 806fdd9 + 61260d5 commit 6fea3c8

File tree

2 files changed

+25
-15
lines changed

2 files changed

+25
-15
lines changed

.changeset/tiny-apes-protect.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@web/test-runner': patch
3+
---
4+
5+
Summary Reporter - re-enabled error reporting and made option to disable browser logs and error reporting in this reporter

packages/test-runner/src/reporter/summaryReporter.ts

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,13 @@ import type {
99
import { reportTestsErrors } from './reportTestsErrors.js';
1010
import { reportTestFileErrors } from './reportTestFileErrors.js';
1111

12+
import { TestRunnerLogger } from '../logger/TestRunnerLogger.js';
1213
import { reportBrowserLogs } from './reportBrowserLogs.js';
1314

1415
interface Options {
1516
flatten?: boolean;
17+
reportTestLogs?: boolean;
18+
reportTestErrors?: boolean;
1619
}
1720

1821
const color =
@@ -26,10 +29,12 @@ const dim = color([2, 0]);
2629

2730
/** Test reporter that summarizes all test for a given run */
2831
export function summaryReporter(opts: Options): Reporter {
29-
const { flatten = false } = opts ?? {};
32+
const { flatten = false, reportTestLogs = true, reportTestErrors = true } = opts ?? {};
3033
let args: ReporterArgs;
3134
let favoriteBrowser: string;
3235

36+
const testLogger = new TestRunnerLogger();
37+
3338
function log(
3439
logger: Logger,
3540
name: string,
@@ -80,7 +85,6 @@ export function summaryReporter(opts: Options): Reporter {
8085
logResults(logger, suite, pref, browser);
8186
}
8287

83-
let cachedLogger: Logger;
8488
return {
8589
start(_args) {
8690
args = _args;
@@ -92,26 +96,27 @@ export function summaryReporter(opts: Options): Reporter {
9296
},
9397

9498
reportTestFileResults({ logger, sessionsForTestFile }) {
95-
cachedLogger = logger;
9699
for (const session of sessionsForTestFile) {
97100
logResults(logger, session.testResults, '', session.browser);
98101
logger.log('');
99102
}
100-
reportBrowserLogs(logger, sessionsForTestFile);
103+
if (reportTestLogs) reportBrowserLogs(logger, sessionsForTestFile);
101104
},
102105

103106
onTestRunFinished({ sessions }) {
104-
const failedSessions = sessions.filter(s => !s.passed);
105-
if (failedSessions.length > 0) {
106-
cachedLogger.log('\n\nErrors Reported in Tests:\n\n');
107-
reportTestsErrors(cachedLogger, args.browserNames, favoriteBrowser, failedSessions);
108-
reportTestFileErrors(
109-
cachedLogger,
110-
args.browserNames,
111-
favoriteBrowser,
112-
failedSessions,
113-
true,
114-
);
107+
if (reportTestErrors) {
108+
const failedSessions = sessions.filter(s => !s.passed);
109+
if (failedSessions.length > 0) {
110+
testLogger.log('\n\nErrors Reported in Tests:\n\n');
111+
reportTestsErrors(testLogger, args.browserNames, favoriteBrowser, failedSessions);
112+
reportTestFileErrors(
113+
testLogger,
114+
args.browserNames,
115+
favoriteBrowser,
116+
failedSessions,
117+
true,
118+
);
119+
}
115120
}
116121
},
117122
};

0 commit comments

Comments
 (0)