27 lines
888 B
JavaScript
27 lines
888 B
JavaScript
import { vi } from 'vitest'
|
|
import '@testing-library/jest-dom/vitest'
|
|
import { IDBFactory, IDBKeyRange } from 'fake-indexeddb'
|
|
import { ResizeObserver } from 'd2l-resize-aware/resize-observer-module.js'
|
|
import { deleteDatabase } from '../src/database/databaseLifecycle'
|
|
import fetchMock from 'fetch-mock'
|
|
|
|
beforeAll(() => {
|
|
globalThis.ResizeObserver = ResizeObserver
|
|
globalThis.IDBKeyRange = IDBKeyRange
|
|
globalThis.indexedDB = new IDBFactory()
|
|
|
|
vi.spyOn(globalThis.console, 'log').mockImplementation(() => undefined)
|
|
vi.spyOn(globalThis.console, 'warn').mockImplementation(() => undefined)
|
|
})
|
|
|
|
beforeEach(() => {
|
|
globalThis.fetch = fetchMock.sandbox()
|
|
globalThis.Response = fetch.Response
|
|
})
|
|
|
|
afterEach(async () => {
|
|
// fresh indexedDB for every test
|
|
const dbs = await globalThis.indexedDB.databases()
|
|
await Promise.all(dbs.map(({ name }) => deleteDatabase(name)))
|
|
})
|