vitest 2.2.0-beta.2 → 3.0.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 (54) hide show
  1. package/LICENSE.md +75 -0
  2. package/dist/browser.d.ts +13 -10
  3. package/dist/browser.js +2 -2
  4. package/dist/chunks/{RandomSequencer.BPedXEug.js → RandomSequencer.gisBJ77r.js} +11 -4
  5. package/dist/chunks/{base.BS0HhLXd.js → base.CUgXReRN.js} +8 -3
  6. package/dist/chunks/{cac.Cs06pOqp.js → cac.Xzv7eNWw.js} +22 -17
  7. package/dist/chunks/{cli-api.CB-jIbYQ.js → cli-api.CETCDGgZ.js} +985 -498
  8. package/dist/chunks/{config.CPguQ7J1.d.ts → config.BTPBhmK5.d.ts} +1 -1
  9. package/dist/chunks/{coverage.BoMDb1ip.js → coverage.BWeNbfBa.js} +4 -4
  10. package/dist/chunks/{creator.IIqd8RWT.js → creator.DcAcUhMD.js} +1 -4
  11. package/dist/chunks/{environment.CT0jpO-1.d.ts → environment.d8YfPkTm.d.ts} +1 -3
  12. package/dist/chunks/{globals.BCGEw6ON.js → globals.BFncSRNA.js} +2 -2
  13. package/dist/chunks/{index.bzFpKeaq.js → index.9ZEBV_TJ.js} +992 -577
  14. package/dist/chunks/{index.DD5eTY2y.js → index.CkWmZCXU.js} +1 -1
  15. package/dist/chunks/{index.CqYx2Nsr.js → index.DQboAxJm.js} +23 -14
  16. package/dist/chunks/{index.BjjsHdBb.js → index.DoV7W5gc.js} +2 -2
  17. package/dist/chunks/{inspector.70d6emsh.js → inspector.DKLceBVD.js} +1 -1
  18. package/dist/chunks/{reporters.F9D2idOT.d.ts → reporters.DTtxC3KQ.d.ts} +588 -524
  19. package/dist/chunks/{resolveConfig.CLnvCvEs.js → resolveConfig.BA-_OKEx.js} +5599 -5570
  20. package/dist/chunks/{runBaseTests.B7hcVT-s.js → runBaseTests.D0dWpzZV.js} +13 -12
  21. package/dist/chunks/{setup-common.BfGt8K-K.js → setup-common.Cp_bu5q3.js} +1 -1
  22. package/dist/chunks/types.BOjykUpq.d.ts +27 -0
  23. package/dist/chunks/{utils.DJONn5B5.js → utils.CMUTX-p8.js} +5 -2
  24. package/dist/chunks/{vi.BlPttogV.js → vi.S4Fq8wSo.js} +20 -14
  25. package/dist/chunks/{vite.DonA4fvH.d.ts → vite.CXaetSK3.d.ts} +1 -1
  26. package/dist/chunks/{vm.Zr4qWzDJ.js → vm.DGhTouO3.js} +10 -1
  27. package/dist/chunks/{worker.Qz1UB4Fv.d.ts → worker.ClntunZp.d.ts} +1 -1
  28. package/dist/chunks/{worker.9VY11NZs.d.ts → worker.o1PBoDdo.d.ts} +4 -4
  29. package/dist/cli.js +1 -1
  30. package/dist/config.cjs +1 -10
  31. package/dist/config.d.ts +7 -10
  32. package/dist/config.js +1 -10
  33. package/dist/coverage.d.ts +5 -7
  34. package/dist/coverage.js +4 -4
  35. package/dist/environments.d.ts +2 -2
  36. package/dist/execute.d.ts +4 -4
  37. package/dist/index.d.ts +27 -22
  38. package/dist/index.js +2 -2
  39. package/dist/node.d.ts +25 -33
  40. package/dist/node.js +66 -32
  41. package/dist/reporters.d.ts +5 -7
  42. package/dist/reporters.js +5 -4
  43. package/dist/runners.d.ts +3 -4
  44. package/dist/runners.js +9 -14
  45. package/dist/suite.d.ts +1 -1
  46. package/dist/worker.js +1 -1
  47. package/dist/workers/forks.js +1 -1
  48. package/dist/workers/runVmTests.js +9 -9
  49. package/dist/workers/threads.js +1 -1
  50. package/dist/workers/vmForks.js +1 -1
  51. package/dist/workers/vmThreads.js +1 -1
  52. package/dist/workers.d.ts +4 -4
  53. package/dist/workers.js +3 -3
  54. package/package.json +23 -24
