vitest 0.29.3 → 0.29.4

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 (37) hide show
  1. package/LICENSE.md +502 -1
  2. package/dist/browser.d.ts +2 -2
  3. package/dist/browser.js +3 -4
  4. package/dist/child.js +4 -5
  5. package/dist/{chunk-api-setup.d9eccaeb.js → chunk-api-setup.ac7748ac.js} +9 -12
  6. package/dist/{chunk-constants.797d3ebf.js → chunk-constants.bc18a549.js} +1 -7
  7. package/dist/{chunk-install-pkg.1dfb2c00.js → chunk-install-pkg.4121cd66.js} +12 -12
  8. package/dist/{chunk-integrations-globals.85aeb216.js → chunk-integrations-globals.a473e88a.js} +8 -10
  9. package/dist/{chunk-integrations-run-once.9012f759.js → chunk-integrations-run-once.a2b4758b.js} +1 -1
  10. package/dist/{chunk-integrations-utils.5243a0d7.js → chunk-integrations-utils.d7c85bd9.js} +2 -2
  11. package/dist/{chunk-node-pkg.7627b6fc.js → chunk-node-pkg.0e36ca8e.js} +6975 -3598
  12. package/dist/chunk-paths.e36446b4.js +7 -0
  13. package/dist/{chunk-runtime-mocker.07568540.js → chunk-runtime-mocker.344fec90.js} +5 -4
  14. package/dist/{chunk-runtime-rpc.1232904e.js → chunk-runtime-rpc.1b5714dc.js} +1 -1
  15. package/dist/{chunk-runtime-setup.ccad6a47.js → chunk-runtime-setup.a49dc2f9.js} +2 -2
  16. package/dist/{chunk-utils-global.727b6d25.js → chunk-utils-env.04ffbef7.js} +7 -4
  17. package/dist/{chunk-utils-import.8bd22905.js → chunk-utils-import.39ffe9c5.js} +3 -3
  18. package/dist/cli-wrapper.js +1 -4
  19. package/dist/cli.js +15 -15
  20. package/dist/config.cjs +5 -0
  21. package/dist/config.d.ts +7 -3
  22. package/dist/config.js +5 -0
  23. package/dist/coverage.d.ts +2 -2
  24. package/dist/entry.js +7 -8
  25. package/dist/environments.d.ts +2 -2
  26. package/dist/index.d.ts +4 -5
  27. package/dist/index.js +6 -7
  28. package/dist/loader.js +1 -2
  29. package/dist/node.d.ts +3 -3
  30. package/dist/node.js +15 -15
  31. package/dist/runners.d.ts +2 -2
  32. package/dist/runners.js +3 -4
  33. package/dist/{types-5872e574.d.ts → types-fafda418.d.ts} +84 -14
  34. package/dist/{chunk-magic-string.3a794426.js → vendor-magic-string.es.b3bc5745.js} +82 -1
  35. package/dist/worker.js +4 -5
  36. package/package.json +18 -8
  37. package/dist/chunk-utils-env.860d90c2.js +0 -6
@@ -0,0 +1,7 @@
1
+ import url from 'node:url';
2
+ import { resolve } from 'pathe';
3
+
4
+ const rootDir = resolve(url.fileURLToPath(import.meta.url), "../../");
5
+ const distDir = resolve(url.fileURLToPath(import.meta.url), "../../dist");
6
+
7
+ export { distDir as d, rootDir as r };
@@ -4,14 +4,15 @@ import { isInternalRequest, isPrimitive } from 'vite-node/utils';
4
4
  import { isAbsolute, dirname, join, basename, extname, resolve, normalize, relative } from 'pathe';
5
5
  import { i as isNodeBuiltin } from './vendor-index.bdee400f.js';
6
6
  import { processError } from '@vitest/runner/utils';
7
- import { g as getWorkerState, b as getCurrentEnvironment } from './chunk-utils-global.727b6d25.js';
8
- import { d as distDir } from './chunk-constants.797d3ebf.js';
7
+ import { g as getWorkerState, b as getCurrentEnvironment } from './chunk-utils-env.04ffbef7.js';
8
+ import { d as distDir } from './chunk-paths.e36446b4.js';
9
9
  import { existsSync, readdirSync } from 'node:fs';
10
10
  import { getColors, getType } from '@vitest/utils';
11
11
  import { e as getAllMockableProperties } from './chunk-utils-base.81f83dbd.js';
12
12
  import { spyOn } from '@vitest/spy';
13
- import { r as rpc } from './chunk-runtime-rpc.1232904e.js';
13
+ import { r as rpc } from './chunk-runtime-rpc.1b5714dc.js';
14
14
 
