Typescript – isolatedModules error on Jest test with Create React App and TypeScript

create-react-appjestjstypescript

I've started a Create React App project with –typescript. When I write a test Im getting a compiler error:

// something-test.tsx
test('something', ()=>{
  expect(1).toBe(1)
})

The error is:

TS1208: All files must be modules when the '–isolatedModules' flag is provided.

From googling I thought the fix was to create a jest.config.tsx with:

module.exports = {
  roots: ["<rootDir>/src"],
  transform: {
    "^.+\\.tsx?$": "ts-jest"
  },
  testRegex: "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$",
  moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"]
};

However it's made no difference.

Best Answer

You do not have any import statements in your code. This basically means you are not testing anything outside of the test file.

If you test something that is not in the test code (and therefore import something), the test file will become a module and the error will go away 🌹

Related Topic