При запуске теста такая ошибка: Module './Button' was resolved to 'ссылка на компонент' , but '--jsx' is not set
Проблема с import, при запуска теста поялвяютеся ошибки. Если тестировать обычный ts файл все в порядке.
import {Button} from "./Button.tsx";
import {render, screen} from "@testing-library/react";
describe('classNames', () => {
test('with only first params', () => {
render(<Button>TEST</Button>)
expect(screen.getByText('TEST')).toBeInTheDocument();
})
})
Error:
Test suite failed to run
src/shared/ui/Button/Button.test.tsx:1:22 - error TS6142: Module './Button.tsx' was resolved to 'C:/Users/uldar/WebstormProjects/barton_v2/src/shared/ui/Button/Button.tsx', but '--jsx' is not set.
1 import {Button} from "./Button.tsx";
~~~~~~~~~~~~~~
src/shared/ui/Button/Button.test.tsx:6:16 - error TS17004: Cannot use JSX unless the '--jsx' flag is provided.
6 render(<Button>TEST</Button>)
~~~~~~~~
src/shared/ui/Button/Button.test.tsx:7:42 - error TS2339: Property 'toBeInTheDocument' does not exist on type 'JestMatchers<HTMLElement>'.
7 expect(screen.getByText('TEST')).toBeInTheDocument();
Пробовал менять в jest.config.ts transformIgnorePatterns и transform. Ошибка не изменилась. Добавлял tsconfig.json esModuleInteror: true. Перезапускал IDE.
moduleFileExtensions: [
"js",
"mjs",
"cjs",
"jsx",
"ts",
"tsx",
"json",
"node"
],
preset: "ts-jest",
transform: {
'^.+\.tsx?$': 'ts-jest',
},
transformIgnorePatterns: [
"node_modules/(?!variables/.*)"
],
setupFilesAfterEnv:
['<rootDir>/setupTests.ts'],