diff --git a/frontend/src/__tests__/setup.ts b/frontend/src/__tests__/setup.ts index 1692a91..d5156b0 100644 --- a/frontend/src/__tests__/setup.ts +++ b/frontend/src/__tests__/setup.ts @@ -1,5 +1,22 @@ import '@testing-library/jest-dom/vitest'; +// Polyfill matchMedia for jsdom (used by useIsMobile hook) +if (typeof window.matchMedia === 'undefined') { + Object.defineProperty(window, 'matchMedia', { + writable: true, + value: vi.fn().mockImplementation((query: string) => ({ + matches: false, + media: query, + onchange: null, + addListener: vi.fn(), + removeListener: vi.fn(), + addEventListener: vi.fn(), + removeEventListener: vi.fn(), + dispatchEvent: vi.fn(), + })), + }); +} + // Polyfill ResizeObserver for jsdom (used by Radix UI components) if (typeof globalThis.ResizeObserver === 'undefined') { globalThis.ResizeObserver = class ResizeObserver { diff --git a/frontend/src/components/__tests__/Header.test.tsx b/frontend/src/components/__tests__/Header.test.tsx index 3174862..c945d2d 100644 --- a/frontend/src/components/__tests__/Header.test.tsx +++ b/frontend/src/components/__tests__/Header.test.tsx @@ -60,30 +60,8 @@ describe('Header', () => { expect(container.querySelector('.animate-spin')).toBeInTheDocument(); }); - it('shows active filter count badge', () => { - render( -
, - ); - expect(screen.getByText('5')).toBeInTheDocument(); - }); - it('renders brand name', () => { render(
); expect(screen.getByText('Wrongmove')).toBeInTheDocument(); }); - - it('shows mobile filter toggle when enabled', () => { - const onToggle = vi.fn(); - const { container } = render( -
, - ); - // The filter toggle button has sm:hidden class - const filterButton = container.querySelector('.sm\\:hidden'); - expect(filterButton).toBeInTheDocument(); - }); });