From 37b46547c75e40b4146b3921b4874d6b350d5bcb Mon Sep 17 00:00:00 2001 From: Stephan Kulla Date: Thu, 30 Nov 2023 23:11:15 +0100 Subject: [PATCH 1/2] test: Hardcode moduleNameMapper (it's easier to understand) --- jest.config.cjs | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/jest.config.cjs b/jest.config.cjs index 0212925e6..b69203ff6 100644 --- a/jest.config.cjs +++ b/jest.config.cjs @@ -1,15 +1,7 @@ -/* eslint-disable @typescript-eslint/no-var-requires,import/no-commonjs */ -const { pathsToModuleNameMapper } = require('ts-jest') - -// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,import/extensions -const { compilerOptions } = require('./tsconfig.json') - module.exports = { modulePaths: ['/packages'], - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access moduleNameMapper: { - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-argument - ...pathsToModuleNameMapper(compilerOptions.paths), + '^~/(.*)$': 'server/src/$1', '@serlo/api': '@serlo/api/src', '@serlo/authorization': '@serlo/authorization/src', }, From a392a4b9a3a633fad43be4dd68b93f4a1bb7008c Mon Sep 17 00:00:00 2001 From: Stephan Kulla Date: Thu, 30 Nov 2023 23:13:54 +0100 Subject: [PATCH 2/2] test(jest): Reuse jest config in pacts config --- ....config-pacts-serlo-org-database-layer.cjs | 24 +++---------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/jest.config-pacts-serlo-org-database-layer.cjs b/jest.config-pacts-serlo-org-database-layer.cjs index 7bf1a1a86..863ac61f0 100644 --- a/jest.config-pacts-serlo-org-database-layer.cjs +++ b/jest.config-pacts-serlo-org-database-layer.cjs @@ -1,29 +1,11 @@ -/* eslint-disable @typescript-eslint/no-var-requires,import/no-commonjs */ -// eslint-disable-next-line import/no-extraneous-dependencies -const { pathsToModuleNameMapper } = require('ts-jest') - -// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,import/extensions -const { compilerOptions } = require('./tsconfig.json') +// eslint-disable-next-line import/no-commonjs +const defaultConfig = require('./jest.config.cjs') module.exports = { - modulePaths: ['/packages'], - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access - moduleNameMapper: { - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-argument - ...pathsToModuleNameMapper(compilerOptions.paths), - '@serlo/api': '@serlo/api/src', - '@serlo/authorization': '@serlo/authorization/src', - }, - setupFiles: ['dotenv/config'], + ...defaultConfig, setupFilesAfterEnv: [ '/__config__/jest.setup-pacts-serlo-org-database-layer.ts', ], - testEnvironment: 'node', testRegex: '/__tests-pacts__/index\\.ts', - transform: { - '^.+\\.tsx?$': ['ts-jest', { useESM: true, isolatedModules: true }], - '^.+\\.graphql$': './transform-graphql-jest-28-shim.cjs', - }, - extensionsToTreatAsEsm: ['.ts', '.tsx', '.mts'], watchPathIgnorePatterns: ['/pacts/'], }