package/LICENSE.md CHANGED
@@ -931,6 +931,23 @@ Repository: micromatch/micromatch
931
931
 
932
932
  ---------------------------------------
933
933
 
934
+ ## mimic-fn
935
+ License: MIT
936
+ By: Sindre Sorhus
937
+ Repository: sindresorhus/mimic-fn
938
+
939
+ > MIT License
940
+ >
941
+ > Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
942
+ >
943
+ > Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
944
+ >
945
+ > The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
946
+ >
947
+ > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
948
+
949
+ ---------------------------------------
950
+
934
951
  ## mlly
935
952
  License: MIT
936
953
  Repository: unjs/mlly
@@ -959,6 +976,23 @@ Repository: unjs/mlly
959
976
 
960
977
  ---------------------------------------
961
978
 
979
+ ## onetime
980
+ License: MIT
981
+ By: Sindre Sorhus
982
+ Repository: sindresorhus/onetime
983
+
984
+ > MIT License
985
+ >
986
+ > Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
987
+ >
988
+ > Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
989
+ >
990
+ > The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
991
+ >
992
+ > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
993
+
994
+ ---------------------------------------
995
+
962
996
  ## p-limit
963
997
  License: MIT
964
998
  By: Sindre Sorhus
@@ -1137,6 +1171,23 @@ Repository: privatenumber/resolve-pkg-maps
1137
1171
 
1138
1172
  ---------------------------------------
1139
1173
 
1174
+ ## restore-cursor
1175
+ License: MIT
1176
+ By: Sindre Sorhus
1177
+ Repository: sindresorhus/restore-cursor
1178
+
1179
+ > MIT License
1180
+ >
1181
+ > Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
1182
+ >
1183
+ > Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
1184
+ >
1185
+ > The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
1186
+ >
1187
+ > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1188
+
1189
+ ---------------------------------------
1190
+
1140
1191
  ## reusify
1141
1192
  License: MIT
1142
1193
  By: Matteo Collina
@@ -1194,6 +1245,30 @@ Repository: git://github.com/feross/run-parallel.git
1194
1245
 
1195
1246
  ---------------------------------------
1196
1247
 
1248
+ ## signal-exit
1249
+ License: ISC
1250
+ By: Ben Coe
1251
+ Repository: https://github.com/tapjs/signal-exit.git
1252
+
1253
+ > The ISC License
1254
+ >
1255
+ > Copyright (c) 2015, Contributors
1256
+ >
1257
+ > Permission to use, copy, modify, and/or distribute this software
1258
+ > for any purpose with or without fee is hereby granted, provided
1259
+ > that the above copyright notice and this permission notice
1260
+ > appear in all copies.
1261
+ >
1262
+ > THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1263
+ > WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
1264
+ > OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
1265
+ > LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
1266
+ > OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
1267
+ > WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
1268
+ > ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1269
+
1270
+ ---------------------------------------
1271
+
1197
1272
  ## sisteransi
1198
1273
  License: MIT
1199
1274
  By: Terkel Gjervig
package/dist/browser.d.ts CHANGED
@@ -1,27 +1,26 @@
1
- import { b as CoverageProvider, c as CoverageProviderModule } from './chunks/reporters.F9D2idOT.js';
2
- import { a as SerializedCoverageConfig, S as SerializedConfig } from './chunks/config.CPguQ7J1.js';
1
+ import { b as CoverageProvider, c as CoverageProviderModule } from './chunks/reporters.DTtxC3KQ.js';
2
+ import { a as SerializedCoverageConfig, S as SerializedConfig } from './chunks/config.BTPBhmK5.js';
3
3
  import * as spy$1 from '@vitest/spy';
4
4
  import * as _vitest_utils_diff from '@vitest/utils/diff';
5
5
  import { VitestExecutor } from './execute.js';
6
6
  export { collectTests, processError, startTests } from '@vitest/runner';
7
- import './chunks/environment.CT0jpO-1.js';
7
+ import './chunks/environment.d8YfPkTm.js';
8
+ import '@vitest/utils';
8
9
  import 'node:stream';
9
10
  import 'vite';
10
- import '@vitest/utils';
11
- import 'vite-node';
12
11
  import '@vitest/utils/source-map';
