-
Notifications
You must be signed in to change notification settings - Fork 21
/
jest.config.ts
58 lines (47 loc) · 1.96 KB
/
jest.config.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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
* For a detailed explanation regarding each configuration property and type check, visit:
* https://jestjs.io/docs/en/configuration.html
*/
import type { Config } from '@jest/types'
import { Dates } from 'cafe-utility'
import { getPssAddress } from './test/utility/address'
import { getOrBuyStamp } from './test/utility/stamp'
export default async (): Promise<Config.InitialOptions> => {
process.env.MAX_UPLOAD_SIZE = '5000000' // 5 megabytes
/**
* SKIP_WORKER can be enabled when running a subset of the tests manually,
* which do not require any worker nodes, and therefore the stack
* only consists a single queen node as well
*/
if (!process.env.SKIP_WORKER) {
process.env.WORKER_PSS_ADDRESS = await getPssAddress('http://localhost:11633')
}
if (!process.env.TEST_STAMP) {
process.env.TEST_STAMP = await getOrBuyStamp()
}
return {
// Indicates whether the coverage information should be collected while executing the test
// collectCoverage: false,
// The directory where Jest should output its coverage files
coverageDirectory: 'coverage',
// An array of regexp pattern strings used to skip coverage collection
coveragePathIgnorePatterns: ['/node_modules/'],
// An array of directory names to be searched recursively up from the requiring module's location
moduleDirectories: ['node_modules'],
// Run tests from one or more projects
projects: [
{
preset: 'ts-jest',
displayName: 'node',
testEnvironment: 'node',
testRegex: 'test/.*\\.spec\\.ts',
},
] as unknown[] as string[], // bad types
// The root directory that Jest should scan for tests and modules within
rootDir: 'test',
// An array of regexp pattern strings that are matched against all test paths, matched tests are skipped
testPathIgnorePatterns: ['/node_modules/'],
// Increase timeout since we have long running cryptographic functions
testTimeout: Dates.minutes(5),
}
}