Jest не видит модули, константы подключённые через алиасы(aliases)
Проект развёрнут с помощью vue cli. В файле с тестами я подключаю модули используя алиасы(aliases). Алиасы прописал в vue.config.js и tsconfig.json. В проекте везде работают, кроме файлов с тестами. В чём может быть проблема?
Ответы (1 шт):
Автор решения: doox911
→ Ссылка
У Jest есть собственный конфигурационный файл - jest.config.js. Для того, чтобы Jest видел ваши алиасы их необходимо прописать в конфиге в свойство moduleNameMapper.
Пример:
module.exports = {
preset: '@vue/cli-plugin-unit-jest/presets/typescript-and-babel',
setupFiles: ['./tests/setup.js'],
'moduleNameMapper': {
'^Api(.*)': '<rootDir>/src/api/$1',
'^Components(.*)': '<rootDir>/src/components/$1',
'^Constants(.*)': '<rootDir>/src/constants/$1',
'^UserComponents(.*)': '<rootDir>/src/components/auth/user/$1',
'^Exception(.*)': '<rootDir>/src/exceptions/$1',
'^Helpers(.*)': '<rootDir>/src/helpers/$1',
'^Mixins(.*)': '<rootDir>/src/mixins/$1',
'^Plugins(.*)': '<rootDir>/src/plugins/$1',
'^Router(.*)': '<rootDir>/src/router/$1',
'^Rules(.*)': '<rootDir>/src/rules/$1',
'^Store(.*)': '<rootDir>/src/store/$1',
'^Types(.*)': '<rootDir>/src/types/$1',
'^Views(.*)': '<rootDir>/src/views/$1',
}
};