fix(catalog-search): clear stale query filter

This commit is contained in:
Tommaso Casaburi
2026-04-01 19:05:58 +07:00
parent 99c0bbfac5
commit 4fb7739991
2 changed files with 23 additions and 1 deletions
@@ -121,6 +121,25 @@ describe('CatalogSearch', () => {
expect(queryInput()?.getAttribute('value')).toBe('linux');
});
it('clears the catalog search filter when navigation removes the query param', async () => {
testState.location = {
pathname: '/mu/catalog',
search: '?q=linux',
};
await renderSearch();
testState.location = {
pathname: '/mu/catalog',
search: '',
};
await renderSearch();
expect(testState.clearSearchFilterMock).toHaveBeenCalled();
expect(queryInput()).toBeNull();
});
it('toggles the search UI, updates the filter and URL, and closes via Escape', async () => {
await renderSearch();
@@ -19,8 +19,11 @@ const CatalogSearch = () => {
useEffect(() => {
if (queryParam) {
setSearchFilter(queryParam);
return;
}
}, [queryParam, setSearchFilter]);
clearSearchFilter();
}, [queryParam, setSearchFilter, clearSearchFilter]);
const updateURL = useCallback(
(searchText: string) => {