diff --git a/jest.integ.config.js b/jest.integ.config.js index 8ebd56acd4..353824f5e8 100644 --- a/jest.integ.config.js +++ b/jest.integ.config.js @@ -6,10 +6,13 @@ const os = require('os'); module.exports = { verbose: true, testEnvironment: 'node', - globals: { - 'ts-jest': { - tsconfig: 'tsconfig.integ.json', - }, + transform: { + '^.+\\.tsx?$': [ + 'ts-jest', + { + tsconfig: 'tsconfig.integ.json', + }, + ], }, reporters: ['default', 'github-actions'], testTimeout: 60_000, // 1min @@ -19,5 +22,4 @@ module.exports = { setupFilesAfterEnv: [path.join(__dirname, 'build-tools', 'integ', 'setup.integ.js')], moduleFileExtensions: ['js', 'ts'], testRegex: '(/(__integ__|__a11y__)/.*(\\.|/)test)\\.[jt]sx?$', - preset: 'ts-jest', }; diff --git a/jest.motion.config.js b/jest.motion.config.js index 6bdfbc05d5..aefdc12342 100644 --- a/jest.motion.config.js +++ b/jest.motion.config.js @@ -1,23 +1,10 @@ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 const path = require('path'); -const os = require('os'); +const integConfig = require('./jest.integ.config'); module.exports = { - verbose: true, - testEnvironment: 'node', - globals: { - 'ts-jest': { - tsconfig: 'tsconfig.integ.json', - }, - }, - reporters: ['default', 'github-actions'], - testTimeout: 60_000, // 1min - maxWorkers: os.cpus().length * (process.env.GITHUB_ACTION ? 3 : 1), - globalSetup: '/build-tools/integ/global-setup.js', - globalTeardown: '/build-tools/integ/global-teardown.js', + ...integConfig, setupFilesAfterEnv: [path.join(__dirname, 'build-tools', 'integ', 'setup.motion.js')], - moduleFileExtensions: ['js', 'ts'], testRegex: '(/(__motion__)/.*(\\.|/)test)\\.[jt]sx?$', - preset: 'ts-jest', }; diff --git a/jest.unit.config.js b/jest.unit.config.js index 9aae43130f..9e1680f599 100644 --- a/jest.unit.config.js +++ b/jest.unit.config.js @@ -1,11 +1,10 @@ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 const path = require('path'); -const merge = require('lodash/merge'); -const tsPreset = require('ts-jest/jest-preset'); const cloudscapePreset = require('@cloudscape-design/jest-preset/jest-preset'); +const mergePresets = require('@cloudscape-design/jest-preset/merge'); -module.exports = merge({}, tsPreset, cloudscapePreset, { +module.exports = mergePresets(cloudscapePreset, { verbose: true, testEnvironment: 'jsdom', reporters: ['default', 'github-actions'], @@ -31,16 +30,17 @@ module.exports = merge({}, tsPreset, cloudscapePreset, { statements: 90, }, }, - globals: { - 'ts-jest': { - tsconfig: 'tsconfig.unit.json', - }, - }, transform: { '(?!node_modules).*/lib/(components|design-tokens)/.*\\.js$': require.resolve( '@cloudscape-design/jest-preset/js-transformer' ), '(?!node_modules).*/lib/components/.*\\.css$': require.resolve('@cloudscape-design/jest-preset/css-transformer'), + '^.+\\.tsx?$': [ + 'ts-jest', + { + tsconfig: 'tsconfig.unit.json', + }, + ], }, setupFilesAfterEnv: [path.join(__dirname, 'build-tools', 'jest', 'setup.js')], testRegex: '(/__tests__/.*(\\.|/)test)\\.[jt]sx?$',