@dereekb/vitest 13.6.9 → 13.6.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/config.d.ts +10 -0
- package/src/config.js +14 -5
- package/src/config.js.map +1 -1
package/package.json
CHANGED
package/src/config.d.ts
CHANGED
|
@@ -50,6 +50,16 @@ export interface DbxComponentsVitestPresetConfigOptions {
|
|
|
50
50
|
suiteName?: string;
|
|
51
51
|
outputFilePrefix?: string;
|
|
52
52
|
};
|
|
53
|
+
/**
|
|
54
|
+
* Name of the environment variable used to detect CI.
|
|
55
|
+
*
|
|
56
|
+
* When this env var is `'true'`, isolation defaults to the type-specific value
|
|
57
|
+
* (e.g. `false` for firebase) for performance. Outside CI, isolation defaults to `true`
|
|
58
|
+
* so that file changes are always picked up during development.
|
|
59
|
+
*
|
|
60
|
+
* Defaults to `'CI'`.
|
|
61
|
+
*/
|
|
62
|
+
readonly ciEnvVar?: string;
|
|
53
63
|
}
|
|
54
64
|
export declare function createVitestConfig(options: DbxComponentsVitestPresetConfigOptions): import("vitest/config").ViteUserConfigFnObject;
|
|
55
65
|
export {};
|
package/src/config.js
CHANGED
|
@@ -59,9 +59,16 @@ function resolveVitestSetupFile(name, rootDir, pathFromRoot) {
|
|
|
59
59
|
return result;
|
|
60
60
|
}
|
|
61
61
|
export function createVitestConfig(options) {
|
|
62
|
-
const { configureEnv, type, pathFromRoot, projectName, projectSpecificSetupFiles, modelPathIgnorePatterns, test: testConfig, junitConfig, requiresFirebaseEnvironment, printConsoleTrace } = options;
|
|
62
|
+
const { configureEnv, type, pathFromRoot, projectName, projectSpecificSetupFiles, modelPathIgnorePatterns, test: testConfig, junitConfig, requiresFirebaseEnvironment, printConsoleTrace, ciEnvVar = 'CI' } = options;
|
|
63
63
|
const rootDir = options.rootDir ?? process.cwd();
|
|
64
64
|
const pathToRoot = path.relative(pathFromRoot, rootDir);
|
|
65
|
+
/**
|
|
66
|
+
* Whether we're running in CI. Used to determine isolation and pool defaults.
|
|
67
|
+
*
|
|
68
|
+
* DBX_VITEST_ISOLATE explicitly overrides isolation regardless of CI detection.
|
|
69
|
+
* The ciEnvVar (default 'CI') is used to detect CI environments.
|
|
70
|
+
*/
|
|
71
|
+
const isCI = process.env[ciEnvVar] === 'true';
|
|
65
72
|
let environment = 'node';
|
|
66
73
|
let isolate = false;
|
|
67
74
|
let maxWorkers;
|
|
@@ -96,9 +103,8 @@ export function createVitestConfig(options) {
|
|
|
96
103
|
break;
|
|
97
104
|
}
|
|
98
105
|
if (usesFirebase) {
|
|
99
|
-
const isWatchMode = process.argv.includes('--watch');
|
|
100
106
|
const configuredMaxWorkers = testConfig?.maxWorkers;
|
|
101
|
-
const useMultipleWorkers =
|
|
107
|
+
const useMultipleWorkers = process.env['DBX_VITEST_MULTIPLE_WORKERS'] !== 'false' && configuredMaxWorkers != null && Number(configuredMaxWorkers) > 1;
|
|
102
108
|
if (useMultipleWorkers) {
|
|
103
109
|
/**
|
|
104
110
|
* Use forks pool so each worker gets its own process with isolated process.env.
|
|
@@ -166,11 +172,14 @@ export function createVitestConfig(options) {
|
|
|
166
172
|
setupFiles,
|
|
167
173
|
reporters,
|
|
168
174
|
/**
|
|
169
|
-
*
|
|
175
|
+
* It is important to isolate so that all file changes are properly processed/compiled during development.
|
|
176
|
+
*
|
|
177
|
+
* In CI, isolation is disabled for performance since modules don't change between runs.
|
|
178
|
+
* Use DBX_VITEST_ISOLATE env var to explicitly override.
|
|
170
179
|
*
|
|
171
180
|
* See: https://github.com/vitest-dev/vitest/issues/9499
|
|
172
181
|
*/
|
|
173
|
-
isolate: testConfig?.isolate ?? (process.
|
|
182
|
+
isolate: testConfig?.isolate ?? (process.env['DBX_VITEST_ISOLATE'] != null ? process.env['DBX_VITEST_ISOLATE'] === 'true' : isCI ? isolate : true),
|
|
174
183
|
coverage: {
|
|
175
184
|
reportsDirectory: `${pathToRoot}/coverage/${projectName}`,
|
|
176
185
|
provider: 'v8'
|
package/src/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../packages/vitest/src/config.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,OAAO,MAAM,+BAA+B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../packages/vitest/src/config.ts"],"names":[],"mappings":"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"}
|