13
12
  import '@vitest/pretty-format';
14
13
  import '@vitest/snapshot';
14
+ import 'vite-node';
15
15
  import 'chai';
16
16
  import './chunks/benchmark.CFFwLv-O.js';
17
17
  import '@vitest/runner/utils';
18
18
  import 'tinybench';
19
- import 'vite-node/client';
20
- import 'vite-node/server';
21
19
  import '@vitest/snapshot/manager';
22
20
  import 'node:fs';
23
21
  import '@vitest/snapshot/environment';
24
- import './chunks/worker.9VY11NZs.js';
22
+ import 'vite-node/client';
23
+ import './chunks/worker.o1PBoDdo.js';
25
24
  import 'node:vm';
26
25
  import '@vitest/mocker';
27
26
  import './chunks/mocker.cRtM890J.js';
@@ -52,9 +51,13 @@ interface Loader {
52
51
  isBrowser?: boolean;
53
52
  }
54
53
  declare function getCoverageProvider(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<CoverageProvider | null>;
55
- declare function startCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
54
+ declare function startCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader, runtimeOptions: {
55
+ isolate: boolean;
56
+ }): Promise<unknown>;
56
57
  declare function takeCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
57
- declare function stopCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
58
+ declare function stopCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader, runtimeOptions: {
59
+ isolate: boolean;
60
+ }): Promise<unknown>;
58
61
 
59
62
  declare function setupCommonEnv(config: SerializedConfig): Promise<void>;
60
63
  declare function loadDiffConfig(config: SerializedConfig, executor: VitestExecutor): Promise<_vitest_utils_diff.SerializedDiffOptions | undefined>;
package/dist/browser.js CHANGED
@@ -1,6 +1,6 @@
1
- export { g as getCoverageProvider, s as startCoverageInsideWorker, a as stopCoverageInsideWorker, t as takeCoverageInsideWorker } from './chunks/coverage.BoMDb1ip.js';
1
+ export { g as getCoverageProvider, s as startCoverageInsideWorker, a as stopCoverageInsideWorker, t as takeCoverageInsideWorker } from './chunks/coverage.BWeNbfBa.js';
2
2
  export { s as SpyModule } from './chunks/spy.Cf_4R5Oe.js';
3
- export { l as loadDiffConfig, a as loadSnapshotSerializers, s as setupCommonEnv } from './chunks/setup-common.BfGt8K-K.js';
3
+ export { l as loadDiffConfig, a as loadSnapshotSerializers, s as setupCommonEnv } from './chunks/setup-common.Cp_bu5q3.js';
4
4
  export { collectTests, processError, startTests } from '@vitest/runner';
5
5
  import '@vitest/spy';
6
6
  import '@vitest/snapshot';
