Пути машинописного текста не разрешаются при запуске jest? - PullRequest
0 голосов
/ 17 октября 2018

Попытка преобразовать этот проект в шутку, используя эти инструкции .У меня все работает, кроме файлов, которые используют конфигурацию paths:

"paths": {
      "@fs/*": ["./src/*"], 
      "@test/*": ["./test/*"]
    }

Похоже, что при выполнении тестов операторы импорта не разрешаются, и это записывается в журнал:

Cannot find module '@fs/container/validation/ValidationContext' from 'Core.spec.ts'

  1 | import { ValidationOptions } from "@fs/container/validation/ValidationOptions";
> 2 | import { ValidationContext } from "@fs/container/validation/ValidationContext";
    | ^
  3 | import { ValidationContainer } from "@fs/container/validation/ValidationContainer";
  4 | 
  5 | import { Core1 } from "@test/core/Core1";

  at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:221:17)
  at Object.<anonymous> (test/core/Core.spec.ts:2:1)

Есть ли способ заставить jest / ts-jest включать @paths при разрешении импорта?

1 Ответ

0 голосов
/ 17 октября 2018

jest не может учитывать отображение пути tsconfig, так как это время компилятора ts, поэтому в конфигурации jest должен быть соответствующий модуль modulenamemapper (https://jestjs.io/docs/en/configuration.html#modulenamemapper-object-string-string) для разрешения псевдонимов.

...