vitest 4.0.7 → 4.0.8

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.
Files changed (63) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/browser.d.ts +2 -2
  3. package/dist/browser.js +2 -2
  4. package/dist/chunks/{base.D3GxgUMI.js → base.BgTO2qAg.js} +71 -36
  5. package/dist/chunks/{benchmark.DHKMYAts.js → benchmark.B3N2zMcH.js} +9 -4
  6. package/dist/chunks/{browser.d.-LKfRopd.d.ts → browser.d.DTTM2PTh.d.ts} +1 -1
  7. package/dist/chunks/{cac.G9DAn-c7.js → cac.CfkWq8Qy.js} +115 -42
  8. package/dist/chunks/{cli-api.Csks4as1.js → cli-api.BQ-bjcRi.js} +1857 -839
  9. package/dist/chunks/console.Cf-YriPC.js +146 -0
  10. package/dist/chunks/{coverage.C2LA1DSL.js → coverage.NVjCOln1.js} +273 -103
  11. package/dist/chunks/{creator.cqqifzG7.js → creator.fzVyoMf3.js} +74 -30
  12. package/dist/chunks/{date.-jtEtIeV.js → date.Bq6ZW5rf.js} +17 -6
  13. package/dist/chunks/{git.BFNcloKD.js → git.Bm2pzPAa.js} +3 -3
  14. package/dist/chunks/{global.d.DxtanrNO.d.ts → global.d.DVdCfKp5.d.ts} +1 -1
  15. package/dist/chunks/{globals.BGT_RUsD.js → globals.DOh96BiR.js} +5 -5
  16. package/dist/chunks/{index.DEPqWSIZ.js → index.BY4-tcno.js} +33 -16
  17. package/dist/chunks/{index.Bgo3tNWt.js → index.DAL392Ss.js} +40 -15
  18. package/dist/chunks/{index.RwjEGCQ0.js → index.DIFZf73e.js} +2 -2
  19. package/dist/chunks/{index.CWIFvlX5.js → index.DfKyPFVi.js} +159 -54
  20. package/dist/chunks/{index.CVpyv-Zg.js → index.kotH7DY7.js} +832 -373
  21. package/dist/chunks/{index.jMQYiEWE.js → index.op2Re5rn.js} +22 -12
  22. package/dist/chunks/{init-forks.IU-xQ2_X.js → init-forks.2hx7cf78.js} +14 -4
  23. package/dist/chunks/{init-threads.C_NWvZkU.js → init-threads.Cm4OCIWA.js} +1 -1
  24. package/dist/chunks/{init.fmH9J833.js → init.DMDG-idf.js} +53 -30
  25. package/dist/chunks/{inspector.DLZxSeU3.js → inspector.CvyFGlXm.js} +25 -10
  26. package/dist/chunks/{moduleRunner.d.DEkTotCv.d.ts → moduleRunner.d.CzOZ_4wC.d.ts} +1 -1
  27. package/dist/chunks/{node.BwAWWjHZ.js → node.Ce0vMQM7.js} +1 -1
  28. package/dist/chunks/{plugin.d.Cpes8Bt6.d.ts → plugin.d.D4RrtywJ.d.ts} +1 -1
  29. package/dist/chunks/{reporters.d.CSNcMDxF.d.ts → reporters.d.Da1D1VbQ.d.ts} +6 -5
  30. package/dist/chunks/{rpc.D38ahn14.js → rpc.BUV7uWKJ.js} +20 -7
  31. package/dist/chunks/{setup-common.DR1sucx6.js → setup-common.LGjNSzXp.js} +20 -8
  32. package/dist/chunks/{startModuleRunner.Cn7hCL7D.js → startModuleRunner.BOmUtLIO.js} +206 -83
  33. package/dist/chunks/{test.B6aJd6T3.js → test.ClrAtjMv.js} +48 -22
  34. package/dist/chunks/{utils.CG9h5ccR.js → utils.DvEY5TfP.js} +14 -5
  35. package/dist/chunks/{vi.BZvkKVkM.js → vi.Bgcdy3bQ.js} +261 -111
  36. package/dist/chunks/{vm.BL7_zzOr.js → vm.BIkCDs68.js} +177 -71
  37. package/dist/chunks/{worker.d.D25zYZ7N.d.ts → worker.d.DadbA89M.d.ts} +30 -2
  38. package/dist/cli.js +2 -2
  39. package/dist/config.d.ts +5 -5
  40. package/dist/coverage.d.ts +3 -3
  41. package/dist/coverage.js +1 -1
  42. package/dist/environments.js +1 -1
  43. package/dist/index.d.ts +5 -5
  44. package/dist/index.js +5 -5
  45. package/dist/module-evaluator.d.ts +2 -2
  46. package/dist/module-evaluator.js +85 -35
  47. package/dist/module-runner.js +2 -2
  48. package/dist/node.d.ts +7 -7
  49. package/dist/node.js +16 -12
  50. package/dist/reporters.d.ts +3 -3
  51. package/dist/reporters.js +2 -2
  52. package/dist/runners.js +7 -7
  53. package/dist/snapshot.js +2 -2
  54. package/dist/suite.js +2 -2
  55. package/dist/worker.d.ts +1 -1
  56. package/dist/worker.js +15 -15
  57. package/dist/workers/forks.js +16 -16
  58. package/dist/workers/runVmTests.js +41 -22
  59. package/dist/workers/threads.js +16 -16
  60. package/dist/workers/vmForks.js +11 -11
  61. package/dist/workers/vmThreads.js +11 -11
  62. package/package.json +20 -20
  63. package/dist/chunks/console.CTJL2nuH.js +0 -115
