-
Notifications
You must be signed in to change notification settings - Fork 394
/
setupJest.env.ts
30 lines (27 loc) · 752 Bytes
/
setupJest.env.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/* Reset IndexedDB between tests */
beforeEach(() => {
global.indexedDB = new IDBFactory()
})
/* Reset IndexedDB between tests */
afterEach(() => {
global.indexedDB = new IDBFactory()
})
it.flaky = function checkFlaky(label: string, testCase: () => unknown): void {
// eslint-disable-next-line no-only-tests/no-only-tests
it.only(label, () => {
const results = []
for (let i = 0; i < 2000; i += 1) {
results.push(testCase())
}
return Promise.all(results)
})
}
// eslint-disable-next-line @typescript-eslint/no-namespace, @typescript-eslint/no-unused-vars
declare namespace jest {
interface It {
/**
* Used for debugging flaky tests
*/
flaky: (label: string, testCase: () => unknown) => void
}
}