Skip to content

Commit b7bf1ef

Browse files
authored
fix(html): preserve the expanded/collapsed state of global errors chip (#39496)
1 parent 4cda379 commit b7bf1ef

File tree

2 files changed

+21
-6
lines changed

2 files changed

+21
-6
lines changed

packages/html-reporter/src/reportView.tsx

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ export const ReportView: React.FC<{
5252
const [expandedFiles, setExpandedFiles] = React.useState<Map<string, boolean>>(new Map());
5353
const [filterText, setFilterText] = React.useState(searchParams.get('q') || '');
5454
const [metadataVisible, setMetadataVisible] = React.useState(false);
55+
const [errorsVisible, setErrorsVisible] = React.useState(true);
5556
const speedboard = searchParams.has('speedboard');
5657
const [mergeFiles] = useSetting('mergeFiles', false);
5758
const testId = searchParams.get('testId');
@@ -140,7 +141,13 @@ export const ReportView: React.FC<{
140141
<main>
141142
{report && <GlobalFilterView stats={report.json().stats} filterText={filterText} setFilterText={setFilterText} />}
142143
<Route predicate={testFilesRoutePredicate}>
143-
<TestFilesHeader report={report?.json()} filteredStats={filteredStats} metadataVisible={metadataVisible} toggleMetadataVisible={() => setMetadataVisible(visible => !visible)}/>
144+
<TestFilesHeader
145+
report={report?.json()}
146+
filteredStats={filteredStats}
147+
metadataVisible={metadataVisible}
148+
toggleMetadataVisible={() => setMetadataVisible(visible => !visible)}
149+
errorsVisible={errorsVisible}
150+
setErrorsVisible={setErrorsVisible}/>
144151
<TestFilesView
145152
files={testModel.files}
146153
expandedFiles={expandedFiles}
@@ -149,7 +156,13 @@ export const ReportView: React.FC<{
149156
/>
150157
</Route>
151158
<Route predicate={speedboardRoutePredicate}>
152-
<TestFilesHeader report={report?.json()} filteredStats={filteredStats} metadataVisible={metadataVisible} toggleMetadataVisible={() => setMetadataVisible(visible => !visible)}/>
159+
<TestFilesHeader
160+
report={report?.json()}
161+
filteredStats={filteredStats}
162+
metadataVisible={metadataVisible}
163+
toggleMetadataVisible={() => setMetadataVisible(visible => !visible)}
164+
errorsVisible={errorsVisible}
165+
setErrorsVisible={setErrorsVisible}/>
153166
{report && <Speedboard report={report} tests={testModel.tests} />}
154167
</Route>
155168
<Route predicate={testCaseRoutePredicate}>

packages/html-reporter/src/testFilesView.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import { TestFileView } from './testFileView';
2020
import './testFileView.css';
2121
import './chip.css';
2222
import { msToString } from './utils';
23-
import { AutoChip } from './chip';
23+
import { Chip } from './chip';
2424
import { CodeSnippet } from './testErrorView';
2525
import * as icons from './icons';
2626
import { isMetadataEmpty, MetadataView } from './metadataView';
@@ -71,7 +71,9 @@ export const TestFilesHeader: React.FC<{
7171
filteredStats?: FilteredStats,
7272
metadataVisible: boolean,
7373
toggleMetadataVisible: () => void,
74-
}> = ({ report, filteredStats, metadataVisible, toggleMetadataVisible }) => {
74+
errorsVisible: boolean,
75+
setErrorsVisible: (visible: boolean) => void,
76+
}> = ({ report, filteredStats, metadataVisible, toggleMetadataVisible, errorsVisible, setErrorsVisible }) => {
7577
if (!report)
7678
return null;
7779

@@ -99,8 +101,8 @@ export const TestFilesHeader: React.FC<{
99101
<HeaderView title={report.options.title} leftSuperHeader={leftSuperHeader} rightSuperHeader={rightSuperHeader} />
100102
{!isMetadataInTopLine && metadataToggleButton}
101103
{metadataVisible && <MetadataView metadata={report.metadata}/>}
102-
{!!report.errors.length && <AutoChip header='Errors' dataTestId='report-errors'>
104+
{!!report.errors.length && <Chip header='Errors' dataTestId='report-errors' expanded={errorsVisible} setExpanded={setErrorsVisible}>
103105
{report.errors.map((error, index) => <CodeSnippet key={'test-report-error-message-' + index} code={error}/>)}
104-
</AutoChip>}
106+
</Chip>}
105107
</>;
106108
};

0 commit comments

Comments
 (0)