testing-library / jest-dom

:owl: Custom jest matchers to test the state of the DOM

Home Page:https://testing-library.com/docs/ecosystem-jest-dom

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Vitest Error: Missing "./extend-expect" specifier in "@testing-library/jest-dom" package

bradleyball opened this issue · comments

I am trying to migrate from Jest to Vitest. I'm running into issues with the latest versions of required packages.

Package Versions:

"@testing-library/jest-dom": "^6.1.3",
"@testing-library/react": "^14.0.0",
"vitest": "^0.34.6",

What I tried in the setup file

import '@testing-library/jest-dom/vitest'

and also tried

import * as matchers from '@testing-library/jest-dom/matchers'
import { afterEach, beforeEach, expect, vi } from 'vitest'

declare module 'vitest' {
  interface Assertion<T = any>
    extends jest.Matchers<void, T>,
      matchers.TestingLibraryMatchers<T, void> {}
}

expect.extend(matchers)

What I tried in the setup file

vite.config file

  test: {
    globals: true,
    environment: 'jsdom',
    setupFiles: './src/vitestSetup.ts',
  },

Error stack:

Error: Missing "./extend-expect" specifier in "@testing-library/jest-dom" package
 ❯ e node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:21445:25
 ❯ n node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:21445:627
 ❯ o node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:21445:1297
 ❯ resolveExportsOrImports node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:28741:20
 ❯ resolveDeepImport node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:28760:31
 ❯ tryNodeResolve node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:28448:20
 ❯ Context.resolveId node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:28207:28
 ❯ Object.resolveId node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:44269:32
 ❯ TransformContext.resolve node_modules/vitest/node_modules/vite/dist/node/chunks/dep-2b82a1ce.js:43985:23

Similar issue as here: #439 (comment)

It's just saying Cannot import '@testing-library/jest-dom/extend-expect'.
For me, removing all import '@testing-library/jest-dom/extend-expect' solved the problem.

@grainrigi Thanks! I had that import statement in my testing library untils. That fixed my problem.