@@ -1,49 +1,49 @@
1
- import { r as runBaseTests, s as setupEnvironment } from '../chunks/base.D3GxgUMI.js';
2
- import { w as workerInit } from '../chunks/init-forks.IU-xQ2_X.js';
1
+ import { r as runBaseTests, s as setupEnvironment } from '../chunks/base.BgTO2qAg.js';
2
+ import { w as workerInit } from '../chunks/init-forks.2hx7cf78.js';
3
3
  import 'node:vm';
4
4
  import '@vitest/spy';
5
- import '../chunks/index.DEPqWSIZ.js';
5
+ import '../chunks/index.BY4-tcno.js';
6
6
  import '@vitest/expect';
7
- import '../chunks/setup-common.DR1sucx6.js';
7
+ import '../chunks/setup-common.LGjNSzXp.js';
8
8
  import '../chunks/coverage.D_JHT54q.js';
9
9
  import '@vitest/snapshot';
10
10
  import '@vitest/utils/timers';
11
- import '../chunks/utils.CG9h5ccR.js';
12
- import '../chunks/rpc.D38ahn14.js';
13
- import '../chunks/index.Bgo3tNWt.js';
14
- import '../chunks/test.B6aJd6T3.js';
11
+ import '../chunks/utils.DvEY5TfP.js';
12
+ import '../chunks/rpc.BUV7uWKJ.js';
13
+ import '../chunks/index.DAL392Ss.js';
14
+ import '../chunks/test.ClrAtjMv.js';
15
15
  import '@vitest/runner';
16
16
  import '@vitest/utils/helpers';
17
- import '../chunks/benchmark.DHKMYAts.js';
17
+ import '../chunks/benchmark.B3N2zMcH.js';
18
18
  import '@vitest/runner/utils';
19
19
  import '@vitest/utils/error';
20
20
  import 'pathe';
21
- import '../chunks/vi.BZvkKVkM.js';
21
+ import '../chunks/vi.Bgcdy3bQ.js';
22
22
  import '@vitest/utils/offset';
23
23
  import '@vitest/utils/source-map';
24
24
  import '../chunks/_commonjsHelpers.BFTU3MAI.js';
25
- import '../chunks/date.-jtEtIeV.js';
26
- import '../chunks/init.fmH9J833.js';
25
+ import '../chunks/date.Bq6ZW5rf.js';
26
+ import '../chunks/init.DMDG-idf.js';
27
27
  import 'node:fs';
28
28
  import 'node:module';
29
29
  import 'node:url';
30
30
  import 'vite/module-runner';
31
- import '../chunks/startModuleRunner.Cn7hCL7D.js';
31
+ import '../chunks/startModuleRunner.BOmUtLIO.js';
32
32
  import '../path.js';
33
33
  import 'node:path';
34
34
  import '@vitest/utils/serialize';
35
35
  import '../module-evaluator.js';
36
36
  import '@vitest/mocker';
37
- import '../chunks/index.CWIFvlX5.js';
37
+ import '../chunks/index.DfKyPFVi.js';
38
38
  import 'node:console';
