Я тестирую свое js приложение с jest . В моем пакете. json Я сопоставляю все модули, как описано в документации :
"jest": {
"moduleNameMapper": {
"@db/(.*)": "<rootDir>/db/$1",
"@src/(.*)": "<rootDir>/src/$1",
"@dto/(.*)": "<rootDir>/src/dto/$1",
"@repos/(.*)": "<rootDir>/src/repos/$1",
"@fetchers/(.*)": "<rootDir>/src/fetchers/$1",
"@controllers/(.*)": "<rootDir>/src/controllers/$1",
"@parsers/(.*)": "<rootDir>/src/parsers/$1",
"@streams/(.*)": "<rootDir>/src/streams/$1",
"@validators/(.*)": "<rootDir>/src/validators/$1"
}
},
Однако, когда я создаю экземпляр RestRepo, который содержит импорт вверху, я получаю эта ошибка при выполнении теста:
Cannot find module '@db' from 'RestRepo.js'
Require stack:
src/repos/RestRepo.js
tests/unit/RestEndpoint.test.js
> 1 | const { RestEndpoint } = require('@db');
| ^
2 |
3 | class RestRepo {
Как я могу это исправить и почему это происходит?