54727f9874
e.g. by replacing `__VUE_OPTIONS_API__` to `false` using webpack's `DefinePlugin`, the final bundle will drop all code supporting the options API. This does not break existing usage, but requires the user to explicitly configure the feature flags via bundlers to properly tree-shake the disabled branches. As a result, users will see a console warning if the flags have not been properly configured.
44 lines
1.4 KiB
JavaScript
44 lines
1.4 KiB
JavaScript
module.exports = {
|
|
preset: 'ts-jest',
|
|
globals: {
|
|
__DEV__: true,
|
|
__TEST__: true,
|
|
__VERSION__: require('./package.json').version,
|
|
__BROWSER__: false,
|
|
__GLOBAL__: false,
|
|
__ESM_BUNDLER__: true,
|
|
__ESM_BROWSER__: false,
|
|
__NODE_JS__: true,
|
|
__FEATURE_OPTIONS_API__: true,
|
|
__FEATURE_SUSPENSE__: true
|
|
},
|
|
coverageDirectory: 'coverage',
|
|
coverageReporters: ['html', 'lcov', 'text'],
|
|
collectCoverageFrom: [
|
|
'packages/*/src/**/*.ts',
|
|
'!packages/runtime-test/src/utils/**',
|
|
'!packages/template-explorer/**',
|
|
'!packages/size-check/**',
|
|
'!packages/runtime-core/src/profiling.ts',
|
|
// DOM transitions are tested via e2e so no coverage is collected
|
|
'!packages/runtime-dom/src/components/Transition*',
|
|
// only called in browsers
|
|
'!packages/vue/src/devCheck.ts',
|
|
// only used as a build entry
|
|
'!packages/vue/src/runtime.ts'
|
|
],
|
|
watchPathIgnorePatterns: ['/node_modules/', '/dist/', '/.git/'],
|
|
moduleFileExtensions: ['ts', 'tsx', 'js', 'json'],
|
|
moduleNameMapper: {
|
|
'^@vue/(.*?)$': '<rootDir>/packages/$1/src',
|
|
vue: '<rootDir>/packages/vue/src'
|
|
},
|
|
rootDir: __dirname,
|
|
testMatch: ['<rootDir>/packages/**/__tests__/**/*spec.[jt]s?(x)'],
|
|
testPathIgnorePatterns: process.env.SKIP_E2E
|
|
? // ignore example tests on netlify builds since they don't contribute
|
|
// to coverage and can cause netlify builds to fail
|
|
['/node_modules/', '/examples/__tests__']
|
|
: ['/node_modules/']
|
|
}
|