Skip to content

Commit 7b87643

Browse files
committed
Add optional url query param for filtering regressed tests by component
1 parent 4560735 commit 7b87643

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

sippy-ng/src/component_readiness/RegressedTestsModal.js

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { Box, Button, Grid, Tab, Tabs, Typography } from '@mui/material'
22
import {
3+
ArrayParam,
34
NumberParam,
45
StringParam,
56
useQueryParam,
@@ -57,6 +58,11 @@ export default function RegressedTestsModal({
5758
NumberParam,
5859
{ updateType: 'replaceIn' }
5960
)
61+
const [componentFilter = [], setComponentFilter] = useQueryParam(
62+
'component',
63+
ArrayParam,
64+
{ updateType: 'replaceIn' }
65+
)
6066
const [, setQuery] = useQueryParams(
6167
{
6268
regressedModalRow: StringParam,
@@ -81,6 +87,14 @@ export default function RegressedTestsModal({
8187
)
8288
}
8389

90+
// Filter tests by component if component filter is specified
91+
const filterTestsByComponent = (tests) => {
92+
if (!componentFilter || componentFilter.length === 0) {
93+
return tests
94+
}
95+
return tests.filter((test) => componentFilter.includes(test.component))
96+
}
97+
8498
const triageEntriesExist = triageEntries.length > 0
8599

86100
return (
@@ -103,14 +117,14 @@ export default function RegressedTestsModal({
103117
</Tabs>
104118
<RegressedTestsTabPanel activeIndex={activeTab} index={0}>
105119
<RegressedTestsPanel
106-
regressedTests={unresolvedTests}
120+
regressedTests={filterTestsByComponent(unresolvedTests)}
107121
setTriageActionTaken={setTriageActionTaken}
108122
filterVals={filterVals}
109123
/>
110124
</RegressedTestsTabPanel>
111125
<RegressedTestsTabPanel activeIndex={activeTab} index={1}>
112126
<RegressedTestsPanel
113-
regressedTests={regressedTests}
127+
regressedTests={filterTestsByComponent(regressedTests)}
114128
setTriageActionTaken={setTriageActionTaken}
115129
filterVals={filterVals}
116130
/>
@@ -119,14 +133,14 @@ export default function RegressedTestsModal({
119133
<RegressedTestsTabPanel activeIndex={activeTab} index={2}>
120134
<TriagedTestsPanel
121135
triageEntries={triageEntries}
122-
allRegressedTests={allRegressedTests}
136+
allRegressedTests={filterTestsByComponent(allRegressedTests)}
123137
filterVals={filterVals}
124138
/>
125139
</RegressedTestsTabPanel>
126140
)}
127141
<RegressedTestsTabPanel activeIndex={activeTab} index={3}>
128142
<RegressedTestsPanel
129-
regressedTests={allRegressedTests}
143+
regressedTests={filterTestsByComponent(allRegressedTests)}
130144
setTriageActionTaken={setTriageActionTaken}
131145
filterVals={filterVals}
132146
/>

0 commit comments

Comments
 (0)