39
- import '../chunks/inspector.DLZxSeU3.js';
39
+ import '../chunks/inspector.CvyFGlXm.js';
40
40
  import '../chunks/evaluatedModules.Dg1zASAC.js';
41
41
  import 'node:perf_hooks';
42
42
  import 'node:timers';
43
43
  import 'node:timers/promises';
44
44
  import 'node:util';
45
45
  import '@vitest/utils/constants';
46
- import '../chunks/index.RwjEGCQ0.js';
46
+ import '../chunks/index.DIFZf73e.js';
47
47
  import 'expect-type';
48
48
  import 'node:v8';
49
49
 
@@ -5,19 +5,19 @@ import timersPromises from 'node:timers/promises';
5
5
  import util from 'node:util';
6
6
  import { startTests, collectTests } from '@vitest/runner';
7
7
  import { KNOWN_ASSET_TYPES } from '@vitest/utils/constants';
8
- import { s as setupChaiConfig, r as resolveTestRunner, a as resolveSnapshotEnvironment } from '../chunks/index.DEPqWSIZ.js';
9
- import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from '../chunks/setup-common.DR1sucx6.js';
10
- import { i as index } from '../chunks/index.RwjEGCQ0.js';
11
- import { c as closeInspector } from '../chunks/inspector.DLZxSeU3.js';
12
- import { g as getWorkerState } from '../chunks/utils.CG9h5ccR.js';
13
- import { g as globalExpect } from '../chunks/vi.BZvkKVkM.js';
8
+ import { s as setupChaiConfig, r as resolveTestRunner, a as resolveSnapshotEnvironment } from '../chunks/index.BY4-tcno.js';
9
+ import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from '../chunks/setup-common.LGjNSzXp.js';
10
+ import { i as index } from '../chunks/index.DIFZf73e.js';
11
+ import { c as closeInspector } from '../chunks/inspector.CvyFGlXm.js';
12
+ import { g as getWorkerState } from '../chunks/utils.DvEY5TfP.js';
13
+ import { g as globalExpect } from '../chunks/vi.Bgcdy3bQ.js';
14
14
  import '@vitest/expect';
15
- import '../chunks/rpc.D38ahn14.js';
15
+ import '../chunks/rpc.BUV7uWKJ.js';
16
16
  import '@vitest/utils/timers';
17
- import '../chunks/index.Bgo3tNWt.js';
18
- import '../chunks/test.B6aJd6T3.js';
17
+ import '../chunks/index.DAL392Ss.js';
18
+ import '../chunks/test.ClrAtjMv.js';
19
19
  import '@vitest/utils/helpers';
20
- import '../chunks/benchmark.DHKMYAts.js';
20
+ import '../chunks/benchmark.B3N2zMcH.js';
21
21
  import '@vitest/runner/utils';
22
22
  import '@vitest/utils/error';
23
23
  import 'pathe';
@@ -31,36 +31,55 @@ import '@vitest/spy';
31
31
  import '@vitest/utils/offset';
32
32
  import '@vitest/utils/source-map';
33
33
  import '../chunks/_commonjsHelpers.BFTU3MAI.js';
34
- import '../chunks/date.-jtEtIeV.js';
34
+ import '../chunks/date.Bq6ZW5rf.js';
35
35
 
