jest-preset.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. // Jest预设配置,供其他mini UI包复用
  2. module.exports = {
  3. preset: 'ts-jest',
  4. testEnvironment: 'jsdom',
  5. setupFilesAfterEnv: ['<rootDir>/tests/setup.ts'],
  6. moduleNameMapper: {
  7. '^@/(.*)$': '<rootDir>/src/$1',
  8. '^~/(.*)$': '<rootDir>/tests/$1',
  9. '^@tarojs/taro$': '<rootDir>/tests/__mocks__/taroMock.ts',
  10. '\\.(css|less|scss|sass)$': '<rootDir>/tests/__mocks__/styleMock.js',
  11. '\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
  12. '<rootDir>/tests/__mocks__/fileMock.js'
  13. },
  14. testMatch: [
  15. '<rootDir>/tests/**/*.spec.{ts,tsx}',
  16. '<rootDir>/tests/**/*.test.{ts,tsx}'
  17. ],
  18. collectCoverageFrom: [
  19. 'src/**/*.{ts,tsx}',
  20. '!src/**/*.d.ts',
  21. '!src/**/index.{ts,tsx}',
  22. '!src/**/*.stories.{ts,tsx}'
  23. ],
  24. coverageDirectory: 'coverage',
  25. coverageReporters: ['text', 'lcov', 'html'],
  26. testPathIgnorePatterns: [
  27. '/node_modules/',
  28. '/dist/',
  29. '/coverage/'
  30. ],
  31. transform: {
  32. '^.+\\.(ts|tsx)$': 'ts-jest',
  33. '^.+\\.(js|jsx)$': 'babel-jest'
  34. },
  35. transformIgnorePatterns: [
  36. '/node_modules/(?!(swiper|@tarojs)/)'
  37. ],
  38. moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json']
  39. }