jest.config.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /** @type {import('ts-jest').JestConfigWithTsJest} */
  2. module.exports = {
  3. preset: 'ts-jest',
  4. testEnvironment: 'node',
  5. moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
  6. transform: {
  7. '^.+\\.tsx?$': ['ts-jest', {
  8. tsconfig: {
  9. "module": "CommonJS",
  10. "moduleResolution": "node",
  11. "esModuleInterop": true,
  12. "allowJs": true
  13. }
  14. }]
  15. },
  16. testMatch: ['**/__tests__/**/*.test.ts'],
  17. moduleNameMapper: {
  18. '^vscode$': '<rootDir>/src/__mocks__/vscode.js',
  19. '@modelcontextprotocol/sdk$': '<rootDir>/src/__mocks__/@modelcontextprotocol/sdk/index.js',
  20. '@modelcontextprotocol/sdk/(.*)': '<rootDir>/src/__mocks__/@modelcontextprotocol/sdk/$1',
  21. '^delay$': '<rootDir>/src/__mocks__/delay.js',
  22. '^p-wait-for$': '<rootDir>/src/__mocks__/p-wait-for.js',
  23. '^globby$': '<rootDir>/src/__mocks__/globby.js',
  24. '^serialize-error$': '<rootDir>/src/__mocks__/serialize-error.js',
  25. '^strip-ansi$': '<rootDir>/src/__mocks__/strip-ansi.js',
  26. '^default-shell$': '<rootDir>/src/__mocks__/default-shell.js',
  27. '^os-name$': '<rootDir>/src/__mocks__/os-name.js'
  28. },
  29. transformIgnorePatterns: [
  30. 'node_modules/(?!(@modelcontextprotocol|delay|p-wait-for|globby|serialize-error|strip-ansi|default-shell|os-name)/)'
  31. ],
  32. modulePathIgnorePatterns: [
  33. '.vscode-test'
  34. ],
  35. setupFiles: [],
  36. globals: {
  37. 'ts-jest': {
  38. diagnostics: false,
  39. isolatedModules: true
  40. }
  41. }
  42. };