Files
supabase/apps/studio/tests/vitestSetup.ts
T
Ivan Vasilov cb1e3a8170 chore: Prep work for pnpm (#29610)
* Add all missing libraries in the packages/apps.

* Add all missing Vitest imports to the tests.

* Add some missing exports to ui.

* Fix the admonition export.

* Fix various minor bugs.

* Migrate the ui package to use vitest.
2024-10-01 11:29:37 +02:00

36 lines
1.0 KiB
TypeScript

import { setupServer } from 'msw/node'
import { createDynamicRouteParser } from 'next-router-mock/dist/dynamic-routes'
import { afterAll, afterEach, beforeAll, vi } from 'vitest'
import { APIMock } from './mocks/api'
import { routerMock } from './mocks/router'
export const mswServer = setupServer(...APIMock)
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(),
})),
})
beforeAll(() => {
console.log('🤖 Starting MSW Server')
mswServer.listen({ onUnhandledRequest: 'error' })
vi.mock('next/router', () => require('next-router-mock'))
vi.mock('next/compat/router', () => require('next-router-mock'))
routerMock.useParser(createDynamicRouteParser(['/projects/[ref]']))
})
afterAll(() => mswServer.close())
afterEach(() => mswServer.resetHandlers())