@vitest/coverage-c8
Advanced tools
Comparing version 0.30.1 to 0.31.0
import inspector from 'node:inspector'; | ||
import { provider } from 'std-env'; | ||
@@ -20,2 +21,4 @@ const session = new inspector.Session(); | ||
}); | ||
if (provider === "stackblitz") | ||
resolve({ result: [] }); | ||
}); | ||
@@ -22,0 +25,0 @@ } |
import inspector from 'node:inspector'; | ||
import { provider } from 'std-env'; | ||
@@ -20,2 +21,4 @@ const session = new inspector.Session(); | ||
}); | ||
if (provider === "stackblitz") | ||
resolve({ result: [] }); | ||
}); | ||
@@ -22,0 +25,0 @@ } |
import { existsSync, promises } from 'fs'; | ||
import _url from 'url'; | ||
import MagicString from 'magic-string'; | ||
import remapping from '@ampproject/remapping'; | ||
import c from 'picocolors'; | ||
@@ -109,2 +111,3 @@ import { provider } from 'std-env'; | ||
const VITE_EXPORTS_LINE_PATTERN = /Object\.defineProperty\(__vite_ssr_exports__.*\n/g; | ||
class C8CoverageProvider extends BaseCoverageProvider { | ||
@@ -167,3 +170,6 @@ constructor() { | ||
const extensions = Array.isArray(this.options.extension) ? this.options.extension : [this.options.extension]; | ||
const entries = Array.from(this.ctx.vitenode.fetchCache.entries()).filter((entry) => report._shouldInstrument(entry[0])).map(([file, { result }]) => { | ||
const fetchCache = this.ctx.projects.map( | ||
(project) => Array.from(project.vitenode.fetchCache.entries()) | ||
).flat(); | ||
const entries = Array.from(fetchCache).filter((entry) => report._shouldInstrument(entry[0])).map(([file, { result }]) => { | ||
if (!result.map) | ||
@@ -214,3 +220,3 @@ return null; | ||
sourceMap: { | ||
sourcemap: data.map | ||
sourcemap: removeViteHelpersFromSourceMaps(data.source, data.map) | ||
}, | ||
@@ -231,2 +237,3 @@ source: Array(offset).fill(".").join("") + data.source | ||
}, | ||
perFile: this.options.perFile, | ||
configurationFile: this.ctx.server.config.configFile | ||
@@ -237,3 +244,17 @@ }); | ||
} | ||
function removeViteHelpersFromSourceMaps(source, map) { | ||
if (!source || !source.match(VITE_EXPORTS_LINE_PATTERN)) | ||
return map; | ||
const sourceWithoutHelpers = new MagicString(source); | ||
sourceWithoutHelpers.replaceAll(VITE_EXPORTS_LINE_PATTERN, "\n"); | ||
const mapWithoutHelpers = sourceWithoutHelpers.generateMap({ | ||
hires: true | ||
}); | ||
const combinedMap = remapping( | ||
[{ ...mapWithoutHelpers, version: 3 }, map], | ||
() => null | ||
); | ||
return combinedMap; | ||
} | ||
export { C8CoverageProvider }; |
{ | ||
"name": "@vitest/coverage-c8", | ||
"type": "module", | ||
"version": "0.30.1", | ||
"version": "0.31.0", | ||
"description": "C8 coverage provider for Vitest", | ||
"author": "Anthony Fu <anthonyfu117@hotmail.com>", | ||
"license": "MIT", | ||
"funding": "https://github.com/sponsors/antfu", | ||
"homepage": "https://github.com/vitest-dev/vitest#readme", | ||
"funding": "https://opencollective.com/vitest", | ||
"homepage": "https://github.com/vitest-dev/vitest/tree/main/packages/coverage-c8#readme", | ||
"repository": { | ||
@@ -43,3 +43,5 @@ "type": "git", | ||
"dependencies": { | ||
"@ampproject/remapping": "^2.2.0", | ||
"c8": "^7.13.0", | ||
"magic-string": "^0.30.0", | ||
"picocolors": "^1.0.0", | ||
@@ -50,4 +52,4 @@ "std-env": "^3.3.2" | ||
"pathe": "^1.1.0", | ||
"vitest": "0.30.1", | ||
"vite-node": "0.30.1" | ||
"vite-node": "0.31.0", | ||
"vitest": "0.31.0" | ||
}, | ||
@@ -54,0 +56,0 @@ "scripts": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
14784
381
6
2
+ Added@ampproject/remapping@^2.2.0
+ Addedmagic-string@^0.30.0
+ Added@ampproject/remapping@2.3.0(transitive)
+ Added@jridgewell/gen-mapping@0.3.5(transitive)
+ Added@jridgewell/set-array@1.2.1(transitive)
+ Addedvite@5.4.5(transitive)
- Removedvite@5.4.6(transitive)