| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import '@testing-library/jest-dom';
- import { vi } from 'vitest';
- // Mock window.matchMedia
- Object.defineProperty(window, 'matchMedia', {
- writable: true,
- value: vi.fn().mockImplementation(query => ({
- matches: false,
- media: query,
- onchange: null,
- addListener: vi.fn(), // deprecated
- removeListener: vi.fn(), // deprecated
- addEventListener: vi.fn(),
- removeEventListener: vi.fn(),
- dispatchEvent: vi.fn(),
- })),
- });
- // Mock ResizeObserver
- global.ResizeObserver = class MockResizeObserver {
- constructor(callback: ResizeObserverCallback) {
- // Store callback for testing
- (this as any).callback = callback;
- }
- observe = vi.fn();
- unobserve = vi.fn();
- disconnect = vi.fn();
- };
- // Mock IntersectionObserver
- global.IntersectionObserver = class MockIntersectionObserver {
- constructor(callback: IntersectionObserverCallback) {
- // Store callback for testing
- (this as any).callback = callback;
- }
- observe = vi.fn();
- unobserve = vi.fn();
- disconnect = vi.fn();
- root: Element | null = null;
- rootMargin: string = '';
- thresholds: ReadonlyArray<number> = [];
- takeRecords = vi.fn();
- };
|