@vitest/coverage-v8 4.0.18 → 4.1.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.
package/dist/browser.js CHANGED
@@ -52,6 +52,12 @@ function filterResult(coverage) {
52
52
  if (coverage.url === window.location.href) {
53
53
  return false;
54
54
  }
55
+ if (coverage.url.includes("/@id/@vitest/")) {
56
+ return false;
57
+ }
58
+ if (coverage.url.includes("/@vite/client")) {
59
+ return false;
60
+ }
55
61
  return true;
56
62
  }
57
63
 
package/dist/index.js CHANGED
@@ -55,6 +55,12 @@ function filterResult(coverage) {
55
55
  if (coverage.url.includes("/node_modules/")) {
56
56
  return false;
57
57
  }
58
+ if (coverage.url.includes("/@id/@vitest/")) {
59
+ return false;
60
+ }
61
+ if (coverage.url.includes("/@vite/client")) {
62
+ return false;
63
+ }
58
64
  return true;
59
65
  }
60
66
 
@@ -1,8 +1,7 @@
1
1
  import { CoverageMap } from 'istanbul-lib-coverage';
2
2
  import { ProxifiedModule } from 'magicast';
3
3
  import { Profiler } from 'node:inspector';
4
- import { ResolvedCoverageOptions, CoverageProvider, Vitest, ReportContext } from 'vitest/node';
5
- import { BaseCoverageProvider } from 'vitest/coverage';
4
+ import { BaseCoverageProvider, ResolvedCoverageOptions, CoverageProvider, Vitest, ReportContext } from 'vitest/node';
6
5
 
7
6
  interface ScriptCoverageWithOffset extends Profiler.ScriptCoverage {
8
7
  startOffset: number;
package/dist/provider.js CHANGED
@@ -9,11 +9,10 @@ import { parseModule } from 'magicast';
9
9
  import { createDebug } from 'obug';
10
10
  import { provider } from 'std-env';
11
11
  import c from 'tinyrainbow';
12
- import { BaseCoverageProvider } from 'vitest/coverage';
13
- import { parseAstAsync } from 'vitest/node';
12
+ import { BaseCoverageProvider, parseAstAsync } from 'vitest/node';
14
13
  import { n as normalize } from './pathe.M-eThtNZ-BTaAGrLg.js';
15
14
 
16
- var version = "4.0.18";
15
+ var version = "4.1.0-beta.2";
17
16
 
18
17
  const FILE_PROTOCOL = "file://";
19
18
  const debug = createDebug("vitest:coverage");
@@ -94,7 +93,8 @@ class V8CoverageProvider extends BaseCoverageProvider {
94
93
  }
95
94
  }
96
95
  async parseConfigModule(configFilePath) {
97
- return parseModule(await promises.readFile(configFilePath, "utf8"));
96
+ const contents = await promises.readFile(configFilePath, "utf8");
97
+ return parseModule(`${contents}${this.autoUpdateMarker}`);
98
98
  }
99
99
  async getCoverageMapForUncoveredFiles(testedFiles) {
100
100
  const transform = this.createUncoveredFileTransformer(this.ctx);
@@ -190,7 +190,10 @@ class V8CoverageProvider extends BaseCoverageProvider {
190
190
  });
191
191
  }
192
192
  async getSources(url, onTransform, functions = []) {
193
- const transformResult = await onTransform(removeStartsWith(url, FILE_PROTOCOL)).catch(() => undefined);
193
+ // TODO: need to standardize file urls before this call somehow, this is messy
194
+ const filepath = url.match(/^file:\/\/\/\w:\//) ? url.slice(8) : removeStartsWith(url, FILE_PROTOCOL);
195
+ // TODO: do we still need to "catch" here? why would it fail?
196
+ const transformResult = await onTransform(filepath).catch(() => null);
194
197
  const map = transformResult?.map;
195
198
  const code = transformResult?.code;
196
199
  if (code == null) {
@@ -220,18 +223,16 @@ class V8CoverageProvider extends BaseCoverageProvider {
220
223
  if (environment === "__browser__" && !project.browser) {
221
224
  throw new Error(`Cannot access browser module graph because it was torn down.`);
222
225
  }
223
- async function onTransform(filepath) {
224
- if (environment === "__browser__" && project.browser) {
225
- const result = await project.browser.vite.transformRequest(removeStartsWith(filepath, project.config.root));
226
- if (result) {
227
- return {
228
- ...result,
229
- code: `${result.code}// <inline-source-map>`
230
- };
231
- }
226
+ const onTransform = async (filepath) => {
227
+ const result = await this.transformFile(filepath, project, environment);
228
+ if (result && environment === "__browser__" && project.browser) {
229
+ return {
230
+ ...result,
231
+ code: `${result.code}// <inline-source-map>`
232
+ };
232
233
  }
233
- return project.vite.environments[environment].transformRequest(filepath);
234
- }
234
+ return result;
235
+ };
235
236
  const scriptCoverages = [];
236
237
  for (const result of coverage.result) {
237
238
  if (environment === "__browser__") {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vitest/coverage-v8",
3
3
  "type": "module",
4
- "version": "4.0.18",
4
+ "version": "4.1.0-beta.2",
5
5
  "description": "V8 coverage provider for Vitest",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",
@@ -41,8 +41,8 @@
41
41
  "dist"
42
42
  ],
43
43
  "peerDependencies": {
44
- "@vitest/browser": "4.0.18",
45
- "vitest": "4.0.18"
44
+ "@vitest/browser": "4.1.0-beta.2",
45
+ "vitest": "4.1.0-beta.2"
46
46
  },
47
47
  "peerDependenciesMeta": {
48
48
  "@vitest/browser": {
@@ -59,15 +59,15 @@
59
59
  "obug": "^2.1.1",
60
60
  "std-env": "^3.10.0",
61
61
  "tinyrainbow": "^3.0.3",
62
- "@vitest/utils": "4.0.18"
62
+ "@vitest/utils": "4.1.0-beta.2"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@types/istanbul-lib-coverage": "^2.0.6",
66
66
  "@types/istanbul-lib-report": "^3.0.3",
67
67
  "@types/istanbul-reports": "^3.0.4",
68
68
  "pathe": "^2.0.3",
69
- "@vitest/browser": "4.0.18",
70
- "vitest": "4.0.18"
69
+ "@vitest/browser": "4.1.0-beta.2",
70
+ "vitest": "4.1.0-beta.2"
71
71
  },
72
72
  "scripts": {
73
73
  "build": "premove dist && rollup -c",