mirror of https://github.com/msgbyte/tailchat
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.2 KiB
JavaScript
81 lines
2.2 KiB
JavaScript
const regeneratorRuntime = require('regenerator-runtime');
|
|
const { pathsToModuleNameMapper } = require('ts-jest');
|
|
const webCompilerOptions = require('./tsconfig.test.json').compilerOptions;
|
|
|
|
// 用于处理编译出来是esmodule会抛出 SyntaxError: Unexpected token 'export' 问题的包
|
|
const esModules = [
|
|
'react-markdown',
|
|
'vfile',
|
|
'unist-util-stringify-position',
|
|
'unified',
|
|
'bail',
|
|
'is-plain-obj',
|
|
'trough',
|
|
'remark-parse',
|
|
'mdast-util-from-markdown',
|
|
'mdast-util-to-string',
|
|
'micromark',
|
|
'decode-named-character-reference',
|
|
'character-entities',
|
|
'remark-rehype',
|
|
'mdast-util-to-hast',
|
|
'unist-builder',
|
|
'unist-util-visit',
|
|
'unist-util-is',
|
|
'unist-util-position',
|
|
'unist-util-generated',
|
|
'mdast-util-definitions',
|
|
'trim-lines',
|
|
'property-information',
|
|
'hast-util-whitespace',
|
|
'space-separated-tokens',
|
|
'comma-separated-tokens',
|
|
'remark-gfm',
|
|
'mdast-util-gfm',
|
|
'mdast-util-gfm-autolink-literal',
|
|
'mdast-util-find-and-replace',
|
|
'mdast-util-to-markdown',
|
|
'markdown-table',
|
|
'escape-string-regexp',
|
|
'ccount',
|
|
'hast-util-raw',
|
|
'rehype-raw',
|
|
'hast-util-from-parse5',
|
|
'hast-util-to-parse5',
|
|
'hastscript',
|
|
'hast-util-parse-selector',
|
|
'web-namespaces',
|
|
'zwitch',
|
|
'html-void-elements',
|
|
].join('|');
|
|
|
|
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
|
|
module.exports = {
|
|
preset: 'ts-jest',
|
|
testEnvironment: 'jsdom',
|
|
moduleNameMapper: {
|
|
'\\.(css|less|scss)$': 'identity-obj-proxy',
|
|
...pathsToModuleNameMapper(webCompilerOptions.paths, {
|
|
prefix: '<rootDir>/',
|
|
}),
|
|
},
|
|
// projects: ['<rootDir>/web/'], // https://jestjs.io/docs/configuration#projects-arraystring--projectconfig
|
|
rootDir: '.',
|
|
testRegex: '.*\\.(test|spec)\\.tsx?$',
|
|
testPathIgnorePatterns: ['/node_modules/', '/e2e/'],
|
|
transform: {
|
|
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
|
|
'<rootDir>/test/fileTransformer.js',
|
|
[`(${esModules}).+\\.(j|t)sx?$`]: 'ts-jest',
|
|
},
|
|
transformIgnorePatterns: [`/node_modules/\.pnpm/(?!(${esModules}))`],
|
|
setupFiles: ['<rootDir>/test/setup.js'],
|
|
setupFilesAfterEnv: [],
|
|
globals: {
|
|
window: {},
|
|
'ts-jest': {
|
|
tsconfig: 'tsconfig.test.json',
|
|
},
|
|
},
|
|
};
|