36
36
  async function run(method, files, config, moduleRunner) {
37
37
  const workerState = getWorkerState();
38
- await setupCommonEnv(config), Object.defineProperty(globalThis, "__vitest_index__", {
38
+ await setupCommonEnv(config);
39
+ Object.defineProperty(globalThis, "__vitest_index__", {
39
40
  value: index,
40
41
  enumerable: false
41
42
  });
42
43
  const viteEnvironment = workerState.environment.viteEnvironment || workerState.environment.name;
43
- if (globalExpect.setState({ environment: workerState.environment.name }), viteEnvironment === "client") {
44
+ globalExpect.setState({ environment: workerState.environment.name });
45
+ if (viteEnvironment === "client") {
44
46
  const _require = createRequire(import.meta.url);
45
- _require.extensions[".css"] = resolveCss, _require.extensions[".scss"] = resolveCss, _require.extensions[".sass"] = resolveCss, _require.extensions[".less"] = resolveCss, KNOWN_ASSET_TYPES.forEach((type) => {
47
+ // always mock "required" `css` files, because we cannot process them
48
+ _require.extensions[".css"] = resolveCss;
49
+ _require.extensions[".scss"] = resolveCss;
50
+ _require.extensions[".sass"] = resolveCss;
51
+ _require.extensions[".less"] = resolveCss;
52
+ // since we are using Vite, we can assume how these will be resolved
53
+ KNOWN_ASSET_TYPES.forEach((type) => {
46
54
  _require.extensions[`.${type}`] = resolveAsset;
47
- }), process.env.SSR = "";
55
+ });
56
+ process.env.SSR = "";
48
57
  } else process.env.SSR = "1";
49
- if (globalThis.__vitest_required__ = {
58
+ // @ts-expect-error not typed global for patched timers
59
+ globalThis.__vitest_required__ = {
50
60
  util,
51
61
  timers,
52
62
  timersPromises
53
- }, await startCoverageInsideWorker(config.coverage, moduleRunner, { isolate: false }), config.chaiConfig) setupChaiConfig(config.chaiConfig);
63
+ };
64
+ await startCoverageInsideWorker(config.coverage, moduleRunner, { isolate: false });
65
+ if (config.chaiConfig) setupChaiConfig(config.chaiConfig);
54
66
  const [runner, snapshotEnvironment] = await Promise.all([resolveTestRunner(config, moduleRunner), resolveSnapshotEnvironment(config, moduleRunner)]);
55
- config.snapshotOptions.snapshotEnvironment = snapshotEnvironment, runner.getWorkerContext = void 0, workerState.onCancel((reason) => {
56
- closeInspector(config), runner.cancel?.(reason);
57
- }), workerState.durations.prepare = performance.now() - workerState.durations.prepare;
67
+ config.snapshotOptions.snapshotEnvironment = snapshotEnvironment;
68
+ runner.getWorkerContext = void 0;
69
+ workerState.onCancel((reason) => {
70
+ closeInspector(config);
71
+ runner.cancel?.(reason);
72
+ });
73
+ workerState.durations.prepare = performance.now() - workerState.durations.prepare;
58
74
  const { vi } = index;
59
75
  for (const file of files) {
60
- if (workerState.filepath = file.filepath, method === "run") await startTests([file], runner);
76
+ workerState.filepath = file.filepath;
77
+ if (method === "run") await startTests([file], runner);
61
78
  else await collectTests([file], runner);
79
+ // reset after tests, because user might call `vi.setConfig` in setupFile
80
+ vi.resetConfig();
62
81
  // mocks should not affect different files
63
- vi.resetConfig(), vi.restoreAllMocks();
82
+ vi.restoreAllMocks();
64
83
  }
65
84
  await stopCoverageInsideWorker(config.coverage, moduleRunner, { isolate: false });
66
85
  }
@@ -1,49 +1,49 @@
1
- import { s as setupEnvironment, r as runBaseTests } from '../chunks/base.D3GxgUMI.js';
2
- import { w as workerInit } from '../chunks/init-threads.C_NWvZkU.js';
1
+ import { s as setupEnvironment, r as runBaseTests } from '../chunks/base.BgTO2qAg.js';
2
+ import { w as workerInit } from '../chunks/init-threads.Cm4OCIWA.js';
3
3
  import 'node:vm';
4
4
  import '@vitest/spy';
5
- import '../chunks/index.DEPqWSIZ.js';
5
+ import '../chunks/index.BY4-tcno.js';
6
6
  import '@vitest/expect';
7
- import '../chunks/setup-common.DR1sucx6.js';
7
+ import '../chunks/setup-common.LGjNSzXp.js';
8
8
  import '../chunks/coverage.D_JHT54q.js';
9
9
  import '@vitest/snapshot';
10
10
  import '@vitest/utils/timers';
11
- import '../chunks/utils.CG9h5ccR.js';
12
- import '../chunks/rpc.D38ahn14.js';
13
- import '../chunks/index.Bgo3tNWt.js';
14
- import '../chunks/test.B6aJd6T3.js';
11
+ import '../chunks/utils.DvEY5TfP.js';
12
+ import '../chunks/rpc.BUV7uWKJ.js';
13
+ import '../chunks/index.DAL392Ss.js';
14
+ import '../chunks/test.ClrAtjMv.js';
15
15
  import '@vitest/runner';
16
16
  import '@vitest/utils/helpers';
17
- import '../chunks/benchmark.DHKMYAts.js';
17
+ import '../chunks/benchmark.B3N2zMcH.js';
18
18
  import '@vitest/runner/utils';
19
19
  import '@vitest/utils/error';
20
20
  import 'pathe';
21
- import '../chunks/vi.BZvkKVkM.js';
21
+ import '../chunks/vi.Bgcdy3bQ.js';
22
22
  import '@vitest/utils/offset';
23
23
  import '@vitest/utils/source-map';
24
24
  import '../chunks/_commonjsHelpers.BFTU3MAI.js';
25
- import '../chunks/date.-jtEtIeV.js';
26
- import '../chunks/init.fmH9J833.js';
25
+ import '../chunks/date.Bq6ZW5rf.js';
26
+ import '../chunks/init.DMDG-idf.js';
27
27
  import 'node:fs';
28
28
  import 'node:module';
29
29
  import 'node:url';
30
30
  import 'vite/module-runner';
31
- import '../chunks/startModuleRunner.Cn7hCL7D.js';
31
+ import '../chunks/startModuleRunner.BOmUtLIO.js';
32
32
  import '../path.js';
33
33
  import 'node:path';
34
34
  import '@vitest/utils/serialize';
35
35
  import '../module-evaluator.js';
36
36
  import '@vitest/mocker';
37
- import '../chunks/index.CWIFvlX5.js';
37
+ import '../chunks/index.DfKyPFVi.js';
38
38
  import 'node:console';
39
- import '../chunks/inspector.DLZxSeU3.js';
39
+ import '../chunks/inspector.CvyFGlXm.js';
40
40
  import '../chunks/evaluatedModules.Dg1zASAC.js';
41
41
  import 'node:perf_hooks';
42
42
  import 'node:timers';
43
43
  import 'node:timers/promises';
44
44
  import 'node:util';
45
45
  import '@vitest/utils/constants';
46
- import '../chunks/index.RwjEGCQ0.js';
46
+ import '../chunks/index.DIFZf73e.js';
47
47
  import 'expect-type';
48
48
  import 'node:worker_threads';
49
49
 
@@ -1,13 +1,13 @@
1
- import { w as workerInit } from '../chunks/init-forks.IU-xQ2_X.js';
2
- import { r as runVmTests } from '../chunks/vm.BL7_zzOr.js';
1
+ import { w as workerInit } from '../chunks/init-forks.2hx7cf78.js';
2
+ import { r as runVmTests } from '../chunks/vm.BIkCDs68.js';
3
3
  import 'node:v8';
4
- import '../chunks/init.fmH9J833.js';
4
+ import '../chunks/init.DMDG-idf.js';
5
5
  import 'node:fs';
6
6
  import 'node:module';
7
7
  import 'node:url';
8
8
  import 'pathe';
9
9
  import 'vite/module-runner';
10
- import '../chunks/startModuleRunner.Cn7hCL7D.js';
10
+ import '../chunks/startModuleRunner.BOmUtLIO.js';
11
11
  import '@vitest/utils/helpers';
12
12
  import '../path.js';
13
13
  import 'node:path';
@@ -15,20 +15,20 @@ import '@vitest/utils/serialize';
15
15
  import '../module-evaluator.js';
16
16
  import 'node:vm';
17
17
  import '@vitest/mocker';
18
- import '../chunks/index.CWIFvlX5.js';
18
+ import '../chunks/index.DfKyPFVi.js';
19
19
  import 'node:console';
20
20
  import '@vitest/utils/error';
21
- import '../chunks/rpc.D38ahn14.js';
21
+ import '../chunks/rpc.BUV7uWKJ.js';
22
22
  import '@vitest/utils/timers';
23
- import '../chunks/index.Bgo3tNWt.js';
24
- import '../chunks/utils.CG9h5ccR.js';
23
+ import '../chunks/index.DAL392Ss.js';
24
+ import '../chunks/utils.DvEY5TfP.js';
25
25
  import '@vitest/utils/source-map';
26
- import '../chunks/inspector.DLZxSeU3.js';
26
+ import '../chunks/inspector.CvyFGlXm.js';
27
27
  import '../chunks/evaluatedModules.Dg1zASAC.js';
28
- import '../chunks/console.CTJL2nuH.js';
28
+ import '../chunks/console.Cf-YriPC.js';
29
29
  import 'node:stream';
30
30
  import 'tinyrainbow';
31
- import '../chunks/date.-jtEtIeV.js';
31
+ import '../chunks/date.Bq6ZW5rf.js';
32
32
  import '@vitest/utils/resolver';
33
33
  import '@vitest/utils/constants';
34
34
 
@@ -1,13 +1,13 @@
1
- import { w as workerInit } from '../chunks/init-threads.C_NWvZkU.js';
2
- import { r as runVmTests } from '../chunks/vm.BL7_zzOr.js';
1
+ import { w as workerInit } from '../chunks/init-threads.Cm4OCIWA.js';
2
+ import { r as runVmTests } from '../chunks/vm.BIkCDs68.js';
3
3
  import 'node:worker_threads';
4
- import '../chunks/init.fmH9J833.js';
4
+ import '../chunks/init.DMDG-idf.js';
5
5
  import 'node:fs';
6
6
  import 'node:module';
7
7
  import 'node:url';
8
8
  import 'pathe';
9
9
  import 'vite/module-runner';
10
- import '../chunks/startModuleRunner.Cn7hCL7D.js';
10
+ import '../chunks/startModuleRunner.BOmUtLIO.js';
11
11
  import '@vitest/utils/helpers';
12
12
  import '../path.js';
13
13
  import 'node:path';
@@ -15,20 +15,20 @@ import '@vitest/utils/serialize';
15
15
  import '../module-evaluator.js';
16
16
  import 'node:vm';
17
17
  import '@vitest/mocker';
18
- import '../chunks/index.CWIFvlX5.js';
18
+ import '../chunks/index.DfKyPFVi.js';
19
19
  import 'node:console';
20
20
  import '@vitest/utils/error';
21
- import '../chunks/rpc.D38ahn14.js';
21
+ import '../chunks/rpc.BUV7uWKJ.js';
22
22
  import '@vitest/utils/timers';
23
- import '../chunks/index.Bgo3tNWt.js';
24
- import '../chunks/utils.CG9h5ccR.js';
23
+ import '../chunks/index.DAL392Ss.js';
24
+ import '../chunks/utils.DvEY5TfP.js';
25
25
  import '@vitest/utils/source-map';
26
- import '../chunks/inspector.DLZxSeU3.js';
26
+ import '../chunks/inspector.CvyFGlXm.js';
27
27
  import '../chunks/evaluatedModules.Dg1zASAC.js';
28
- import '../chunks/console.CTJL2nuH.js';
28
+ import '../chunks/console.Cf-YriPC.js';
29
29
  import 'node:stream';
30
30
  import 'tinyrainbow';
31
- import '../chunks/date.-jtEtIeV.js';
31
+ import '../chunks/date.Bq6ZW5rf.js';
32
32
  import '@vitest/utils/resolver';
33
33
  import '@vitest/utils/constants';
34
34
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vitest",
3
3
  "type": "module",
4
- "version": "4.0.7",
4
+ "version": "4.0.8",
5
5
  "description": "Next generation testing framework powered by Vite",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",
@@ -134,10 +134,10 @@
134
134
  "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0",
135
135
  "happy-dom": "*",
136
136
  "jsdom": "*",
137
- "@vitest/browser-playwright": "4.0.7",
138
- "@vitest/ui": "4.0.7",
139
- "@vitest/browser-webdriverio": "4.0.7",
140
- "@vitest/browser-preview": "4.0.7"
137
+ "@vitest/browser-playwright": "4.0.8",
138
+ "@vitest/ui": "4.0.8",
139
+ "@vitest/browser-webdriverio": "4.0.8",
140
+ "@vitest/browser-preview": "4.0.8"
141
141
  },
142
142
  "peerDependenciesMeta": {
143
143
  "@edge-runtime/vm": {
@@ -172,23 +172,23 @@
172
172
  "debug": "^4.4.3",
173
173
  "es-module-lexer": "^1.7.0",
174
174
  "expect-type": "^1.2.2",
175
- "magic-string": "^0.30.19",
175
+ "magic-string": "^0.30.21",
176
176
  "pathe": "^2.0.3",
177
177
  "picomatch": "^4.0.3",
178
- "std-env": "^3.9.0",
178
+ "std-env": "^3.10.0",
179
179
  "tinybench": "^2.9.0",
180
180
  "tinyexec": "^0.3.2",
181
181
  "tinyglobby": "^0.2.15",
182
182
  "tinyrainbow": "^3.0.3",
183
183
  "vite": "^6.0.0 || ^7.0.0",
184
184
  "why-is-node-running": "^2.3.0",
185
- "@vitest/pretty-format": "4.0.7",
186
- "@vitest/mocker": "4.0.7",
187
- "@vitest/expect": "4.0.7",
188
- "@vitest/snapshot": "4.0.7",
189
- "@vitest/runner": "4.0.7",
190
- "@vitest/spy": "4.0.7",
191
- "@vitest/utils": "4.0.7"
185
+ "@vitest/expect": "4.0.8",
186
+ "@vitest/mocker": "4.0.8",
187
+ "@vitest/pretty-format": "4.0.8",
188
+ "@vitest/runner": "4.0.8",
189
+ "@vitest/spy": "4.0.8",
190
+ "@vitest/snapshot": "4.0.8",
191
+ "@vitest/utils": "4.0.8"
192
192
  },
193
193
  "devDependencies": {
194
194
  "@antfu/install-pkg": "^1.1.0",
@@ -199,22 +199,22 @@
199
199
  "@types/estree": "^1.0.8",
200
200
  "@types/istanbul-lib-coverage": "^2.0.6",
201
201
  "@types/istanbul-reports": "^3.0.4",
202
- "@types/jsdom": "^21.1.7",
203
- "@types/node": "^22.18.6",
202
+ "@types/jsdom": "^27.0.0",
203
+ "@types/node": "^22.19.0",
204
204
  "@types/picomatch": "^4.0.2",
205
205
  "@types/prompts": "^2.4.9",
206
206
  "@types/sinonjs__fake-timers": "^8.1.5",
207
207
  "acorn-walk": "^8.3.4",
208
- "birpc": "^2.5.0",
208
+ "birpc": "^2.7.0",
209
209
  "cac": "^6.7.14",
210
210
  "empathic": "^2.0.0",
211
211
  "flatted": "^3.3.3",
212
- "happy-dom": "^20.0.0",
213
- "jsdom": "^26.1.0",
212
+ "happy-dom": "^20.0.10",
213
+ "jsdom": "^27.1.0",
214
214
  "local-pkg": "^1.1.2",
215
215
  "mime": "^4.1.0",
216
216
  "prompts": "^2.4.2",
217
- "strip-literal": "^3.0.0",
217
+ "strip-literal": "^3.1.0",
218
218
  "ws": "^8.18.3"
219
219
  },
220
220
  "scripts": {
@@ -1,115 +0,0 @@
1
- import { Console } from 'node:console';
2
- import { relative } from 'node:path';
3
- import { Writable } from 'node:stream';
4
- import { getSafeTimers } from '@vitest/utils/timers';
5
- import c from 'tinyrainbow';
6
- import { R as RealDate } from './date.-jtEtIeV.js';
7
- import { g as getWorkerState } from './utils.CG9h5ccR.js';
8
-
9
- const UNKNOWN_TEST_ID = "__vitest__unknown_test__";
10
- function getTaskIdByStack(root) {
11
- const stack = (/* @__PURE__ */ new Error("STACK_TRACE_ERROR")).stack?.split("\n");
12
- if (!stack) return UNKNOWN_TEST_ID;
13
- const index = stack.findIndex((line) => line.includes("at Console.value")), line = index === -1 ? null : stack[index + 2];
14
- if (!line) return UNKNOWN_TEST_ID;
15
- const filepath = line.match(/at\s(.*)\s?/)?.[1];
16
- return filepath ? relative(root, filepath) : UNKNOWN_TEST_ID;
17
- }
18
- function createCustomConsole(defaultState) {
19
- const stdoutBuffer = /* @__PURE__ */ new Map(), stderrBuffer = /* @__PURE__ */ new Map(), timers = /* @__PURE__ */ new Map(), { queueMicrotask } = getSafeTimers();
20
- function queueCancelableMicrotask(callback) {
21
- let canceled = false;
22
- return queueMicrotask(() => {
23
- if (!canceled) callback();
24
- }), () => {
25
- canceled = true;
26
- };
27
- }
28
- const state = () => defaultState || getWorkerState();
29
- // group sync console.log calls with micro task
30
- function schedule(taskId) {
31
- const timer = timers.get(taskId), { stdoutTime, stderrTime } = timer;
32
- timer.cancel?.(), timer.cancel = queueCancelableMicrotask(() => {
33
- if (stderrTime < stdoutTime) sendStderr(taskId), sendStdout(taskId);
34
- else sendStdout(taskId), sendStderr(taskId);
35
- });
36
- }
37
- function sendStdout(taskId) {
38
- sendBuffer("stdout", taskId);
39
- }
40
- function sendStderr(taskId) {
41
- sendBuffer("stderr", taskId);
42
- }
43
- function sendBuffer(type, taskId) {
44
- const buffers = type === "stdout" ? stdoutBuffer : stderrBuffer, buffer = buffers.get(taskId);
45
- if (!buffer) return;
46
- if (state().config.printConsoleTrace) buffer.forEach(([buffer, origin]) => {
47
- sendLog(type, taskId, String(buffer), buffer.length, origin);
48
- });
49
- else {
50
- const content = buffer.map((i) => String(i[0])).join("");
51
- sendLog(type, taskId, content, buffer.length);
52
- }
53
- const timer = timers.get(taskId);
54
- if (buffers.delete(taskId), type === "stderr") timer.stderrTime = 0;
55
- else timer.stdoutTime = 0;
56
- }
57
- function sendLog(type, taskId, content, size, origin) {
58
- const timer = timers.get(taskId), time = type === "stderr" ? timer.stderrTime : timer.stdoutTime;
59
- state().rpc.onUserConsoleLog({
60
- type,
61
- content: content || "<empty line>",
62
- taskId,
63
- time: time || RealDate.now(),
64
- size,
65
- origin
66
- });
67
- }
68
- const stdout = new Writable({ write(data, encoding, callback) {
69
- const s = state(), id = s?.current?.id || s?.current?.suite?.id || s.current?.file.id || getTaskIdByStack(s.config.root);
70
- let timer = timers.get(id);
71
- if (timer) timer.stdoutTime = timer.stdoutTime || RealDate.now();
72
- else timer = {
73
- stdoutTime: RealDate.now(),
74
- stderrTime: RealDate.now()
75
- }, timers.set(id, timer);
76
- let buffer = stdoutBuffer.get(id);
77
- if (!buffer) buffer = [], stdoutBuffer.set(id, buffer);
78
- if (state().config.printConsoleTrace) {
79
- const limit = Error.stackTraceLimit;
80
- Error.stackTraceLimit = limit + 6;
81
- const trace = (/* @__PURE__ */ new Error("STACK_TRACE")).stack?.split("\n").slice(7).join("\n");
82
- Error.stackTraceLimit = limit, buffer.push([data, trace]);
83
- } else buffer.push([data, void 0]);
84
- schedule(id), callback();
85
- } }), stderr = new Writable({ write(data, encoding, callback) {
86
- const s = state(), id = s?.current?.id || s?.current?.suite?.id || s.current?.file.id || getTaskIdByStack(s.config.root);
87
- let timer = timers.get(id);
88
- if (timer) timer.stderrTime = timer.stderrTime || RealDate.now();
89
- else timer = {
90
- stderrTime: RealDate.now(),
91
- stdoutTime: RealDate.now()
92
- }, timers.set(id, timer);
93
- let buffer = stderrBuffer.get(id);
94
- if (!buffer) buffer = [], stderrBuffer.set(id, buffer);
95
- if (state().config.printConsoleTrace) {
96
- const limit = Error.stackTraceLimit;
97
- Error.stackTraceLimit = limit + 6;
98
- const stack = (/* @__PURE__ */ new Error("STACK_TRACE")).stack?.split("\n");
99
- if (Error.stackTraceLimit = limit, stack?.some((line) => line.includes("at Console.trace"))) buffer.push([data, void 0]);
100
- else {
101
- const trace = stack?.slice(7).join("\n");
102
- Error.stackTraceLimit = limit, buffer.push([data, trace]);
103
- }
104
- } else buffer.push([data, void 0]);
105
- schedule(id), callback();
106
- } });
107
- return new Console({
108
- stdout,
109
- stderr,
110
- colorMode: c.isColorSupported,
111
- groupIndentation: 2
112
- });
113
- }
114
-
115
- export { UNKNOWN_TEST_ID, createCustomConsole };