vitest 2.1.5 → 2.2.0-beta.2

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 (45) hide show
  1. package/LICENSE.md +0 -75
  2. package/dist/browser.d.ts +11 -11
  3. package/dist/browser.js +1 -1
  4. package/dist/chunks/{RandomSequencer.CMRlh2v4.js → RandomSequencer.BPedXEug.js} +1 -0
  5. package/dist/chunks/{base.BZZh4cSm.js → base.BS0HhLXd.js} +1 -1
  6. package/dist/chunks/{benchmark.geERunq4.d.ts → benchmark.CFFwLv-O.d.ts} +2 -2
  7. package/dist/chunks/{cac.DWAW3Uh5.js → cac.Cs06pOqp.js} +56 -7
  8. package/dist/chunks/{cli-api.BtqJwSCh.js → cli-api.CB-jIbYQ.js} +585 -407
  9. package/dist/chunks/{config.Cy0C388Z.d.ts → config.CPguQ7J1.d.ts} +2 -1
  10. package/dist/chunks/{environment.LoooBwUu.d.ts → environment.CT0jpO-1.d.ts} +2 -1
  11. package/dist/chunks/{globals.D8ZVAdXd.js → globals.BCGEw6ON.js} +2 -2
  12. package/dist/chunks/{index.nEwtF0bu.js → index.BjjsHdBb.js} +1 -1
  13. package/dist/chunks/{index.ckWaX2gY.js → index.DD5eTY2y.js} +2 -8
  14. package/dist/chunks/{index.DsZFoqi9.js → index.bzFpKeaq.js} +601 -807
  15. package/dist/chunks/{reporters.D7Jzd9GS.d.ts → reporters.F9D2idOT.d.ts} +1429 -1286
  16. package/dist/chunks/{resolveConfig.RxKrDli4.js → resolveConfig.CLnvCvEs.js} +11 -9
  17. package/dist/chunks/{runBaseTests.3qpJUEJM.js → runBaseTests.B7hcVT-s.js} +4 -4
  18. package/dist/chunks/{setup-common.Dj6BZI3u.js → setup-common.BfGt8K-K.js} +4 -1
  19. package/dist/chunks/{suite.B2jumIFP.d.ts → suite.BJU7kdY9.d.ts} +4 -4
  20. package/dist/chunks/{utils.DNoFbBUZ.js → utils.DJONn5B5.js} +15 -21
  21. package/dist/chunks/{vi.DgezovHB.js → vi.BlPttogV.js} +6 -1
  22. package/dist/chunks/{vite.C-N5BBZe.d.ts → vite.DonA4fvH.d.ts} +1 -1
  23. package/dist/chunks/{worker.tN5KGIih.d.ts → worker.9VY11NZs.d.ts} +2 -2
  24. package/dist/chunks/{worker.B9FxPCaC.d.ts → worker.Qz1UB4Fv.d.ts} +1 -1
  25. package/dist/cli.js +1 -1
  26. package/dist/config.d.ts +13 -11
  27. package/dist/coverage.d.ts +9 -112
  28. package/dist/coverage.js +2 -2
  29. package/dist/environments.d.ts +2 -2
  30. package/dist/execute.d.ts +4 -3
  31. package/dist/index.d.ts +14 -13
  32. package/dist/index.js +2 -2
  33. package/dist/node.d.ts +26 -15
  34. package/dist/node.js +9 -9
  35. package/dist/reporters.d.ts +9 -8
  36. package/dist/reporters.js +4 -5
  37. package/dist/runners.d.ts +5 -3
  38. package/dist/runners.js +4 -1
  39. package/dist/suite.d.ts +2 -2
  40. package/dist/workers/forks.js +1 -1
  41. package/dist/workers/runVmTests.js +4 -4
  42. package/dist/workers/threads.js +1 -1
  43. package/dist/workers.d.ts +5 -4
  44. package/dist/workers.js +1 -1
  45. package/package.json +13 -12
@@ -13,7 +13,7 @@ import c from 'tinyrainbow';
13
13
  import { e as extraInlineDeps, d as defaultPort, a as defaultBrowserPort, b as defaultInspectPort } from './constants.fzPh7AOq.js';
14
14
  import * as nodeos from 'node:os';
15
15
  import nodeos__default from 'node:os';
16
- import { h as hash, w as wrapSerializableConfig, T as Typechecker, i as isWindows, R as RandomSequencer, B as BaseSequencer } from './RandomSequencer.CMRlh2v4.js';
16
+ import { h as hash, w as wrapSerializableConfig, T as Typechecker, i as isWindows, R as RandomSequencer, B as BaseSequencer } from './RandomSequencer.BPedXEug.js';
17
17
  import { isCI, provider } from 'std-env';
18
18
  import { g as getDefaultExportFromCjs } from './_commonjsHelpers.BFTU3MAI.js';
19
19
  import require$$0 from 'util';
