aboutsummaryrefslogtreecommitdiffstats
path: root/config/jest.config.base.js
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2021-12-31 01:52:28 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2021-12-31 01:56:30 +0100
commit7108c642f4ff6dc5f0c4d30b8a8960064ff8e90f (patch)
treef8c0450a6e1b62f7e7f8470efd375b3659b91b2b /config/jest.config.base.js
parentrefactor: Install devtools extensions earlier (diff)
downloadsophie-7108c642f4ff6dc5f0c4d30b8a8960064ff8e90f.tar.gz
sophie-7108c642f4ff6dc5f0c4d30b8a8960064ff8e90f.tar.zst
sophie-7108c642f4ff6dc5f0c4d30b8a8960064ff8e90f.zip
test: Add tests for main package
- Changed jest to run from the root package and reference the packages as projects. This required moving the base jest config file away from the project root. - Module isolation seems to prevent ts-jest from loading the shared package, so we disabled it for now. - To better facilitate mocking, services should be split into interfaces and implementation - Had to downgrade to chald 4.1.2 as per https://github.com/chalk/chalk/releases/tag/v5.0.0 at least until https://github.com/microsoft/TypeScript/issues/46452 is resolved.
Diffstat (limited to 'config/jest.config.base.js')
-rw-r--r--config/jest.config.base.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/config/jest.config.base.js b/config/jest.config.base.js
new file mode 100644
index 0000000..f265c1c
--- /dev/null
+++ b/config/jest.config.base.js
@@ -0,0 +1,26 @@
1import { join } from 'path';
2
3import { fileURLToDirname } from './utils.js';
4
5const dirname = fileURLToDirname(import.meta.url);
6
7/** @type {import('ts-jest').InitialOptionsTsJest} */
8export default {
9 preset: 'ts-jest/presets/default-esm',
10 globals: {
11 'ts-jest': {
12 useESM: true,
13 },
14 },
15 moduleNameMapper: {
16 '@sophie/(.+)': join(dirname, '../packages/$1/src/index.ts'),
17 '^(\\.{1,2}/.*)\\.js$': '$1',
18 },
19 resetMocks: true,
20 restoreMocks: true,
21 testEnvironment: 'node',
22 testPathIgnorePatterns: [
23 '/dist/',
24 '/node_modules/',
25 ],
26};