Как работает moduleNameMapper для насмешки над модулем npm? - PullRequest
1 голос
/ 04 марта 2020

Я использую Jest для тестирования, и тест не пройден из-за проблем с синтаксическим анализом в пакете npm, который я использую, поскольку он не является простым JavaScript. Тем не менее, они говорят в ошибке, что я могу использовать moduleNameMapper. Я не понимаю документацию о том, как это работает. Может кто-нибудь сказать мне, как настроить таргетинг на мой npm модуль?

Допустим, у меня есть несколько импортов в мой npm mobule

import 'my-module/something-A';
import 'my-module/something-A/somethingB';
import 'my-module/something-A/somethingB/somethingC';

Я думаю, что лучше всего добавить все из этих трех внутри регулярного выражения:

// package.json
{
  ...
  {
    "moduleNameMapper": {
      "^my-module*$": "<rootDir>/my-stubbed-module-in-a-file.js"
     }
  }
}

У меня есть два вопроса по этому поводу:

1) Как нацелить все импорта дерева моего модуля в этой части пакета. json "^my-module*$"?

2) Что должно быть внутри файла "<rootDir>/my-stubbed-module-in-a-file.js"?

Восстановить в moduleNameMapper: https://jestjs.io/docs/en/configuration#modulenamemapper -objectstring-string

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...