-
Notifications
You must be signed in to change notification settings - Fork 3
/
jest.config.js
38 lines (36 loc) · 1.13 KB
/
jest.config.js
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
/* eslint sort-keys: ['error'] */
const transform = {
'\\.ts$': [ 'rollup-jest', { args: { configType: 'tests-internal', silent: true }, configFile: './rollup.config.mjs', useCache: false, format: 'esm' } ],
};
const moduleNameMapper = {
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga|sass|scss|css)$': '<rootDir>/tests/mocks/fileMock.js',
};
const moduleFileExtensions = [ 'ts', 'tsx', 'js', 'jsx', 'cjs', 'json', 'node' ];
export default {
projects: [
{
displayName: 'unit',
extensionsToTreatAsEsm: ['.ts'],
moduleFileExtensions,
moduleNameMapper,
setupFiles: ['./jest.setup.js'],
testEnvironment: 'jsdom',
testEnvironmentOptions: {
url: 'https://nebula.tv',
},
testMatch: ['<rootDir>/tests/unit/**/*.ts'],
transform,
},
{
displayName: 'integration',
extensionsToTreatAsEsm: ['.ts'],
moduleFileExtensions,
moduleNameMapper,
preset: 'jest-puppeteer',
testEnvironment: './jestEnv.js',
testMatch: ['<rootDir>/tests/integration/**/*.ts'],
testTimeout: 20,
transform,
},
],
};