@@ -329,10 +329,9 @@ async function collectTests(ctx, filepath) {
329
329
  if (!request) {
330
330
  return null;
331
331
  }
332
- request.code = request.code.replace(/__vite_ssr_identity__\((\w+\.\w+)\)/g, "( $1)");
333
332
  const ast = await parseAstAsync(request.code);
334
333
  const testFilepath = relative(ctx.config.root, filepath);
335
- const projectName = ctx.getName();
334
+ const projectName = ctx.name;
336
335
  const typecheckSubprojectName = projectName ? `${projectName}:__typecheck__` : "__typecheck__";
337
336
  const file = {
338
337
  filepath,
@@ -363,10 +362,17 @@ async function collectTests(ctx, filepath) {
363
362
  return getName(callee.tag);
364
363
  }
365
364
  if (callee.type === "MemberExpression") {
366
- if (callee.object?.name?.startsWith("__vite_ssr_")) {
365
+ const object = callee.object;
366
+ if (object?.name?.startsWith("__vite_ssr_")) {
367
367
  return getName(callee.property);
368
368
  }
369
- return getName(callee.object?.property);
369
+ return getName(object?.property);
370
+ }
371
+ if (callee.type === "SequenceExpression" && callee.expressions.length === 2) {
372
+ const [e0, e1] = callee.expressions;
373
+ if (e0.type === "Literal" && e0.value === 0) {
374
+ return getName(e1);
375
+ }
370
376
  }
371
377
  return null;
372
378
  };
@@ -467,6 +473,7 @@ async function collectTests(ctx, filepath) {
467
473
  interpretTaskModes(
468
474
  file,
469
475
  ctx.config.testNamePattern,
476
+ void 0,
470
477
  hasOnly,
471
478
  false,
472
479
  ctx.config.allowOnly
@@ -21,14 +21,19 @@ async function runBaseTests(method, state) {
21
21
  moduleCache.delete(`mock:${fsPath}`);
22
22
  });
23
23
  }
24
- ctx.files.forEach((i) => state.moduleCache.delete(i));
24
+ ctx.files.forEach((i) => state.moduleCache.delete(
25
+ typeof i === "string" ? i : i.filepath
26
+ ));
25
27
  const [executor, { run }] = await Promise.all([
26
28
  startViteNode({ state, requestStubs: getDefaultRequestStubs() }),
27
- import('./runBaseTests.B7hcVT-s.js')
29
+ import('./runBaseTests.D0dWpzZV.js')
28
30
  ]);
31
+ const fileSpecs = ctx.files.map(
32
+ (f) => typeof f === "string" ? { filepath: f, testLocations: void 0 } : f
33
+ );
29
34
  await run(
30
35
  method,
31
- ctx.files,
36
+ fileSpecs,
32
37
  ctx.config,
33
38
  { environment: state.environment, options: ctx.environment.options },
34
39
  executor
@@ -618,7 +618,7 @@ class CAC extends EventEmitter {
618
618
 
619
619
  const cac = (name = "") => new CAC(name);
620
620
 
621
- var version = "2.2.0-beta.2";
621
+ var version = "3.0.0-beta.2";
622
622
 
623
623
  const apiConfig = (port) => ({
624
624
  port: {
@@ -962,7 +962,7 @@ const cliOptionsConfig = {
962
962
  }
963
963
  },
964
964
  pool: {
965
- description: "Specify pool, if not running in the browser (default: `threads`)",
965
+ description: "Specify pool, if not running in the browser (default: `forks`)",
966
966
  argument: "<pool>",
967
967
  subcommands: null
968
968
  // don't support custom objects
@@ -1218,7 +1218,7 @@ const cliOptionsConfig = {
1218
1218
  }
1219
1219
  },
1220
1220
  project: {
1221
- description: "The name of the project to run if you are using Vitest workspace feature. This can be repeated for multiple projects: `--project=1 --project=2`. You can also filter projects using wildcards like `--project=packages*`",
1221
+ description: "The name of the project to run if you are using Vitest workspace feature. This can be repeated for multiple projects: `--project=1 --project=2`. You can also filter projects using wildcards like `--project=packages*`, and exclude projects with `--project=!pattern`.",
1222
1222
  argument: "<name>",
1223
1223
  array: true
1224
1224
  },
@@ -1296,6 +1296,9 @@ const cliOptionsConfig = {
1296
1296
  printConsoleTrace: {
1297
1297
  description: "Always print console stack traces"
1298
1298
  },
1299
+ includeTaskLocation: {
1300
+ description: "Collect test and suite locations in the `location` property"
1301
+ },
1299
1302
  // CLI only options
1300
1303
  run: {
1301
1304
  description: "Disable watch mode"
@@ -1311,7 +1314,7 @@ const cliOptionsConfig = {
1311
1314
  description: "Start Vitest without running tests. File filters will be ignored, tests will be running only on change (default: `false`)"
1312
1315
  },
1313
1316
  mergeReports: {
1314
- description: "Paths to blob reports directory. If this options is used, Vitest won't run any tests, it will only report previously recorded tests",
1317
+ description: "Path to a blob reports directory. If this options is used, Vitest won't run any tests, it will only report previously recorded tests",
1315
1318
  argument: "[path]",
1316
1319
  transform(value) {
1317
1320
  if (!value || typeof value === "boolean") {
@@ -1350,7 +1353,6 @@ const cliOptionsConfig = {
1350
1353
  poolMatchGlobs: null,
1351
1354
  deps: null,
1352
1355
  name: null,
1353
- includeTaskLocation: null,
1354
1356
  snapshotEnvironment: null,
1355
1357
  compare: null,
1356
1358
  outputJson: null,
@@ -1538,11 +1540,14 @@ async function benchmark(cliFilters, options) {
1538
1540
  console.warn(c.yellow("Benchmarking is an experimental feature.\nBreaking changes might not follow SemVer, please pin Vitest's version when using it."));
1539
1541
  await start("benchmark", cliFilters, options);
1540
1542
  }
1541
- function normalizeCliOptions(argv) {
1543
+ function normalizeCliOptions(cliFilters, argv) {
1542
1544
  if (argv.exclude) {
1543
1545
  argv.cliExclude = toArray(argv.exclude);
1544
1546
  delete argv.exclude;
1545
1547
  }
1548
+ if (cliFilters.some((filter) => filter.includes(":"))) {
1549
+ argv.includeTaskLocation ??= true;
1550
+ }
1546
1551
  return argv;
1547
1552
  }
1548
1553
  async function start(mode, cliFilters, options) {
@@ -1551,13 +1556,13 @@ async function start(mode, cliFilters, options) {
1551
1556
  } catch {
1552
1557
  }
1553
1558
  try {
1554
- const { startVitest } = await import('./cli-api.CB-jIbYQ.js').then(function (n) { return n.e; });
1555
- const ctx = await startVitest(mode, cliFilters.map(normalize), normalizeCliOptions(options));
1556
- if (!ctx?.shouldKeepServer()) {
1557
- await ctx?.exit();
1559
+ const { startVitest } = await import('./cli-api.CETCDGgZ.js').then(function (n) { return n.f; });
1560
+ const ctx = await startVitest(mode, cliFilters.map(normalize), normalizeCliOptions(cliFilters, options));
1561
+ if (!ctx.shouldKeepServer()) {
1562
+ await ctx.exit();
1558
1563
  }
1559
1564
  } catch (e) {
1560
- const { divider } = await import('./utils.DJONn5B5.js').then(function (n) { return n.u; });
1565
+ const { divider } = await import('./utils.CMUTX-p8.js').then(function (n) { return n.u; });
1561
1566
  console.error(`
1562
1567
  ${c.red(divider(c.bold(c.inverse(" Startup Error "))))}`);
1563
1568
  console.error(e);
@@ -1573,7 +1578,7 @@ async function init(project) {
1573
1578
  console.error(new Error('Only the "browser" project is supported. Use "vitest init browser" to create a new project.'));
1574
1579
  process.exit(1);
1575
1580
  }
1576
- const { create } = await import('./creator.IIqd8RWT.js');
1581
+ const { create } = await import('./creator.DcAcUhMD.js');
1577
1582
  await create();
1578
1583
  }
1579
1584
  async function collect(mode, cliFilters, options) {
@@ -1582,14 +1587,14 @@ async function collect(mode, cliFilters, options) {
1582
1587
  } catch {
1583
1588
  }
1584
1589
  try {
1585
- const { prepareVitest, processCollected, outputFileList } = await import('./cli-api.CB-jIbYQ.js').then(function (n) { return n.e; });
1590
+ const { prepareVitest, processCollected, outputFileList } = await import('./cli-api.CETCDGgZ.js').then(function (n) { return n.f; });
1586
1591
  const ctx = await prepareVitest(mode, {
1587
- ...normalizeCliOptions(options),
1592
+ ...normalizeCliOptions(cliFilters, options),
1588
1593
  watch: false,
1589
1594
  run: true
1590
1595
  });
1591
1596
  if (!options.filesOnly) {
1592
- const { tests, errors } = await ctx.collect(cliFilters.map(normalize));
1597
+ const { testModules: tests, unhandledErrors: errors } = await ctx.collect(cliFilters.map(normalize));
1593
1598
  if (errors.length) {
1594
1599
  console.error("\nThere were unhandled errors during test collection");
1595
1600
  errors.forEach((e) => console.error(e));
@@ -1599,12 +1604,12 @@ async function collect(mode, cliFilters, options) {
1599
1604
  }
1600
1605
  processCollected(ctx, tests, options);
1601
1606
  } else {
1602
- const files = await ctx.listFiles(cliFilters.map(normalize));
1607
+ const files = await ctx.getRelevantTestSpecifications(cliFilters.map(normalize));
1603
1608
  outputFileList(files, options);
1604
1609
  }
1605
1610
  await ctx.close();
1606
1611
  } catch (e) {
1607
- const { divider } = await import('./utils.DJONn5B5.js').then(function (n) { return n.u; });
1612
+ const { divider } = await import('./utils.CMUTX-p8.js').then(function (n) { return n.u; });
1608
1613
  console.error(`
1609
1614
  ${c.red(divider(c.bold(c.inverse(" Collect Error "))))}`);
1610
1615
  console.error(e);