import '@testing-library/jest-dom/vitest' const storage = (() => { const store = new Map() return { getItem: (key: string) => store.get(key) ?? null, setItem: (key: string, value: string) => { store.set(key, value) }, removeItem: (key: string) => { store.delete(key) }, clear: () => { store.clear() }, key: (index: number) => Array.from(store.keys())[index] ?? null, get length() { return store.size }, } })() Object.defineProperty(window, 'localStorage', { value: storage, configurable: true, }) Object.defineProperty(window, 'matchMedia', { configurable: true, value: (query: string) => ({ matches: false, media: query, onchange: null, addEventListener: () => undefined, removeEventListener: () => undefined, addListener: () => undefined, removeListener: () => undefined, dispatchEvent: () => false, }), })