При попытки запуска тестов, jest ругается что не может найти файлы в которых пусть прописан через alias.
Пример:
import ROUTER_NAMES from "@/app/auth/core/router-const"
Выдает ошибку Cannot find module '@/app/auth/core/router-const' from 'middleware-auth.js'
В jest.config.js прописан moduleNameMapper и он работает для юнит тестов.
moduleNameMapper: {
"^@/(.*)$'": "<rootDir>/src/$1"
...
Но вот для интеграционных уже не срабатывает.
Где нужно указывать алиасы для jest-puppeteer?
// jest.config.js
const { defaults } = require(`jest-config`);
const puppeteerModes = [`acceptance`, `integration`];
const { TEST_MODE } = process.env;
const PUPPETEER_MODE = puppeteerModes.includes(TEST_MODE);
module.exports = {
preset: PUPPETEER_MODE ? `jest-puppeteer` : '@vue/cli-plugin-unit-jest',
setupFiles: [
PUPPETEER_MODE ? '<rootDir>/tests/unit/integration/setup.js' : "<rootDir>/tests/unit/setup.js"
],
setupFilesAfterEnv: [`<rootDir>/tests/unit/integration/after-env.js`],
testMatch: TEST_MODE === `integration` ? [
`**/?(*.)+(integration).[tj]s?(x)`,
] : defaults.testMatch,
testURL: `http://localhost:8080`,
testPathIgnorePatterns: [
"node_modules/(?!(vuetify)/)"
],
moduleNameMapper: {
"^@/(.*)$'": "<rootDir>/src/$1",
"^vuetify/lib$": "vuetify"
}
}