@@ -6553,7 +6553,7 @@ async function groupFilesByEnv(files) {
6553
6553
  const filesWithEnv = await Promise.all(
6554
6554
  files.map(async (spec) => {
6555
6555
  const file = spec.moduleId;
6556
- const project = spec.project.workspaceProject;
6556
+ const project = spec.project;
6557
6557
  const code = await promises$1.readFile(file, "utf-8");
6558
6558
  let env = code.match(/@(?:vitest|jest)-environment\s+([\w-]+)\b/)?.[1];
6559
6559
  if (!env) {
@@ -6600,13 +6600,15 @@ function createMethodsRPC(project, options = {}) {
6600
6600
  ctx.snapshot.add(snapshot);
6601
6601
  },
6602
6602
  resolveSnapshotPath(testPath) {
6603
- return ctx.snapshot.resolvePath(testPath);
6603
+ return ctx.snapshot.resolvePath(testPath, {
6604
+ config: project.serializedConfig
6605
+ });
6604
6606
  },
6605
6607
  async getSourceMap(id, force) {
6606
6608
  if (force) {
6607
- const mod = project.server.moduleGraph.getModuleById(id);
6609
+ const mod = project.vite.moduleGraph.getModuleById(id);
6608
6610
  if (mod) {
6609
- project.server.moduleGraph.invalidateModule(mod);
6611
+ project.vite.moduleGraph.invalidateModule(mod);
6610
6612
  }
6611
6613
  }
6612
6614
  const r = await project.vitenode.transformRequest(id);
@@ -7152,10 +7154,10 @@ function createTypecheckPool(ctx) {
7152
7154
  for (const name in specsByProject) {
7153
7155
  const project = specsByProject[name][0].project;
7154
7156
  const files = specsByProject[name].map((spec) => spec.moduleId);
7155
- const checker = await createWorkspaceTypechecker(project.workspaceProject, files);
7157
+ const checker = await createWorkspaceTypechecker(project, files);
7156
7158
  checker.setFiles(files);
7157
7159
  await checker.collectTests();
7158
- ctx.state.collectFiles(project.workspaceProject, checker.getTestFiles());
7160
+ ctx.state.collectFiles(project, checker.getTestFiles());
7159
7161
  await ctx.report("onCollected");
7160
7162
  }
7161
7163
  }
@@ -8143,7 +8145,7 @@ ${JSON.stringify({ browser: { provider: "playwright", name: "chromium" } }, null
8143
8145
  resolved.benchmark.outputJson = options.outputJson;
8144
8146
  }
8145
8147
  }
8146
- if (resolved.diff) {
8148
+ if (typeof resolved.diff === "string") {
8147
8149
  resolved.diff = resolvePath(resolved.diff, resolved.root);
8148
8150
  resolved.forceRerunTriggers.push(resolved.diff);
8149
8151
  }
@@ -8204,7 +8206,7 @@ ${JSON.stringify({ browser: { provider: "playwright", name: "chromium" } }, null
8204
8206
  if (resolved.cache !== false) {
8205
8207
  let cacheDir = VitestCache.resolveCacheDir(
8206
8208
  "",
8207
- resolve(viteConfig.cacheDir, "vitest"),
8209
+ viteConfig.cacheDir,
8208
8210
  resolved.name
8209
8211
  );
8210
8212
  if (resolved.cache && resolved.cache.dir) {
@@ -1,8 +1,8 @@
1
1
  import { performance } from 'node:perf_hooks';
2
2
  import { startTests, collectTests } from '@vitest/runner';
3
- import { a as resolveSnapshotEnvironment, s as setupChaiConfig, r as resolveTestRunner } from './index.nEwtF0bu.js';
3
+ import { a as resolveSnapshotEnvironment, s as setupChaiConfig, r as resolveTestRunner } from './index.BjjsHdBb.js';
4
4
  import { s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from './coverage.BoMDb1ip.js';
5
- import { a as globalExpect, v as vi } from './vi.DgezovHB.js';
5
+ import { a as globalExpect, v as vi } from './vi.BlPttogV.js';
6
6
  import { c as closeInspector } from './inspector.70d6emsh.js';
7
7
  import { createRequire } from 'node:module';
8
8
  import timers from 'node:timers';
@@ -10,8 +10,8 @@ import util from 'node:util';
10
10
  import { getSafeTimers } from '@vitest/utils';
11
11
  import { KNOWN_ASSET_TYPES } from 'vite-node/constants';
12
12
  import { installSourcemapsSupport } from 'vite-node/source-map';
13
- import { V as VitestIndex } from './index.ckWaX2gY.js';
14
- import { s as setupCommonEnv } from './setup-common.Dj6BZI3u.js';
13
+ import { V as VitestIndex } from './index.DD5eTY2y.js';
14
+ import { s as setupCommonEnv } from './setup-common.BfGt8K-K.js';
15
15
  import { g as getWorkerState, r as resetModules } from './utils.C8RiOc4B.js';
16
16
  import 'chai';
17
17
  import 'node:path';
@@ -13,7 +13,7 @@ async function setupCommonEnv(config) {
13
13
  globalSetup = true;
14
14
  setSafeTimers();
15
15
  if (config.globals) {
16
- (await import('./globals.D8ZVAdXd.js')).registerApiGlobally();
16
+ (await import('./globals.BCGEw6ON.js')).registerApiGlobally();
17
17
  }
18
18
  }
19
19
  function setupDefines(defines) {
@@ -33,6 +33,9 @@ function setupEnv(env) {
33
33
  }
34
34
  }
35
35
  async function loadDiffConfig(config, executor) {
36
+ if (typeof config.diff === "object") {
37
+ return config.diff;
38
+ }
36
39
  if (typeof config.diff !== "string") {
37
40
  return;
38
41
  }
@@ -1,10 +1,10 @@
1
- import { Custom } from '@vitest/runner';
2
- import { a as BenchFunction, c as BenchmarkAPI } from './benchmark.geERunq4.js';
1
+ import { Test } from '@vitest/runner';
2
+ import { a as BenchFunction, c as BenchmarkAPI } from './benchmark.CFFwLv-O.js';
3
3
  import { Options } from 'tinybench';
4
4
  import '@vitest/runner/utils';
5
5
 
6
- declare function getBenchOptions(key: Custom): Options;
7
- declare function getBenchFn(key: Custom): BenchFunction;
6
+ declare function getBenchOptions(key: Test): Options;
7
+ declare function getBenchFn(key: Test): BenchFunction;
8
8
  declare const bench: BenchmarkAPI;
9
9
 
10
10
  export { getBenchOptions as a, bench as b, getBenchFn as g };
@@ -11,9 +11,10 @@ const F_DOT = "\xB7";
11
11
  const F_CHECK = "\u2713";
12
12
  const F_CROSS = "\xD7";
13
13
  const F_LONG_DASH = "\u23AF";
14
+ const F_TREE_NODE_MIDDLE = "\u251C\u2500\u2500";
15
+ const F_TREE_NODE_END = "\u2514\u2500\u2500";
14
16
 
15
17
  const spinnerMap = /* @__PURE__ */ new WeakMap();
16
- const hookSpinnerMap = /* @__PURE__ */ new WeakMap();
17
18
  const pointer = c.yellow(F_POINTER);
18
19
  const skipped = c.dim(c.gray(F_DOWN));
19
20
  const benchmarkPass = c.green(F_DOT);
@@ -144,22 +145,6 @@ function getStateSymbol(task) {
144
145
  }
145
146
  return " ";
146
147
  }
147
- function getHookStateSymbol(task, hookName) {
148
- const state = task.result?.hooks?.[hookName];
149
- if (state && state === "run") {
150
- let spinnerMap2 = hookSpinnerMap.get(task);
151
- if (!spinnerMap2) {
152
- spinnerMap2 = /* @__PURE__ */ new Map();
153
- hookSpinnerMap.set(task, spinnerMap2);
154
- }
155
- let spinner = spinnerMap2.get(hookName);
156
- if (!spinner) {
157
- spinner = elegantSpinner();
158
- spinnerMap2.set(hookName, spinner);
159
- }
160
- return c.yellow(spinner());
161
- }
162
- }
163
148
  const spinnerFrames = process.platform === "win32" ? ["-", "\\", "|", "/"] : ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"];
164
149
  function elegantSpinner() {
165
150
  let index = 0;
@@ -171,6 +156,12 @@ function elegantSpinner() {
171
156
  function formatTimeString(date) {
172
157
  return date.toTimeString().split(" ")[0];
173
158
  }
159
+ function formatTime(time) {
160
+ if (time > 1e3) {
161
+ return `${(time / 1e3).toFixed(2)}s`;
162
+ }
163
+ return `${Math.round(time)}ms`;
164
+ }
174
165
  function formatProjectName(name, suffix = " ") {
175
166
  if (!name) {
176
167
  return "";
@@ -180,7 +171,10 @@ function formatProjectName(name, suffix = " ") {
180
171
  return colors[index % colors.length](`|${name}|`) + suffix;
181
172
  }
182
173
  function withLabel(color, label, message) {
183
- return `${c.bold(c.inverse(c[color](` ${label} `)))} ${c[color](message)}`;
174
+ return `${c.bold(c.inverse(c[color](` ${label} `)))} ${message ? c[color](message) : ""}`;
175
+ }
176
+ function padSummaryTitle(str) {
177
+ return c.dim(`${str.padStart(11)} `);
184
178
  }
185
179
 
186
180
  var utils = /*#__PURE__*/Object.freeze({
@@ -191,12 +185,12 @@ var utils = /*#__PURE__*/Object.freeze({
191
185
  elegantSpinner: elegantSpinner,
192
186
  formatProjectName: formatProjectName,
193
187
  formatTestPath: formatTestPath,
188
+ formatTime: formatTime,
194
189
  formatTimeString: formatTimeString,
195
190
  getCols: getCols,
196
- getHookStateSymbol: getHookStateSymbol,
197
191
  getStateString: getStateString,
198
192
  getStateSymbol: getStateSymbol,
199
- hookSpinnerMap: hookSpinnerMap,
193
+ padSummaryTitle: padSummaryTitle,
200
194
  pending: pending,
201
195
  pointer: pointer,
202
196
  renderSnapshotSummary: renderSnapshotSummary,
@@ -209,4 +203,4 @@ var utils = /*#__PURE__*/Object.freeze({
209
203
  withLabel: withLabel
210
204
  });
211
205
 
212
- export { F_POINTER as F, formatTimeString as a, F_RIGHT as b, F_CHECK as c, divider as d, getStateString as e, formatProjectName as f, getStateSymbol as g, countTestErrors as h, getCols as i, getHookStateSymbol as j, renderSnapshotSummary as r, taskFail as t, utils as u, withLabel as w };
206
+ export { F_POINTER as F, formatTimeString as a, F_RIGHT as b, F_CHECK as c, divider as d, getStateString as e, formatProjectName as f, getStateSymbol as g, formatTime as h, countTestErrors as i, F_TREE_NODE_END as j, F_TREE_NODE_MIDDLE as k, getCols as l, padSummaryTitle as p, renderSnapshotSummary as r, taskFail as t, utils as u, withLabel as w };
@@ -570,6 +570,11 @@ Object.defineProperty(globalThis, GLOBAL_EXPECT, {
570
570
  configurable: true
571
571
  });
572
572
 
573
+ function inject(key) {
574
+ const workerState = getWorkerState();
575
+ return workerState.providedContext[key];
576
+ }
577
+
573
578
  var fakeTimersSrc = {};
574
579
 
575
580
  var global;
@@ -3977,4 +3982,4 @@ function getImporter(name) {
3977
3982
  return stack?.file || "";
3978
3983
  }
3979
3984
 
3980
- export { globalExpect as a, vitest as b, createExpect as c, getSnapshotClient as g, vi as v };
3985
+ export { globalExpect as a, vitest as b, createExpect as c, getSnapshotClient as g, inject as i, vi as v };
@@ -1,4 +1,4 @@
1
- import { I as InlineConfig } from './reporters.D7Jzd9GS.js';
1
+ import { I as InlineConfig } from './reporters.F9D2idOT.js';
2
2
 
3
3
  type VitestInlineConfig = InlineConfig;
4
4
  declare module 'vite' {
@@ -1,7 +1,7 @@
1
1
  import { File, TaskResultPack, CancelReason, Task } from '@vitest/runner';
2
2
  import { ViteNodeResolveId, ModuleCacheMap } from 'vite-node';
3
- import { S as SerializedConfig } from './config.Cy0C388Z.js';
4
- import { T as TransformMode, U as UserConsoleLog, A as AfterSuiteRunMeta, E as Environment } from './environment.LoooBwUu.js';
3
+ import { S as SerializedConfig } from './config.CPguQ7J1.js';
4
+ import { T as TransformMode, U as UserConsoleLog, A as AfterSuiteRunMeta, E as Environment } from './environment.CT0jpO-1.js';
5
5
  import { SnapshotResult } from '@vitest/snapshot';
6
6
 
7
7
  type ArgumentsType<T> = T extends (...args: infer A) => any ? A : never;
@@ -1,5 +1,5 @@
1
1
  import { MessagePort } from 'node:worker_threads';
2
- import { C as ContextRPC } from './worker.tN5KGIih.js';
2
+ import { C as ContextRPC } from './worker.9VY11NZs.js';
3
3
 
4
4
  interface WorkerContext extends ContextRPC {
5
5
  port: MessagePort;
package/dist/cli.js CHANGED
@@ -1,4 +1,4 @@
1
- import { c as createCLI } from './chunks/cac.DWAW3Uh5.js';
1
+ import { c as createCLI } from './chunks/cac.Cs06pOqp.js';
2
2
  import '@vitest/utils';
3
3
  import 'events';
4
4
  import 'pathe';
package/dist/config.d.ts CHANGED
@@ -1,23 +1,25 @@
1
1
  import { UserConfig as UserConfig$1, ConfigEnv } from 'vite';
2
2
  export { ConfigEnv, Plugin, UserConfig as ViteUserConfig, mergeConfig } from 'vite';
3
- import { R as ResolvedCoverageOptions, c as CoverageV8Options, U as UserWorkspaceConfig, d as UserProjectConfigFn, e as UserProjectConfigExport, W as WorkspaceProjectConfiguration } from './chunks/reporters.D7Jzd9GS.js';
4
- import './chunks/vite.C-N5BBZe.js';
3
+ import { R as ResolvedCoverageOptions, d as CoverageV8Options, U as UserWorkspaceConfig, e as UserProjectConfigFn, f as UserProjectConfigExport, T as TestProjectConfiguration } from './chunks/reporters.F9D2idOT.js';
4
+ export { W as WorkspaceProjectConfiguration } from './chunks/reporters.F9D2idOT.js';
5
+ import './chunks/vite.DonA4fvH.js';
5
6
  import '@vitest/runner';
6
- import './chunks/environment.LoooBwUu.js';
7
+ import './chunks/environment.CT0jpO-1.js';
7
8
  import 'node:stream';
8
9
  import '@vitest/utils';
9
- import './chunks/config.Cy0C388Z.js';
10
+ import 'vite-node';
11
+ import '@vitest/utils/source-map';
12
+ import './chunks/config.CPguQ7J1.js';
10
13
  import '@vitest/pretty-format';
11
14
  import '@vitest/snapshot';
12
15
  import '@vitest/snapshot/environment';
13
- import 'vite-node';
16
+ import '@vitest/utils/diff';
14
17
  import 'chai';
15
- import '@vitest/utils/source-map';
16
- import 'vite-node/client';
17
- import 'vite-node/server';
18
- import './chunks/benchmark.geERunq4.js';
18
+ import './chunks/benchmark.CFFwLv-O.js';
19
19
  import '@vitest/runner/utils';
20
20
  import 'tinybench';
21
+ import 'vite-node/client';
22
+ import 'vite-node/server';
21
23
  import '@vitest/snapshot/manager';
22
24
  import 'node:fs';
23
25
 
@@ -88,6 +90,6 @@ declare function defineProject(config: UserWorkspaceConfig): UserWorkspaceConfig
88
90
  declare function defineProject(config: Promise<UserWorkspaceConfig>): Promise<UserWorkspaceConfig>;
89
91
  declare function defineProject(config: UserProjectConfigFn): UserProjectConfigFn;
90
92
  declare function defineProject(config: UserProjectConfigExport): UserProjectConfigExport;
91
- declare function defineWorkspace(config: WorkspaceProjectConfiguration[]): WorkspaceProjectConfiguration[];
93
+ declare function defineWorkspace(config: TestProjectConfiguration[]): TestProjectConfiguration[];
92
94
 
93
- export { type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, UserProjectConfigExport, UserProjectConfigFn, UserWorkspaceConfig, WorkspaceProjectConfiguration, configDefaults, coverageConfigDefaults, defaultBrowserPort, defaultExclude, defaultInclude, defineConfig, defineProject, defineWorkspace, extraInlineDeps };
95
+ export { TestProjectConfiguration, type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, UserProjectConfigExport, UserProjectConfigFn, UserWorkspaceConfig, configDefaults, coverageConfigDefaults, defaultBrowserPort, defaultExclude, defaultInclude, defineConfig, defineProject, defineWorkspace, extraInlineDeps };
@@ -1,128 +1,25 @@
1
1
  import * as vite from 'vite';
2
- import { R as ResolvedCoverageOptions, V as Vitest, a as ReportContext } from './chunks/reporters.D7Jzd9GS.js';
3
- import { A as AfterSuiteRunMeta } from './chunks/environment.LoooBwUu.js';
2
+ import { R as ResolvedCoverageOptions, V as Vitest, C as CoverageMap, a as ReportContext } from './chunks/reporters.F9D2idOT.js';
3
+ import { A as AfterSuiteRunMeta } from './chunks/environment.CT0jpO-1.js';
4
4
  import '@vitest/runner';
5
5
  import 'node:stream';
6
6
  import '@vitest/utils';
7
- import './chunks/config.Cy0C388Z.js';
7
+ import 'vite-node';
8
+ import '@vitest/utils/source-map';
9
+ import './chunks/config.CPguQ7J1.js';
8
10
  import '@vitest/pretty-format';
9
11
  import '@vitest/snapshot';
10
12
  import '@vitest/snapshot/environment';
11
- import 'vite-node';
13
+ import '@vitest/utils/diff';
12
14
  import 'chai';
13
- import '@vitest/utils/source-map';
14
- import 'vite-node/client';
15
- import 'vite-node/server';
16
- import './chunks/benchmark.geERunq4.js';
15
+ import './chunks/benchmark.CFFwLv-O.js';
17
16
  import '@vitest/runner/utils';
18
17
  import 'tinybench';
18
+ import 'vite-node/client';
19
+ import 'vite-node/server';
19
20
  import '@vitest/snapshot/manager';
20
21
  import 'node:fs';
21
22
 
22
- interface CoverageSummaryData {
23
- lines: Totals;
24
- statements: Totals;
25
- branches: Totals;
26
- functions: Totals;
27
- }
28
-
29
- declare class CoverageSummary {
30
- constructor(data: CoverageSummary | CoverageSummaryData);
31
- merge(obj: CoverageSummary): CoverageSummary;
32
- toJSON(): CoverageSummaryData;
33
- isEmpty(): boolean;
34
- data: CoverageSummaryData;
35
- lines: Totals;
36
- statements: Totals;
37
- branches: Totals;
38
- functions: Totals;
39
- }
40
-
41
- interface CoverageMapData {
42
- [key: string]: FileCoverage | FileCoverageData;
43
- }
44
-
45
- declare class CoverageMap {
46
- constructor(data: CoverageMapData | CoverageMap);
47
- addFileCoverage(pathOrObject: string | FileCoverage | FileCoverageData): void;
48
- files(): string[];
49
- fileCoverageFor(filename: string): FileCoverage;
50
- filter(callback: (key: string) => boolean): void;
51
- getCoverageSummary(): CoverageSummary;
52
- merge(data: CoverageMapData | CoverageMap): void;
53
- toJSON(): CoverageMapData;
54
- data: CoverageMapData;
55
- }
56
-
57
- interface Location {
58
- line: number;
59
- column: number;
60
- }
61
-
62
- interface Range {
63
- start: Location;
64
- end: Location;
65
- }
66
-
67
- interface BranchMapping {
68
- loc: Range;
69
- type: string;
70
- locations: Range[];
71
- line: number;
72
- }
73
-
74
- interface FunctionMapping {
75
- name: string;
76
- decl: Range;
77
- loc: Range;
78
- line: number;
79
- }
80
-
81
- interface FileCoverageData {
82
- path: string;
83
- statementMap: { [key: string]: Range };
84
- fnMap: { [key: string]: FunctionMapping };
85
- branchMap: { [key: string]: BranchMapping };
86
- s: { [key: string]: number };
87
- f: { [key: string]: number };
88
- b: { [key: string]: number[] };
89
- }
90
-
91
- interface Totals {
92
- total: number;
93
- covered: number;
94
- skipped: number;
95
- pct: number;
96
- }
97
-
98
- interface Coverage {
99
- covered: number;
100
- total: number;
101
- coverage: number;
102
- }
103
-
104
- declare class FileCoverage implements FileCoverageData {
105
- constructor(data: string | FileCoverage | FileCoverageData);
106
- merge(other: FileCoverageData): void;
107
- getBranchCoverageByLine(): { [line: number]: Coverage };
108
- getLineCoverage(): { [line: number]: number };
109
- getUncoveredLines(): number[];
110
- resetHits(): void;
111
- computeBranchTotals(): Totals;
112
- computeSimpleTotals(): Totals;
113
- toSummary(): CoverageSummary;
114
- toJSON(): object;
115
-
116
- data: FileCoverageData;
117
- path: string;
118
- statementMap: { [key: string]: Range };
119
- fnMap: { [key: string]: FunctionMapping };
120
- branchMap: { [key: string]: BranchMapping };
121
- s: { [key: string]: number };
122
- f: { [key: string]: number };
123
- b: { [key: string]: number[] };
124
- }
125
-
126
23
  type Threshold = 'lines' | 'functions' | 'statements' | 'branches';
127
24
  interface ResolvedThreshold {
128
25
  coverageMap: CoverageMap;
package/dist/coverage.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { existsSync, promises, readdirSync, writeFileSync } from 'node:fs';
2
- import { c as coverageConfigDefaults, r as resolveCoverageReporters, m as mm } from './chunks/resolveConfig.RxKrDli4.js';
2
+ import { c as coverageConfigDefaults, r as resolveCoverageReporters, m as mm } from './chunks/resolveConfig.CLnvCvEs.js';
3
3
  import { resolve, relative } from 'pathe';
4
4
  import c from 'tinyrainbow';
5
5
  import '@vitest/utils';
@@ -13,7 +13,7 @@ import 'node:v8';
13
13
  import 'node:util';
14
14
  import './chunks/constants.fzPh7AOq.js';
15
15
  import 'node:os';
16
- import './chunks/RandomSequencer.CMRlh2v4.js';
16
+ import './chunks/RandomSequencer.BPedXEug.js';
17
17
  import 'std-env';
18
18
  import 'node:perf_hooks';
19
19
  import '@vitest/runner/utils';
@@ -1,5 +1,5 @@
1
- import { E as Environment } from './chunks/environment.LoooBwUu.js';
2
- export { a as EnvironmentReturn, V as VmEnvironmentReturn } from './chunks/environment.LoooBwUu.js';
1
+ import { E as Environment } from './chunks/environment.CT0jpO-1.js';
2
+ export { a as EnvironmentReturn, V as VmEnvironmentReturn } from './chunks/environment.CT0jpO-1.js';
3
3
 
4
4
  declare const environments: {
5
5
  node: Environment;
package/dist/execute.d.ts CHANGED
@@ -1,16 +1,17 @@
1
1
  import { ViteNodeRunnerOptions } from 'vite-node';
2
2
  import { ViteNodeRunner } from 'vite-node/client';
3
- import { R as RuntimeRPC, W as WorkerGlobalState } from './chunks/worker.tN5KGIih.js';
3
+ import { R as RuntimeRPC, W as WorkerGlobalState } from './chunks/worker.9VY11NZs.js';
4
4
  import vm from 'node:vm';
5
5
  import * as _vitest_mocker from '@vitest/mocker';
6
6
  import { MockedModuleType } from '@vitest/mocker';
7
7
  import { P as PendingSuiteMock, b as MockFactory, a as MockOptions } from './chunks/mocker.cRtM890J.js';
8
8
  import '@vitest/runner';
9
- import './chunks/config.Cy0C388Z.js';
9
+ import './chunks/config.CPguQ7J1.js';
10
10
  import '@vitest/pretty-format';
11
11
  import '@vitest/snapshot';
12
12
  import '@vitest/snapshot/environment';
13
- import './chunks/environment.LoooBwUu.js';
13
+ import '@vitest/utils/diff';
14
+ import './chunks/environment.CT0jpO-1.js';
14
15
 
15
16
  declare class FileMap {
16
17
  private fsCache;
package/dist/index.d.ts CHANGED
@@ -1,25 +1,25 @@
1
1
  import { TaskResultPack as TaskResultPack$1, File as File$1, TaskPopulated, Suite as Suite$1, Test as Test$1, Custom as Custom$1, Task as Task$1, TaskBase as TaskBase$1, TaskResult as TaskResult$1, DoneCallback as DoneCallback$1, RuntimeContext as RuntimeContext$1, SuiteHooks as SuiteHooks$1, SequenceHooks as SequenceHooks$1, SequenceSetupFiles as SequenceSetupFiles$1 } from '@vitest/runner';
2
2
  export { CancelReason, ExtendedContext, HookCleanupCallback, HookListener, OnTestFailedHandler, OnTestFinishedHandler, RunMode, Custom as RunnerCustomCase, Task as RunnerTask, TaskBase as RunnerTaskBase, TaskResult as RunnerTaskResult, TaskResultPack as RunnerTaskResultPack, Test as RunnerTestCase, File as RunnerTestFile, Suite as RunnerTestSuite, SuiteAPI, SuiteCollector, SuiteFactory, TaskContext, TaskCustomOptions, TaskMeta, TaskState, TestAPI, TestContext, TestFunction, TestOptions, afterAll, afterEach, beforeAll, beforeEach, describe, it, onTestFailed, onTestFinished, suite, test } from '@vitest/runner';
3
- import { f as VitestEnvironment$1, S as SerializedTestSpecification, g as RawErrsMap$1, T as TscErrorInfo$1, h as CollectLineNumbers$1, i as CollectLines$1, j as RootAndTarget$1, k as Context$1, C as CoverageProvider$1, a as ReportContext$1, b as CoverageProviderModule$1, l as CoverageReporter$1, m as CoverageProviderName, n as CoverageOptions$1, R as ResolvedCoverageOptions$1, B as BaseCoverageOptions$1, o as CoverageIstanbulOptions$1, c as CoverageV8Options$1, p as CustomProviderOptions$1, q as Reporter$1, V as Vitest$1, r as BrowserScript$1, s as BrowserConfigOptions$1, t as BuiltinEnvironment$1, P as Pool$1, u as PoolOptions$1, v as CSSModuleScopeStrategy$1, A as ApiConfig$1, w as VitestRunMode$1, D as DepsOptimizationOptions$1, x as TransformModePatterns$1, I as InlineConfig$1, y as TypecheckConfig$1, z as UserConfig$1, E as ResolvedConfig$1, F as ProjectConfig$1, U as UserWorkspaceConfig$1, G as BenchmarkUserOptions$1 } from './chunks/reporters.D7Jzd9GS.js';
4
- import { W as WorkerContext$1 } from './chunks/worker.B9FxPCaC.js';
5
- import { U as UserConsoleLog, M as ModuleGraphData, b as Awaitable$1, P as ProvidedContext, N as Nullable$1, c as Arrayable$1, d as ArgumentsType$1, e as MutableArray$1, C as Constructable$1, O as OnServerRestartHandler$1, a as EnvironmentReturn$1, V as VmEnvironmentReturn$1, E as Environment$1, R as ResolvedTestEnvironment$1, J as JSDOMOptions$1, H as HappyDOMOptions$1, f as EnvironmentOptions$1 } from './chunks/environment.LoooBwUu.js';
6
- export { A as AfterSuiteRunMeta, g as ModuleCache } from './chunks/environment.LoooBwUu.js';
7
- import { a as BirpcReturn, b as WorkerRPC$1 } from './chunks/worker.tN5KGIih.js';
8
- export { C as ContextRPC, d as ContextTestEnvironment, e as ResolveIdFunction, c as RunnerRPC, R as RuntimeRPC, W as WorkerGlobalState } from './chunks/worker.tN5KGIih.js';
9
- import './chunks/vite.C-N5BBZe.js';
3
+ import { g as VitestEnvironment$1, S as SerializedTestSpecification, h as RawErrsMap$1, i as TscErrorInfo$1, j as CollectLineNumbers$1, k as CollectLines$1, l as RootAndTarget$1, m as Context$1, b as CoverageProvider$1, a as ReportContext$1, c as CoverageProviderModule$1, n as CoverageReporter$1, o as CoverageProviderName, p as CoverageOptions$1, R as ResolvedCoverageOptions$1, B as BaseCoverageOptions$1, q as CoverageIstanbulOptions$1, d as CoverageV8Options$1, r as CustomProviderOptions$1, s as Reporter$1, V as Vitest$1, t as BrowserScript$1, u as BrowserConfigOptions$1, v as BuiltinEnvironment$1, P as Pool$1, w as PoolOptions$1, x as CSSModuleScopeStrategy$1, A as ApiConfig$1, y as VitestRunMode$1, D as DepsOptimizationOptions$1, z as TransformModePatterns$1, I as InlineConfig$1, E as TypecheckConfig$1, F as UserConfig$1, G as ResolvedConfig$1, H as ProjectConfig$1, U as UserWorkspaceConfig$1, J as BenchmarkUserOptions$1 } from './chunks/reporters.F9D2idOT.js';
4
+ import { W as WorkerContext$1 } from './chunks/worker.Qz1UB4Fv.js';
5
+ import { U as UserConsoleLog, M as ModuleGraphData, b as Awaitable$1, P as ProvidedContext, N as Nullable$1, c as Arrayable$1, d as ArgumentsType$1, e as MutableArray$1, C as Constructable$1, O as OnServerRestartHandler$1, a as EnvironmentReturn$1, V as VmEnvironmentReturn$1, E as Environment$1, R as ResolvedTestEnvironment$1, J as JSDOMOptions$1, H as HappyDOMOptions$1, f as EnvironmentOptions$1 } from './chunks/environment.CT0jpO-1.js';
6
+ export { A as AfterSuiteRunMeta, g as ModuleCache } from './chunks/environment.CT0jpO-1.js';
7
+ import { a as BirpcReturn, b as WorkerRPC$1 } from './chunks/worker.9VY11NZs.js';
8
+ export { C as ContextRPC, d as ContextTestEnvironment, e as ResolveIdFunction, c as RunnerRPC, R as RuntimeRPC, W as WorkerGlobalState } from './chunks/worker.9VY11NZs.js';
9
+ import './chunks/vite.DonA4fvH.js';
10
10
  import { PromisifyAssertion, Tester, ExpectStatic } from '@vitest/expect';
11
11
  export { Assertion, AsymmetricMatchersContaining, ExpectPollOptions, ExpectStatic, JestAssertion } from '@vitest/expect';
12
12
  import { Plugin } from '@vitest/pretty-format';
13
13
  import { SnapshotState } from '@vitest/snapshot';
14
14
  export { SnapshotData, SnapshotMatchOptions, SnapshotResult, SnapshotSerializer, SnapshotStateOptions, SnapshotSummary, SnapshotUpdateState, UncheckedSnapshot } from '@vitest/snapshot';
15
- import { B as BenchmarkResult } from './chunks/benchmark.geERunq4.js';
16
- export { a as BenchFunction, b as Benchmark, c as BenchmarkAPI } from './chunks/benchmark.geERunq4.js';
17
- import { S as SerializedConfig, F as FakeTimerInstallOpts, R as RuntimeOptions } from './chunks/config.Cy0C388Z.js';
18
- export { b as RuntimeConfig, a as SerializedCoverageConfig } from './chunks/config.Cy0C388Z.js';
15
+ import { B as BenchmarkResult } from './chunks/benchmark.CFFwLv-O.js';
16
+ export { a as BenchFunction, b as Benchmark, c as BenchmarkAPI } from './chunks/benchmark.CFFwLv-O.js';
17
+ import { S as SerializedConfig, F as FakeTimerInstallOpts, R as RuntimeOptions } from './chunks/config.CPguQ7J1.js';
18
+ export { b as RuntimeConfig, a as SerializedCoverageConfig } from './chunks/config.CPguQ7J1.js';
19
19
  import { spyOn, fn, MaybeMockedDeep, MaybeMocked, MaybePartiallyMocked, MaybePartiallyMockedDeep, MockInstance } from '@vitest/spy';
20
20
  export { Mock, MockContext, MockInstance, Mocked, MockedClass, MockedFunction, MockedObject } from '@vitest/spy';
21
21
  import { M as MockFactoryWithHelper, a as MockOptions } from './chunks/mocker.cRtM890J.js';
22
- export { b as bench } from './chunks/suite.B2jumIFP.js';
22
+ export { b as bench } from './chunks/suite.BJU7kdY9.js';
23
23
  export { ExpectTypeOf, expectTypeOf } from 'expect-type';
24
24
  export { ErrorWithDiff, ParsedStack, SerializedError, TestError } from '@vitest/utils';
25
25
  export { DiffOptions } from '@vitest/utils/diff';
@@ -170,7 +170,8 @@ interface WebSocketHandlers {
170
170
  getTransformResult: (projectName: string, id: string, browser?: boolean) => Promise<TransformResultWithSource | undefined>;
171
171
  readTestFile: (id: string) => Promise<string | null>;
172
172
  saveTestFile: (id: string, content: string) => Promise<void>;
173
- rerun: (files: string[]) => Promise<void>;
173
+ rerun: (files: string[], resetTestNamePattern?: boolean) => Promise<void>;
174
+ rerunTask: (id: string) => Promise<void>;
174
175
  updateSnapshot: (file?: File$1) => Promise<void>;
175
176
  getUnhandledErrors: () => unknown[];
176
177
  }
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { c as createExpect, a as expect, v as vi, b as vitest } from './chunks/vi.DgezovHB.js';
2
- export { b as assertType, g as getRunningMode, i as inject, a as isWatchMode } from './chunks/index.ckWaX2gY.js';
1
+ export { c as createExpect, a as expect, i as inject, v as vi, b as vitest } from './chunks/vi.BlPttogV.js';
3
2
  export { i as isFirstRun, a as runOnce } from './chunks/run-once.2ogXb3JV.js';
3
+ export { a as assertType, g as getRunningMode, i as isWatchMode } from './chunks/index.DD5eTY2y.js';
4
4
  export { b as bench } from './chunks/benchmark.Cdu9hjj4.js';
5
5
  export { expectTypeOf } from 'expect-type';
6
6
  export { afterAll, afterEach, beforeAll, beforeEach, describe, it, onTestFailed, onTestFinished, suite, test } from '@vitest/runner';