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(), removeListener: vi.fn(), addEventListener: vi.fn(), removeEventListener: vi.fn(), dispatchEvent: vi.fn(), })), }); // Mock ResizeObserver - 需要调用callback以便Select组件正常工作 global.ResizeObserver = class ResizeObserver { cb: any; constructor(cb: any) { this.cb = cb; } observe() { this.cb([{ borderBoxSize: { inlineSize: 0, blockSize: 0 } }]); } unobserve() {} disconnect() {} }; // Mock Element.scrollIntoView 避免shadcn/ui Select组件错误 Element.prototype.scrollIntoView = vi.fn();