TypeError: Jest: a transform must export a `process` function

user2031428 picture user2031428 · Jul 13, 2021 · Viewed 24.3k times · Source

Recently upgrading my app to Angular 11. Jest has been set up as the default testing framework. Running npm test results in the following error:

● Test suite failed to run

    TypeError: Jest: a transform must export a `process` function.

      20 | @Component({
      21 |     selector: 'app-bx-input-textbox',
    > 22 |     template: require('./bx-input-textbox.component.html'),
         |               ^
      23 |     styles: [String(require('./bx-input-textbox.component.scss'))],
      24 |     providers: [
      25 |         {

      at ScriptTransformer._getTransformer (node_modules/@jest/transform/build/ScriptTransformer.js:357:15)
      at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:419:28)
      at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:523:40)
      at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:579:25)
      at src/app/core/components/bx-input-textbox/bx-input-textbox.component.ts:22:15
      at Object.<anonymous> (src/app/core/components/bx-input-textbox/bx-input-textbox.component.ts:38:1)

// jest.config.js

module.exports = {
  testEnvironment: "jsdom",
  transform: {
    ".+\\.(css|styl|less|sass|scss)$": "<rootDir>/node_modules/jest-css-modules-transform",
    "\\.(ts|js)$": ['ts-jest']
  },
  setupFilesAfterEnv: ['./jest.setup.js'],
  globals: {    
    "ts-jest": {
      tsConfig: {
        // allow js in typescript
        allowJs: true,
      },
    },
  },
  // If you need to test a specifc file just include it here
  //testMatch: ['**/repository.jobs.spec.ts'],
  testMatch: []
};

Package versions "@angular-builders/jest": "12.1.0", "@types/jest": "24.9.1", "ts-jest": "26.0.0", "jest": "24.9.0",

I have tried different configurations with the jest.config.js file but not able to resolve this error. Any pointers to resolve this issue would be helpful.

Answer

user2031428 picture user2031428 · Jul 13, 2021

Upgraded jest and ts-jest to v27 to fix this issue