Back to home page

EIC code displayed by LXR

 
 

    


Warning, /firebird/packages/firebird-ng/src/test-setup.ts is written in an unsupported language. File is not indexed.

0001 // Test setup for Vitest
0002 
0003 // Mock window.matchMedia for components that use it
0004 Object.defineProperty(window, 'matchMedia', {
0005   writable: true,
0006   value: (query: string) => ({
0007     matches: false,
0008     media: query,
0009     onchange: null,
0010     addListener: () => {},
0011     removeListener: () => {},
0012     addEventListener: () => {},
0013     removeEventListener: () => {},
0014     dispatchEvent: () => false,
0015   }),
0016 });
0017 
0018 // Mock ResizeObserver if needed
0019 if (typeof ResizeObserver === 'undefined') {
0020   (globalThis as any).ResizeObserver = class ResizeObserver {
0021     observe() {}
0022     unobserve() {}
0023     disconnect() {}
0024   };
0025 }
0026 
0027 // The test jsdom does not wire localStorage; ConfigProperty persists through it.
0028 if (typeof (globalThis as any).localStorage === 'undefined') {
0029   const store = new Map<string, string>();
0030   const localStoragePolyfill = {
0031     getItem: (key: string) => store.get(key) ?? null,
0032     setItem: (key: string, value: string) => { store.set(key, String(value)); },
0033     removeItem: (key: string) => { store.delete(key); },
0034     clear: () => store.clear(),
0035     key: (index: number) => [...store.keys()][index] ?? null,
0036     get length() { return store.size; },
0037   };
0038   Object.defineProperty(globalThis, 'localStorage', { value: localStoragePolyfill, writable: true });
0039   Object.defineProperty(window, 'localStorage', { value: localStoragePolyfill, writable: true });
0040 }