Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
45 lines
1.3 KiB
TypeScript
45 lines
1.3 KiB
TypeScript
import { defineConfig, coverageConfigDefaults } from 'vitest/config';
|
|
import * as path from 'path';
|
|
|
|
const MONOREPO_ROOT = path.resolve(__dirname, '.');
|
|
|
|
const BROWSER_TESTS = ['{docs,packages{-internal,}/*}/vitest.config.browser.mts'];
|
|
const NODE_TESTS = ['{docs,packages{-internal,}/*}/vitest.config.mts'];
|
|
|
|
function getProjects() {
|
|
if (process.env.TEST_SCOPE === 'browser') {
|
|
return BROWSER_TESTS;
|
|
}
|
|
if (process.env.TEST_SCOPE === 'node') {
|
|
return NODE_TESTS;
|
|
}
|
|
return [...BROWSER_TESTS, ...NODE_TESTS];
|
|
}
|
|
|
|
/**
|
|
* See https://vitest.dev/guide/workspace.html
|
|
* > The root configuration will only influence global options such as reporters and coverage.
|
|
*/
|
|
export default defineConfig({
|
|
test: {
|
|
projects: getProjects(),
|
|
sequence: {
|
|
hooks: 'list',
|
|
},
|
|
coverage: {
|
|
provider: 'v8',
|
|
reporter: process.env.CI ? ['lcovonly'] : ['text'],
|
|
reportsDirectory: path.resolve(MONOREPO_ROOT, 'coverage'),
|
|
include: ['packages/*/src/**/*.{mts,ts,tsx,mjs,js,jsx}'],
|
|
exclude: [
|
|
'**/*.d.ts',
|
|
'**/__fixtures__/**',
|
|
'packages/mui-icons-material/src/**',
|
|
'packages/mui-codemod/src/**/{test-cases,*.test}/**',
|
|
'**/{postcss,vitest}.config.*',
|
|
...coverageConfigDefaults.exclude,
|
|
],
|
|
},
|
|
},
|
|
});
|