MCPcopy
hub / github.com/vitest-dev/vitest / handler

Function handler

packages/vitest/src/node/plugins/runnerTransform.ts:18–76  ·  view source on GitHub ↗
(config)

Source from the content-addressed store, hash-verified

16 config: {
17 order: 'post',
18 handler(config) {
19 testConfig = config.test || {}
20
21 config.environments ??= {}
22
23 const names = new Set(Object.keys(config.environments))
24 names.add('client')
25 names.add('ssr')
26
27 const pool = config.test?.pool
28 if (pool === 'vmForks' || pool === 'vmThreads') {
29 names.add('__vitest_vm__')
30 }
31
32 let moduleDirectories = testConfig.deps?.moduleDirectories || []
33
34 const envModuleDirectories
35 = process.env.VITEST_MODULE_DIRECTORIES
36 || process.env.npm_config_VITEST_MODULE_DIRECTORIES
37
38 if (envModuleDirectories) {
39 moduleDirectories.push(...envModuleDirectories.split(','))
40 }
41
42 moduleDirectories = moduleDirectories.map(
43 (dir) => {
44 if (dir[0] !== '/') {
45 dir = `/${dir}`
46 }
47 if (!dir.endsWith('/')) {
48 dir += '/'
49 }
50 return normalize(dir)
51 },
52 )
53 if (!moduleDirectories.includes('/node_modules/')) {
54 moduleDirectories.push('/node_modules/')
55 }
56
57 testConfig.deps ??= {}
58 testConfig.deps.moduleDirectories = moduleDirectories
59
60 for (const name of names) {
61 config.environments[name] ??= {}
62
63 const environment = config.environments[name]
64 environment.dev ??= {}
65 // vm tests run using the native import mechanism
66 if (name === '__vitest_vm__') {
67 environment.dev.moduleRunnerTransform = false
68 environment.consumer = 'client'
69 }
70 else {
71 environment.dev.moduleRunnerTransform = true
72 }
73 environment.dev.preTransformRequests = false
74 environment.keepProcessEnv = true
75 }

Callers

nothing calls this directly

Calls 5

resolveOptimizerConfigFunction · 0.90
normalizeFunction · 0.85
keysMethod · 0.80
addMethod · 0.45

Tested by

no test coverage detected