Jest в Monorepo не работает, если работает из определенного пакета - PullRequest
1 голос
/ 07 мая 2019

У меня есть monorepo, и я пытаюсь использовать jest для запуска тестов.Это то, что у меня есть

/
   packages/
       package1/
           jest.config.js
   jest.config.base.js
   jest.config.js

, любые мои файлы конфигурации

// jest.config.base.js
module.exports = {
  collectCoverage: true,
  setupFiles: ['<rootDir>/jest.setup.js'],
  preset: 'ts-jest',
  testEnvironment: 'jsdom',
  collectCoverageFrom: [
    '<rootDir>/packages/**/*.ts'
  ],
  testMatch: [
    '<rootDir>/packages/**/__tests__/**/*.test.ts'
  ],
  transform: {
    '^.+\\.js?$': '<rootDir>/node_modules/babel-jest'
  },
  testPathIgnorePatterns: [
    '/node_modules/',
  ],
  coveragePathIgnorePatterns: [
    '/node_modules/',
  ]
};

// jest.config.js (root dir)
const base = require('./jest.config.base');

module.exports = {
  ...base,
  projects: [
    '<rootDir>/packages/*/jest.config.js'
  ]
};

// jest.config.js (of a package)
const base = require('./../../jest.config.base');

module.exports = {
  ...base,
  rootDir: '../..',
};

Запуск npm run test из корневого каталога работает, но если я запускаю npm run test из одного из пакетов,Я получаю

 ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import '@babel/polyfill';
                                                                                                ^^^^^^^^^^^^^^^^^

  SyntaxError: Unexpected string

  at ScriptTransformer._transformAndBuildScript (packages/package1/node_modules/@jest/transform/build/ScriptTransformer.js:471:17)
  at ScriptTransformer.transform (packages/package1/node_modules/@jest/transform/build/ScriptTransformer.js:513:25)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...