15
+ const filterPublicKeys = ["__esModule", Symbol.asyncIterator, Symbol.hasInstance, Symbol.isConcatSpreadable, Symbol.iterator, Symbol.match, Symbol.matchAll, Symbol.replace, Symbol.search, Symbol.split, Symbol.species, Symbol.toPrimitive, Symbol.toStringTag, Symbol.unscopables];
15
16
  class RefTracker {
16
17
  constructor() {
17
18
  this.idMap = /* @__PURE__ */ new Map();
@@ -112,7 +113,7 @@ const _VitestMocker = class {
112
113
  if (target instanceof Promise)
113
114
  return target.then.bind(target);
114
115
  } else if (!(prop in target)) {
115
- if (prop === "__esModule")
116
+ if (filterPublicKeys.includes(prop))
116
117
  return void 0;
117
118
  const c = getColors();
118
119
  throw new Error(
@@ -1,5 +1,5 @@
1
1
  import { getSafeTimers } from '@vitest/utils';
2
- import { g as getWorkerState } from './chunk-utils-global.727b6d25.js';
2
+ import { g as getWorkerState } from './chunk-utils-env.04ffbef7.js';
3
3
 
4
4
  const { get } = Reflect;
5
5
  const safeRandom = Math.random;
@@ -1,5 +1,5 @@
1
1
  import { setSafeTimers } from '@vitest/utils';
2
- import { a as resetRunOnceCounter } from './chunk-integrations-run-once.9012f759.js';
2
+ import { a as resetRunOnceCounter } from './chunk-integrations-run-once.a2b4758b.js';
3
3
 
4
4
  let globalSetup = false;
5
5
  async function setupCommonEnv(config) {
@@ -10,7 +10,7 @@ async function setupCommonEnv(config) {
10
10
  globalSetup = true;
11
11
  setSafeTimers();
12
12
  if (config.globals)
13
- (await import('./chunk-integrations-globals.85aeb216.js')).registerApiGlobally();
13
+ (await import('./chunk-integrations-globals.a473e88a.js')).registerApiGlobally();
14
14
  }
15
15
  function setupDefines(defines) {
16
16
  for (const key in defines)
@@ -1,8 +1,11 @@
1
1
  import { relative } from 'pathe';
2
- import { i as isNode } from './chunk-utils-env.860d90c2.js';
2
+ import 'std-env';
3
3
  import '@vitest/runner/utils';
4
4
  import '@vitest/utils';
5
5
 
6
+ var _a;
7
+ const isNode = typeof process < "u" && typeof process.stdout < "u" && !((_a = process.versions) == null ? void 0 : _a.deno) && !globalThis.window;
8
+
6
9
  function getWorkerState() {
7
10
  return globalThis.__vitest_worker__;
8
11
  }
@@ -22,10 +25,10 @@ function resetModules(modules, resetMocks = false) {
22
25
  /@vitest\/dist/,
23
26
  ...!resetMocks ? [/^mock:/] : []
24
27
  ];
25
- modules.forEach((_, path) => {
28
+ modules.forEach((mod, path) => {
26
29
  if (skipPaths.some((re) => re.test(path)))
27
30
  return;
28
- modules.delete(path);
31
+ modules.invalidateModule(mod);
29
32
  });
30
33
  }
31
34
  function removeUndefinedValues(obj) {
@@ -64,4 +67,4 @@ function getCallLastIndex(code) {
64
67
  return null;
65
68
  }
66
69
 
67
- export { getCallLastIndex as a, getCurrentEnvironment as b, relativePath as c, removeUndefinedValues as d, isWindows as e, getWorkerState as g, isRunningInBenchmark as i, resetModules as r };
70
+ export { getCallLastIndex as a, getCurrentEnvironment as b, isNode as c, relativePath as d, removeUndefinedValues as e, isWindows as f, getWorkerState as g, isRunningInBenchmark as i, resetModules as r };
@@ -1,12 +1,12 @@
1
1
  import { getCurrentSuite } from '@vitest/runner';
2
2
  import { createChainable, getNames } from '@vitest/runner/utils';
3
3
  import { getSafeTimers, noop, createSimpleStackTrace } from '@vitest/utils';
4
- import { g as getWorkerState, i as isRunningInBenchmark, a as getCallLastIndex, b as getCurrentEnvironment, r as resetModules } from './chunk-utils-global.727b6d25.js';
4
+ import { g as getWorkerState, i as isRunningInBenchmark, a as getCallLastIndex, b as getCurrentEnvironment, r as resetModules } from './chunk-utils-env.04ffbef7.js';
5
5
  import * as chai$1 from 'chai';
6
6
  import { expect } from 'chai';
7
7
  import { c as commonjsGlobal } from './vendor-_commonjsHelpers.addc3445.js';
8
8
  import { equals, iterableEquality, subsetEquality, JestExtend, JestChaiExpect, JestAsymmetricMatchers, GLOBAL_EXPECT, getState, setState } from '@vitest/expect';
9
- import { r as rpc } from './chunk-runtime-rpc.1232904e.js';
9
+ import { r as rpc } from './chunk-runtime-rpc.1b5714dc.js';
10
10
  import { join, dirname } from 'pathe';
11
11
  import { g as getSnapshotEnvironment } from './chunk-snapshot-env.a347d647.js';
12
12
  import { i as isObject } from './chunk-utils-base.81f83dbd.js';
@@ -2700,7 +2700,7 @@ function deepMergeSnapshot(target, source) {
2700
2700
 
2701
2701
  async function saveInlineSnapshots(snapshots) {
2702
2702
  const environment = getSnapshotEnvironment();
2703
- const MagicString = (await import('./chunk-magic-string.3a794426.js')).default;
2703
+ const MagicString = (await import('./vendor-magic-string.es.b3bc5745.js').then(function (n) { return n.m; })).default;
2704
2704
  const files = new Set(snapshots.map((i) => i.file));
2705
2705
  await Promise.all(Array.from(files).map(async (file) => {
2706
2706
  const snaps = snapshots.filter((i) => i.file === file);
@@ -1,7 +1,7 @@
1
1
  import { fileURLToPath } from 'url';
2
2
  import c from 'picocolors';
3
3
  import { e as execa } from './vendor-index.2cbcdd1e.js';
4
- import { E as EXIT_CODE_RESTART } from './chunk-constants.797d3ebf.js';
4
+ import { E as EXIT_CODE_RESTART } from './chunk-constants.bc18a549.js';
5
5
  import 'node:buffer';
6
6
  import 'node:path';
7
7
  import 'node:child_process';
@@ -17,9 +17,6 @@ import 'events';
17
17
  import 'buffer';
18
18
  import 'stream';
19
19
  import 'util';
20
- import 'pathe';
21
- import './chunk-utils-env.860d90c2.js';
22
- import 'std-env';
23
20
 
24
21
  const ENTRY = new URL("./cli.js", import.meta.url);
25
22
  const NODE_ARGS = [
package/dist/cli.js CHANGED
@@ -1,17 +1,19 @@
1
1
  import { normalize } from 'pathe';
2
2
  import cac from 'cac';
3
3
  import c from 'picocolors';
4
- import { v as version, s as startVitest, d as divider } from './chunk-node-pkg.7627b6fc.js';
5
- import './chunk-constants.797d3ebf.js';
6
- import 'node:url';
7
- import './chunk-utils-env.860d90c2.js';
8
- import 'std-env';
4
+ import { v as version, s as startVitest, d as divider } from './chunk-node-pkg.0e36ca8e.js';
5
+ import './chunk-constants.bc18a549.js';
9
6
  import './chunk-integrations-coverage.e0a6acd2.js';
10
7
  import 'local-pkg';
11
8
  import './chunk-env-node.affdd278.js';
12
9
  import 'node:console';
10
+ import './chunk-utils-env.04ffbef7.js';
11
+ import 'std-env';
12
+ import '@vitest/runner/utils';
13
+ import '@vitest/utils';
13
14
  import 'vite';
14
15
  import 'node:path';
16
+ import 'node:url';
15
17
  import 'node:process';
16
18
  import 'node:fs';
17
19
  import 'path';
@@ -21,11 +23,8 @@ import 'stream';
21
23
  import 'events';
22
24
  import 'fs';
23
25
  import './vendor-_commonjsHelpers.addc3445.js';
26
+ import 'vite-node/utils';
24
27
  import 'vite-node/client';
25
- import 'vite-node/server';
26
- import './chunk-utils-global.727b6d25.js';
27
- import '@vitest/runner/utils';
28
- import '@vitest/utils';
29
28
  import 'node:fs/promises';
30
29
  import './vendor-index.2cbcdd1e.js';
31
30
  import 'node:buffer';
@@ -38,24 +37,25 @@ import 'source-map';
38
37
  import 'module';
39
38
  import 'acorn';
40
39
  import 'acorn-walk';
40
+ import './chunk-utils-base.81f83dbd.js';
41
+ import 'crypto';
42
+ import './chunk-paths.e36446b4.js';
41
43
  import 'node:v8';
42
44
  import './vendor-index.783e7f3e.js';
43
- import './chunk-utils-base.81f83dbd.js';
44
45
  import 'node:worker_threads';
45
46
  import 'tinypool';
46
47
  import 'perf_hooks';
47
48
  import './chunk-utils-tasks.b41c8284.js';
48
- import 'crypto';
49
- import 'vite-node/utils';
50
49
  import '@vitest/utils/diff';
50
+ import 'vite-node/server';
51
+ import './vendor-magic-string.es.b3bc5745.js';
51
52
  import 'node:module';
52
53
  import 'node:crypto';
53
- import './chunk-magic-string.3a794426.js';
54
54
  import 'strip-literal';
55
55
  import 'readline';
56
56
 
57
57
  const cli = cac("vitest");
58
- cli.version(version).option("-r, --root <path>", "Root path").option("-c, --config <path>", "Path to config file").option("-u, --update", "Update snapshot").option("-w, --watch", "Enable watch mode").option("-t, --testNamePattern <pattern>", "Run tests with full names matching the specified regexp pattern").option("--dir <path>", "Base directory to scan for the test files").option("--ui", "Enable UI").option("--open", "Open UI automatically (default: !process.env.CI))").option("--api [api]", "Serve API, available options: --api.port <port>, --api.host [host] and --api.strictPort").option("--threads", "Enabled threads (default: true)").option("--single-thread", "Run tests inside a single thread, requires --threads (default: false)").option("--silent", "Silent console output from tests").option("--isolate", "Isolate environment for each test file (default: true)").option("--reporter <name>", "Specify reporters").option("--outputDiffMaxSize <length>", "Object diff output max size (default: 10000)").option("--outputDiffMaxLines <length>", "Max lines in diff output window (default: 50)").option("--outputTruncateLength <length>", "Diff output line length (default: 80)").option("--outputDiffLines <lines>", "Number of lines in single diff (default: 15)").option("--outputFile <filename/-s>", "Write test results to a file when supporter reporter is also specified, use cac's dot notation for individual outputs of multiple reporters").option("--coverage", "Enable coverage report").option("--run", "Disable watch mode").option("--mode <name>", "Override Vite mode (default: test)").option("--globals", "Inject apis globally").option("--dom", "Mock browser api with happy-dom").option("--browser", "Run tests in browser").option("--environment <env>", "Specify runner environment (default: node)").option("--passWithNoTests", "Pass when no tests found").option("--logHeapUsage", "Show the size of heap for each test").option("--allowOnly", "Allow tests and suites that are marked as only (default: !process.env.CI)").option("--dangerouslyIgnoreUnhandledErrors", "Ignore any unhandled errors that occur").option("--shard <shard>", "Test suite shard to execute in a format of <index>/<count>").option("--changed [since]", "Run tests that are affected by the changed files (default: false)").option("--sequence <options>", "Define in what order to run tests (use --sequence.shuffle to run tests in random order)").option("--segfaultRetry <times>", "Return tests on segment fault (default: 0)", { default: 0 }).option("--no-color", "Removes colors from the console output").option("--inspect", "Enable Node.js inspector").option("--inspect-brk", "Enable Node.js inspector with break").help();
58
+ cli.version(version).option("-r, --root <path>", "Root path").option("-c, --config <path>", "Path to config file").option("-u, --update", "Update snapshot").option("-w, --watch", "Enable watch mode").option("-t, --testNamePattern <pattern>", "Run tests with full names matching the specified regexp pattern").option("--dir <path>", "Base directory to scan for the test files").option("--ui", "Enable UI").option("--open", "Open UI automatically (default: !process.env.CI))").option("--api [api]", "Serve API, available options: --api.port <port>, --api.host [host] and --api.strictPort").option("--threads", "Enabled threads (default: true)").option("--single-thread", "Run tests inside a single thread, requires --threads (default: false)").option("--silent", "Silent console output from tests").option("--isolate", "Isolate environment for each test file (default: true)").option("--reporter <name>", "Specify reporters").option("--outputDiffMaxSize <length>", "Object diff output max size (default: 10000)").option("--outputDiffMaxLines <length>", "Max lines in diff output window (default: 50)").option("--outputTruncateLength <length>", "Diff output line length (default: 80)").option("--outputDiffLines <lines>", "Number of lines in single diff (default: 15)").option("--outputFile <filename/-s>", "Write test results to a file when supporter reporter is also specified, use cac's dot notation for individual outputs of multiple reporters").option("--coverage", "Enable coverage report").option("--run", "Disable watch mode").option("--mode <name>", "Override Vite mode (default: test)").option("--globals", "Inject apis globally").option("--dom", "Mock browser api with happy-dom").option("--browser [options]", "Run tests in the browser (default: false)").option("--environment <env>", "Specify runner environment, if not running in the browser (default: node)").option("--passWithNoTests", "Pass when no tests found").option("--logHeapUsage", "Show the size of heap for each test").option("--allowOnly", "Allow tests and suites that are marked as only (default: !process.env.CI)").option("--dangerouslyIgnoreUnhandledErrors", "Ignore any unhandled errors that occur").option("--shard <shard>", "Test suite shard to execute in a format of <index>/<count>").option("--changed [since]", "Run tests that are affected by the changed files (default: false)").option("--sequence <options>", "Define in what order to run tests (use --sequence.shuffle to run tests in random order)").option("--segfaultRetry <times>", "Return tests on segment fault (default: 0)", { default: 0 }).option("--no-color", "Removes colors from the console output").option("--inspect", "Enable Node.js inspector").option("--inspect-brk", "Enable Node.js inspector with break").option("--test-timeout <time>", "Default timeout of a test in milliseconds (default: 5000)").help();
59
59
  cli.command("run [...filters]").action(run);
60
60
  cli.command("related [...filters]").action(runRelated);
61
61
  cli.command("watch [...filters]").action(watch);
@@ -103,7 +103,7 @@ function normalizeCliOptions(argv) {
103
103
  async function start(mode, cliFilters, options) {
104
104
  try {
105
105
  const ctx = await startVitest(mode, cliFilters.map(normalize), normalizeCliOptions(options));
106
- if (!(ctx == null ? void 0 : ctx.config.watch))
106
+ if (!(ctx == null ? void 0 : ctx.shouldKeepServer()))
107
107
  await (ctx == null ? void 0 : ctx.exit());
108
108
  return ctx;
109
109
  } catch (e) {
package/dist/config.cjs CHANGED
@@ -33,6 +33,10 @@ const coverageConfigDefaults = {
33
33
  reporter: [["text", {}], ["html", {}], ["clover", {}], ["json", {}]],
34
34
  extension: [".js", ".cjs", ".mjs", ".ts", ".mts", ".cts", ".tsx", ".jsx", ".vue", ".svelte"]
35
35
  };
36
+ const browserConfigDefaults = {
37
+ enabled: false,
38
+ headless: stdEnv.isCI
39
+ };
36
40
  const fakeTimersDefaults = {
37
41
  loopLimit: 1e4,
38
42
  shouldClearNativeTimers: true,
@@ -61,6 +65,7 @@ const config = {
61
65
  hookTimeout: 1e4,
62
66
  teardownTimeout: 1e4,
63
67
  isolate: true,
68
+ browser: browserConfigDefaults,
64
69
  watchExclude: ["**/node_modules/**", "**/dist/**"],
65
70
  forceRerunTriggers: [
66
71
  "**/package.json/**",
package/dist/config.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { UserConfig as UserConfig$2, ConfigEnv } from 'vite';
2
2
  export { ConfigEnv } from 'vite';
3
- import { a2 as ResolvedCoverageOptions, U as UserConfig$1, a5 as CoverageC8Options, a6 as CustomProviderOptions, a4 as CoverageIstanbulOptions, ag as HtmlOptions, ah as FileOptions, ai as CloverOptions, aj as CoberturaOptions, ak as HtmlSpaOptions, al as LcovOptions, am as LcovOnlyOptions, an as TeamcityOptions, ao as TextOptions, ap as ProjectOptions, F as FakeTimerInstallOpts } from './types-5872e574.js';
3
+ import { a1 as ResolvedCoverageOptions, U as UserConfig$1, a4 as CoverageC8Options, a5 as CustomProviderOptions, a3 as CoverageIstanbulOptions, af as HtmlOptions, ag as FileOptions, ah as CloverOptions, ai as CoberturaOptions, aj as HtmlSpaOptions, ak as LcovOptions, al as LcovOnlyOptions, am as TeamcityOptions, an as TextOptions, ao as ProjectOptions, F as FakeTimerInstallOpts } from './types-fafda418.js';
4
4
  import '@vitest/expect';
5
5
  import '@vitest/runner';
6
6
  import '@vitest/runner/types';
@@ -8,11 +8,11 @@ import '@vitest/runner/utils';
8
8
  import '@vitest/utils';
9
9
  import 'tinybench';
10
10
  import 'vite-node/client';
11
- import 'vite-node/server';
12
11
  import 'node:worker_threads';
13
12
  import 'vite-node';
14
13
  import 'source-map';
15
14
  import 'node:fs';
15
+ import 'vite-node/server';
16
16
 
17
17
  declare const defaultInclude: string[];
18
18
  declare const defaultExclude: string[];
@@ -32,6 +32,10 @@ declare const config: {
32
32
  hookTimeout: number;
33
33
  teardownTimeout: number;
34
34
  isolate: boolean;
35
+ browser: {
36
+ readonly enabled: false;
37
+ readonly headless: boolean;
38
+ };
35
39
  watchExclude: string[];
36
40
  forceRerunTriggers: string[];
37
41
  update: boolean;
@@ -55,7 +59,7 @@ declare const config: {
55
59
  } & CoverageC8Options) | ({
56
60
  provider: "istanbul";
57
61
  } & CoverageIstanbulOptions), "exclude" | "enabled" | "clean" | "cleanOnRerun" | "reportsDirectory" | "extension">> & {
58
- reporter: (["html", Partial<HtmlOptions>] | ["json", Partial<FileOptions>] | ["none", {}] | ["clover", Partial<CloverOptions>] | ["cobertura", Partial<CoberturaOptions>] | ["html-spa", Partial<HtmlSpaOptions>] | ["json-summary", Partial<FileOptions>] | ["lcov", Partial<LcovOptions>] | ["lcovonly", Partial<LcovOnlyOptions>] | ["teamcity", Partial<TeamcityOptions>] | ["text", Partial<TextOptions>] | ["text-lcov", Partial<ProjectOptions>] | ["text-summary", Partial<FileOptions>])[];
62
+ reporter: (["html", Partial<HtmlOptions>] | ["none", {}] | ["json", Partial<FileOptions>] | ["clover", Partial<CloverOptions>] | ["cobertura", Partial<CoberturaOptions>] | ["html-spa", Partial<HtmlSpaOptions>] | ["json-summary", Partial<FileOptions>] | ["lcov", Partial<LcovOptions>] | ["lcovonly", Partial<LcovOnlyOptions>] | ["teamcity", Partial<TeamcityOptions>] | ["text", Partial<TextOptions>] | ["text-lcov", Partial<ProjectOptions>] | ["text-summary", Partial<FileOptions>])[];
59
63
  };
60
64
  fakeTimers: FakeTimerInstallOpts;
61
65
  maxConcurrency: number;
package/dist/config.js CHANGED
@@ -29,6 +29,10 @@ const coverageConfigDefaults = {
29
29
  reporter: [["text", {}], ["html", {}], ["clover", {}], ["json", {}]],
30
30
  extension: [".js", ".cjs", ".mjs", ".ts", ".mts", ".cts", ".tsx", ".jsx", ".vue", ".svelte"]
31
31
  };
32
+ const browserConfigDefaults = {
33
+ enabled: false,
34
+ headless: isCI
35
+ };
32
36
  const fakeTimersDefaults = {
33
37
  loopLimit: 1e4,
34
38
  shouldClearNativeTimers: true,
@@ -57,6 +61,7 @@ const config = {
57
61
  hookTimeout: 1e4,
58
62
  teardownTimeout: 1e4,
59
63
  isolate: true,
64
+ browser: browserConfigDefaults,
60
65
  watchExclude: ["**/node_modules/**", "**/dist/**"],
61
66
  forceRerunTriggers: [
62
67
  "**/package.json/**",
@@ -1,4 +1,4 @@
1
- import { a3 as BaseCoverageOptions, a2 as ResolvedCoverageOptions } from './types-5872e574.js';
1
+ import { a2 as BaseCoverageOptions, a1 as ResolvedCoverageOptions } from './types-fafda418.js';
2
2
  import '@vitest/expect';
3
3
  import 'vite';
4
4
  import '@vitest/runner';
@@ -7,11 +7,11 @@ import '@vitest/runner/utils';
7
7
  import '@vitest/utils';
8
8
  import 'tinybench';
9
9
  import 'vite-node/client';
10
- import 'vite-node/server';
11
10
  import 'node:worker_threads';
12
11
  import 'vite-node';
13
12
  import 'source-map';
14
13
  import 'node:fs';
14
+ import 'vite-node/server';
15
15
 
16
16
  // Type definitions for istanbul-lib-coverage 2.0
17
17
  // Project: https://istanbul.js.org, https://github.com/istanbuljs/istanbuljs
package/dist/entry.js CHANGED
@@ -1,20 +1,19 @@
1
1
  import { startTests } from '@vitest/runner';
2
2
  import { resolve } from 'pathe';
3
- import { g as getWorkerState, r as resetModules } from './chunk-utils-global.727b6d25.js';
4
- import { R as RealDate, g as globalExpect, a as vi } from './chunk-utils-import.8bd22905.js';
5
- import { d as distDir } from './chunk-constants.797d3ebf.js';
3
+ import { g as getWorkerState, r as resetModules } from './chunk-utils-env.04ffbef7.js';
4
+ import { R as RealDate, g as globalExpect, a as vi } from './chunk-utils-import.39ffe9c5.js';
5
+ import { d as distDir } from './chunk-paths.e36446b4.js';
6
6
  import { s as startCoverageInsideWorker, t as takeCoverageInsideWorker, a as stopCoverageInsideWorker } from './chunk-integrations-coverage.e0a6acd2.js';
7
7
  import { createRequire } from 'node:module';
8
8
  import { isatty } from 'node:tty';
9
9
  import { installSourcemapsSupport } from 'vite-node/source-map';
10
10
  import { setupColors, createColors, getSafeTimers } from '@vitest/utils';
11
11
  import { e as environments } from './chunk-env-node.affdd278.js';
12
- import { i as index } from './chunk-integrations-utils.5243a0d7.js';
12
+ import { i as index } from './chunk-integrations-utils.d7c85bd9.js';
13
13
  import { s as setupSnapshotEnvironment } from './chunk-snapshot-env.a347d647.js';
14
14
  import { promises, existsSync } from 'node:fs';
15
- import { r as rpc } from './chunk-runtime-rpc.1232904e.js';
16
- import { s as setupCommonEnv } from './chunk-runtime-setup.ccad6a47.js';
17
- import './chunk-utils-env.860d90c2.js';
15
+ import { r as rpc } from './chunk-runtime-rpc.1b5714dc.js';
16
+ import { s as setupCommonEnv } from './chunk-runtime-setup.a49dc2f9.js';
18
17
  import 'std-env';
19
18
  import '@vitest/runner/utils';
20
19
  import 'chai';
@@ -27,7 +26,7 @@ import '@vitest/spy';
27
26
  import 'node:url';
28
27
  import 'local-pkg';
29
28
  import 'node:console';
30
- import './chunk-integrations-run-once.9012f759.js';
29
+ import './chunk-integrations-run-once.a2b4758b.js';
31
30
 
32
31
  class NodeSnapshotEnvironment {
33
32
  resolvePath(filepath) {
@@ -1,4 +1,4 @@
1
- import { Q as Environment } from './types-5872e574.js';
1
+ import { P as Environment } from './types-fafda418.js';
2
2
  import '@vitest/expect';
3
3
  import 'vite';
4
4
  import '@vitest/runner';
@@ -7,11 +7,11 @@ import '@vitest/runner/utils';
7
7
  import '@vitest/utils';
8
8
  import 'tinybench';
9
9
  import 'vite-node/client';
10
- import 'vite-node/server';
11
10
  import 'node:worker_threads';
12
11
  import 'vite-node';
13
12
  import 'source-map';
14
13
  import 'node:fs';
14
+ import 'vite-node/server';
15
15
 
16
16
  declare const environments: {
17
17
  node: Environment;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Test } from '@vitest/runner';
2
2
  export { SequenceHooks, SequenceSetupFiles, afterAll, afterEach, beforeAll, beforeEach, describe, it, onTestFailed, suite, test } from '@vitest/runner';
3
- import { B as BenchmarkAPI, F as FakeTimerInstallOpts, M as MockFactoryWithHelper, R as RuntimeConfig, a as ResolvedConfig, b as ModuleGraphData, S as SnapshotResult, c as Reporter } from './types-5872e574.js';
4
- export { w as AfterSuiteRunMeta, A as ApiConfig, D as ArgumentsType, z as Arrayable, y as Awaitable, a3 as BaseCoverageOptions, aa as BenchFunction, a8 as Benchmark, B as BenchmarkAPI, a9 as BenchmarkResult, a7 as BenchmarkUserOptions, h as BuiltinEnvironment, i as CSSModuleScopeStrategy, C as CollectLineNumbers, e as CollectLines, L as Constructable, g as Context, n as ContextRPC, m as ContextTestEnvironment, a5 as CoverageC8Options, a4 as CoverageIstanbulOptions, a1 as CoverageOptions, Z as CoverageProvider, $ as CoverageProviderModule, a0 as CoverageReporter, a6 as CustomProviderOptions, H as DeepMerge, Q as Environment, E as EnvironmentOptions, P as EnvironmentReturn, I as InlineConfig, J as JSDOMOptions, G as MergeInsertions, O as ModuleCache, b as ModuleGraphData, K as MutableArray, N as Nullable, Y as OnServerRestartHandler, d as RawErrsMap, _ as ReportContext, c as Reporter, v as ResolveIdFunction, a as ResolvedConfig, a2 as ResolvedCoverageOptions, f as RootAndTarget, R as RuntimeConfig, l as RuntimeRPC, p as SnapshotData, s as SnapshotMatchOptions, S as SnapshotResult, r as SnapshotStateOptions, u as SnapshotSummary, q as SnapshotUpdateState, T as TscErrorInfo, k as TypecheckConfig, t as UncheckedSnapshot, U as UserConfig, X as UserConsoleLog, o as Vitest, V as VitestEnvironment, j as VitestRunMode, W as WorkerContext, x as WorkerGlobalState } from './types-5872e574.js';
3
+ import { B as BenchmarkAPI, F as FakeTimerInstallOpts, M as MockFactoryWithHelper, R as RuntimeConfig, a as ResolvedConfig, b as ModuleGraphData, S as SnapshotResult, c as Reporter } from './types-fafda418.js';
4
+ export { x as AfterSuiteRunMeta, A as ApiConfig, G as ArgumentsType, D as Arrayable, z as Awaitable, a2 as BaseCoverageOptions, a9 as BenchFunction, a7 as Benchmark, B as BenchmarkAPI, a8 as BenchmarkResult, a6 as BenchmarkUserOptions, h as BuiltinEnvironment, j as CSSModuleScopeStrategy, C as CollectLineNumbers, e as CollectLines, K as Constructable, g as Context, o as ContextRPC, n as ContextTestEnvironment, a4 as CoverageC8Options, a3 as CoverageIstanbulOptions, a0 as CoverageOptions, Y as CoverageProvider, _ as CoverageProviderModule, $ as CoverageReporter, a5 as CustomProviderOptions, P as Environment, E as EnvironmentOptions, O as EnvironmentReturn, I as InlineConfig, J as JSDOMOptions, L as ModuleCache, b as ModuleGraphData, H as MutableArray, N as Nullable, X as OnServerRestartHandler, d as RawErrsMap, Z as ReportContext, c as Reporter, w as ResolveIdFunction, a as ResolvedConfig, a1 as ResolvedCoverageOptions, f as RootAndTarget, R as RuntimeConfig, m as RuntimeRPC, q as SnapshotData, t as SnapshotMatchOptions, S as SnapshotResult, s as SnapshotStateOptions, v as SnapshotSummary, r as SnapshotUpdateState, T as TscErrorInfo, l as TypecheckConfig, u as UncheckedSnapshot, U as UserConfig, Q as UserConsoleLog, p as Vitest, V as VitestEnvironment, i as VitestPool, k as VitestRunMode, W as WorkerContext, y as WorkerGlobalState } from './types-fafda418.js';
5
5
  import { spyOn, fn, MaybeMockedDeep, MaybeMocked, MaybePartiallyMocked, MaybePartiallyMockedDeep, EnhancedSpy } from '@vitest/spy';
6
6
  export { EnhancedSpy, Mock, MockContext, MockInstance, Mocked, MockedClass, MockedFunction, MockedObject, SpyInstance } from '@vitest/spy';
7
7
  export { S as SnapshotEnvironment } from './env-afee91f0.js';
@@ -16,11 +16,11 @@ export { Bench as BenchFactory, Options as BenchOptions, Task as BenchTask, Task
16
16
  import '@vitest/expect';
17
17
  import '@vitest/utils';
18
18
  import 'vite-node/client';
19
- import 'vite-node/server';
20
19
  import 'node:worker_threads';
21
20
  import 'vite-node';
22
21
  import 'source-map';
23
22
  import 'node:fs';
23
+ import 'vite-node/server';
24
24
 
25
25
  declare type Not<T extends boolean> = T extends true ? false : true;
26
26
  declare type And<Types extends boolean[]> = Types[number] extends true ? true : false;
@@ -337,10 +337,9 @@ interface TransformResultWithSource extends TransformResult {
337
337
  source?: string;
338
338
  }
339
339
  interface WebSocketHandlers {
340
- onWatcherStart: () => Promise<void>;
341
- onFinished(files?: File[]): Promise<void>;
342
340
  onCollected(files?: File[]): Promise<void>;
343
341
  onTaskUpdate(packs: TaskResultPack[]): void;
342
+ onDone(name: string): void;
344
343
  getFiles(): File[];
345
344
  getPaths(): string[];
346
345
  getConfig(): ResolvedConfig;
package/dist/index.js CHANGED
@@ -1,20 +1,19 @@
1
1
  export { afterAll, afterEach, beforeAll, beforeEach, describe, it, onTestFailed, suite, test } from '@vitest/runner';
2
- export { b as bench, c as createExpect, g as expect, a as vi, v as vitest } from './chunk-utils-import.8bd22905.js';
3
- export { i as isFirstRun, r as runOnce } from './chunk-integrations-run-once.9012f759.js';
4
- import { d as dist } from './chunk-integrations-utils.5243a0d7.js';
5
- export { b as assertType, g as getRunningMode, a as isWatchMode } from './chunk-integrations-utils.5243a0d7.js';
2
+ export { b as bench, c as createExpect, g as expect, a as vi, v as vitest } from './chunk-utils-import.39ffe9c5.js';
3
+ export { i as isFirstRun, r as runOnce } from './chunk-integrations-run-once.a2b4758b.js';
4
+ import { d as dist } from './chunk-integrations-utils.d7c85bd9.js';
5
+ export { b as assertType, g as getRunningMode, a as isWatchMode } from './chunk-integrations-utils.d7c85bd9.js';
6
6
  import * as chai from 'chai';
7
7
  export { chai };
8
8
  export { assert, should } from 'chai';
9
9
  import '@vitest/runner/utils';
10
10
  import '@vitest/utils';
11
- import './chunk-utils-global.727b6d25.js';
11
+ import './chunk-utils-env.04ffbef7.js';
12
12
  import 'pathe';
13
- import './chunk-utils-env.860d90c2.js';
14
13
  import 'std-env';
15
14
  import './vendor-_commonjsHelpers.addc3445.js';
16
15
  import '@vitest/expect';
17
- import './chunk-runtime-rpc.1232904e.js';
16
+ import './chunk-runtime-rpc.1b5714dc.js';
18
17
  import './chunk-snapshot-env.a347d647.js';
19
18
  import './chunk-utils-base.81f83dbd.js';
20
19
  import './chunk-utils-tasks.b41c8284.js';
package/dist/loader.js CHANGED
@@ -2,7 +2,7 @@ import { pathToFileURL, fileURLToPath } from 'node:url';
2
2
  import { readFile } from 'node:fs/promises';
3
3
  import { i as isNodeBuiltin, h as hasCJSSyntax } from './vendor-index.bdee400f.js';
4
4
  import { normalizeModuleId } from 'vite-node/utils';
5
- import { g as getWorkerState } from './chunk-utils-global.727b6d25.js';
5
+ import { g as getWorkerState } from './chunk-utils-env.04ffbef7.js';
6
6
  import 'acorn';
7
7
  import 'node:module';
8
8
  import 'node:fs';
@@ -12,7 +12,6 @@ import 'node:process';
12
12
  import 'node:path';
13
13
  import 'node:v8';
14
14
  import 'node:util';
15
- import './chunk-utils-env.860d90c2.js';
16
15
  import 'std-env';
17
16
  import '@vitest/runner/utils';
18
17
  import '@vitest/utils';
package/dist/node.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { j as VitestRunMode, U as UserConfig, o as Vitest, ab as MockFactory, ac as MockMap, ad as TestSequencer } from './types-5872e574.js';
2
- export { ad as TestSequencer, af as TestSequencerConstructor, o as Vitest, ae as startVitest } from './types-5872e574.js';
1
+ import { k as VitestRunMode, U as UserConfig, p as Vitest, aa as MockFactory, ab as MockMap, ac as TestSequencer } from './types-fafda418.js';
2
+ export { ac as TestSequencer, ae as TestSequencerConstructor, p as Vitest, ad as startVitest } from './types-fafda418.js';
3
3
  import { UserConfig as UserConfig$1, Plugin } from 'vite';
4
4
  import { ViteNodeRunner } from 'vite-node/client';
5
5
  import { ViteNodeRunnerOptions } from 'vite-node';
@@ -9,10 +9,10 @@ import '@vitest/runner/types';
9
9
  import '@vitest/runner/utils';
10
10
  import '@vitest/utils';
11
11
  import 'tinybench';
12
- import 'vite-node/server';
13
12
  import 'node:worker_threads';
14
13
  import 'source-map';
15
14
  import 'node:fs';
15
+ import 'vite-node/server';
16
16
 
17
17
  declare function createVitest(mode: VitestRunMode, options: UserConfig, viteOverrides?: UserConfig$1): Promise<Vitest>;
18
18
 
package/dist/node.js CHANGED
@@ -1,17 +1,19 @@
1
- export { B as BaseSequencer, V as VitestPlugin, c as createVitest, s as startVitest } from './chunk-node-pkg.7627b6fc.js';
2
- export { V as VitestExecutor } from './chunk-runtime-mocker.07568540.js';
1
+ export { B as BaseSequencer, V as VitestPlugin, c as createVitest, s as startVitest } from './chunk-node-pkg.0e36ca8e.js';
2
+ export { V as VitestExecutor } from './chunk-runtime-mocker.344fec90.js';
3
3
  import 'pathe';
4
- import './chunk-constants.797d3ebf.js';
5
- import 'node:url';
6
- import './chunk-utils-env.860d90c2.js';
7
- import 'std-env';
4
+ import './chunk-constants.bc18a549.js';
8
5
  import './chunk-integrations-coverage.e0a6acd2.js';
9
6
  import 'local-pkg';
10
7
  import './chunk-env-node.affdd278.js';
11
8
  import 'node:console';
12
9
  import 'picocolors';
10
+ import './chunk-utils-env.04ffbef7.js';
11
+ import 'std-env';
12
+ import '@vitest/runner/utils';
13
+ import '@vitest/utils';
13
14
  import 'vite';
14
15
  import 'node:path';
16
+ import 'node:url';
15
17
  import 'node:process';
16
18
  import 'node:fs';
17
19
  import 'path';
@@ -21,11 +23,8 @@ import 'stream';
21
23
  import 'events';
22
24
  import 'fs';
23
25
  import './vendor-_commonjsHelpers.addc3445.js';
26
+ import 'vite-node/utils';
24
27
  import 'vite-node/client';
25
- import 'vite-node/server';
26
- import './chunk-utils-global.727b6d25.js';
27
- import '@vitest/runner/utils';
28
- import '@vitest/utils';
29
28
  import 'node:fs/promises';
30
29
  import './vendor-index.2cbcdd1e.js';
31
30
  import 'node:buffer';
@@ -38,23 +37,24 @@ import 'source-map';
38
37
  import 'module';
39
38
  import 'acorn';
40
39
  import 'acorn-walk';
40
+ import './chunk-utils-base.81f83dbd.js';
41
+ import 'crypto';
42
+ import './chunk-paths.e36446b4.js';
41
43
  import 'node:v8';
42
44
  import './vendor-index.783e7f3e.js';
43
- import './chunk-utils-base.81f83dbd.js';
44
45
  import 'node:worker_threads';
45
46
  import 'tinypool';
46
47
  import 'perf_hooks';
47
48
  import './chunk-utils-tasks.b41c8284.js';
48
- import 'crypto';
49
- import 'vite-node/utils';
50
49
  import '@vitest/utils/diff';
50
+ import 'vite-node/server';
51
+ import './vendor-magic-string.es.b3bc5745.js';
51
52
  import 'node:module';
52
53
  import 'node:crypto';
53
- import './chunk-magic-string.3a794426.js';
54
54
  import 'strip-literal';
55
55
  import 'readline';
56
56
  import './vendor-index.bdee400f.js';
57
57
  import 'node:assert';
58
58
  import 'node:util';
59
59
  import '@vitest/spy';
60
- import './chunk-runtime-rpc.1232904e.js';
60
+ import './chunk-runtime-rpc.1b5714dc.js';
package/dist/runners.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VitestRunner, VitestRunnerImportSource, Suite, Test, TestContext } from '@vitest/runner';
2
- import { a as ResolvedConfig } from './types-5872e574.js';
2
+ import { a as ResolvedConfig } from './types-fafda418.js';
3
3
  import '@vitest/expect';
4
4
  import 'vite';
5
5
  import '@vitest/runner/types';
@@ -7,11 +7,11 @@ import '@vitest/runner/utils';
7
7
  import '@vitest/utils';
8
8
  import 'tinybench';
9
9
  import 'vite-node/client';
10
- import 'vite-node/server';
11
10
  import 'node:worker_threads';
12
11
  import 'vite-node';
13
12
  import 'source-map';
14
13
  import 'node:fs';
14
+ import 'vite-node/server';
15
15
 
16
16
  declare class VitestTestRunner implements VitestRunner {
17
17
  config: ResolvedConfig;
package/dist/runners.js CHANGED
@@ -1,19 +1,18 @@
1
1
  import { setState, GLOBAL_EXPECT, getState } from '@vitest/expect';
2
- import { d as getSnapshotClient, c as createExpect, a as vi, e as getBenchOptions, f as getBenchFn } from './chunk-utils-import.8bd22905.js';
3
- import { g as getWorkerState } from './chunk-utils-global.727b6d25.js';
2
+ import { d as getSnapshotClient, c as createExpect, a as vi, e as getBenchOptions, f as getBenchFn } from './chunk-utils-import.39ffe9c5.js';
3
+ import { g as getWorkerState } from './chunk-utils-env.04ffbef7.js';
4
4
  import { g as getFullName } from './chunk-utils-tasks.b41c8284.js';
5
5
  import { updateTask } from '@vitest/runner';
6
6
  import { createDefer, getSafeTimers } from '@vitest/utils';
7
7
  import '@vitest/runner/utils';
8
8
  import 'chai';
9
9
  import './vendor-_commonjsHelpers.addc3445.js';
10
- import './chunk-runtime-rpc.1232904e.js';
10
+ import './chunk-runtime-rpc.1b5714dc.js';
11
11
  import 'pathe';
12
12
  import './chunk-snapshot-env.a347d647.js';
13
13
  import './chunk-utils-base.81f83dbd.js';
14
14
  import 'util';
15
15
  import '@vitest/spy';
16
- import './chunk-utils-env.860d90c2.js';
17
16
  import 'std-env';
18
17
 
19
18
  class VitestTestRunner {