vitest.setup.ts 799 B

123456789101112131415161718192021222324252627282930
  1. /// <reference types="@testing-library/jest-dom" />
  2. import '@testing-library/jest-dom/vitest'
  3. import { cleanup } from '@testing-library/react'
  4. import { afterEach, vi } from 'vitest'
  5. Object.defineProperty(window, 'matchMedia', {
  6. writable: true,
  7. value: vi.fn().mockImplementation((query) => ({
  8. matches: false,
  9. media: query,
  10. onchange: null,
  11. addListener: vi.fn(), // deprecated
  12. removeListener: vi.fn(), // deprecated
  13. addEventListener: vi.fn(),
  14. removeEventListener: vi.fn(),
  15. dispatchEvent: vi.fn(),
  16. })),
  17. })
  18. vi.mock('next/navigation', () => require('next-router-mock/navigation'))
  19. // jsdom doesn't implement pointer capture methods
  20. Element.prototype.setPointerCapture = vi.fn()
  21. Element.prototype.releasePointerCapture = vi.fn()
  22. afterEach(() => {
  23. cleanup()
  24. })