supercov 0.0.0 → 0.0.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 (97) hide show
  1. package/bin/supercov.js +2 -5
  2. package/dist/analyze.d.ts +12 -0
  3. package/dist/analyze.d.ts.map +1 -0
  4. package/dist/analyze.js +699 -0
  5. package/dist/analyze.js.map +1 -0
  6. package/dist/cli.d.ts +2 -0
  7. package/dist/cli.d.ts.map +1 -0
  8. package/dist/cli.js +245 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/instrumenter.d.ts +11 -0
  11. package/dist/instrumenter.d.ts.map +1 -0
  12. package/dist/instrumenter.js +940 -0
  13. package/dist/instrumenter.js.map +1 -0
  14. package/dist/integrity.d.ts +10 -0
  15. package/dist/integrity.d.ts.map +1 -0
  16. package/dist/integrity.js +153 -0
  17. package/dist/integrity.js.map +1 -0
  18. package/dist/playwright.d.ts +13 -0
  19. package/dist/playwright.d.ts.map +1 -0
  20. package/dist/playwright.js +794 -0
  21. package/dist/playwright.js.map +1 -0
  22. package/dist/playwrightReporter.d.ts +6 -0
  23. package/dist/playwrightReporter.d.ts.map +1 -0
  24. package/dist/playwrightReporter.js +40 -0
  25. package/dist/playwrightReporter.js.map +1 -0
  26. package/dist/project.d.ts +11 -0
  27. package/dist/project.d.ts.map +1 -0
  28. package/dist/project.js +112 -0
  29. package/dist/project.js.map +1 -0
  30. package/dist/provenance.d.ts +9 -0
  31. package/dist/provenance.d.ts.map +1 -0
  32. package/dist/provenance.js +51 -0
  33. package/dist/provenance.js.map +1 -0
  34. package/dist/query.d.ts +9 -0
  35. package/dist/query.d.ts.map +1 -0
  36. package/dist/query.js +911 -0
  37. package/dist/query.js.map +1 -0
  38. package/dist/queueAdapters.d.ts +15 -0
  39. package/dist/queueAdapters.d.ts.map +1 -0
  40. package/dist/queueAdapters.js +55 -0
  41. package/dist/queueAdapters.js.map +1 -0
  42. package/dist/register.d.mts +2 -0
  43. package/dist/register.d.mts.map +1 -0
  44. package/dist/register.mjs +112 -0
  45. package/dist/register.mjs.map +1 -0
  46. package/dist/reporter.d.ts +17 -0
  47. package/dist/reporter.d.ts.map +1 -0
  48. package/dist/reporter.js +311 -0
  49. package/dist/reporter.js.map +1 -0
  50. package/dist/resolve-loader.d.mts +2 -0
  51. package/dist/resolve-loader.d.mts.map +1 -0
  52. package/dist/resolve-loader.mjs +40 -0
  53. package/dist/resolve-loader.mjs.map +1 -0
  54. package/dist/runtime.d.ts +46 -0
  55. package/dist/runtime.d.ts.map +1 -0
  56. package/dist/runtime.js +480 -0
  57. package/dist/runtime.js.map +1 -0
  58. package/dist/transport.d.ts +15 -0
  59. package/dist/transport.d.ts.map +1 -0
  60. package/dist/transport.js +100 -0
  61. package/dist/transport.js.map +1 -0
  62. package/dist/types.d.ts +353 -0
  63. package/dist/types.d.ts.map +1 -0
  64. package/dist/types.js +2 -0
  65. package/dist/types.js.map +1 -0
  66. package/dist/vitePlugin.d.ts +8 -0
  67. package/dist/vitePlugin.d.ts.map +1 -0
  68. package/dist/vitePlugin.js +83 -0
  69. package/dist/vitePlugin.js.map +1 -0
  70. package/dist/vitest.d.ts +2 -0
  71. package/dist/vitest.d.ts.map +1 -0
  72. package/dist/vitest.js +89 -0
  73. package/dist/vitest.js.map +1 -0
  74. package/dist/vitestReporter.d.ts +28 -0
  75. package/dist/vitestReporter.d.ts.map +1 -0
  76. package/dist/vitestReporter.js +48 -0
  77. package/dist/vitestReporter.js.map +1 -0
  78. package/package.json +21 -9
  79. package/src/analyze.ts +0 -993
  80. package/src/cli.ts +0 -336
  81. package/src/instrumenter.ts +0 -1254
  82. package/src/integrity.ts +0 -187
  83. package/src/playwright.ts +0 -1009
  84. package/src/playwrightReporter.ts +0 -55
  85. package/src/project.ts +0 -149
  86. package/src/provenance.ts +0 -69
  87. package/src/query.ts +0 -1354
  88. package/src/queueAdapters.ts +0 -104
  89. package/src/register.mjs +0 -123
  90. package/src/reporter.ts +0 -431
  91. package/src/resolve-loader.mjs +0 -45
  92. package/src/runtime.ts +0 -656
  93. package/src/transport.ts +0 -132
  94. package/src/types.ts +0 -412
  95. package/src/vitePlugin.ts +0 -121
  96. package/src/vitest.ts +0 -101
  97. package/src/vitestReporter.ts +0 -72
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
package/dist/cli.js ADDED
@@ -0,0 +1,245 @@
1
+ import { spawnSync } from "node:child_process";
2
+ import { createHash } from "node:crypto";
3
+ import { copyFileSync, existsSync, mkdirSync, readFileSync, writeFileSync, } from "node:fs";
4
+ import { dirname, relative, resolve, sep } from "node:path";
5
+ import { fileURLToPath, pathToFileURL } from "node:url";
6
+ import { writeMcdcReport } from "./reporter.js";
7
+ import { coverageQueryCommands, runQueryCommand } from "./query.js";
8
+ import { discoverCoverageProject } from "./project.js";
9
+ import { createRunIntegrity } from "./integrity.js";
10
+ const commandArgs = process.argv.slice(2);
11
+ const rawArgs = commandArgs[0] === "--help" || commandArgs[0] === "-h"
12
+ ? ["help", ...commandArgs.slice(1)]
13
+ : commandArgs;
14
+ const queryCommand = rawArgs[0];
15
+ if (queryCommand && coverageQueryCommands.has(queryCommand)) {
16
+ try {
17
+ await runQueryCommand(queryCommand, rawArgs.slice(1));
18
+ }
19
+ catch (error) {
20
+ console.error(`[supercov] ${error instanceof Error ? error.message : String(error)}`);
21
+ process.exitCode = 2;
22
+ }
23
+ }
24
+ else if (rawArgs[0] && rawArgs[0] !== "--") {
25
+ console.error(`[supercov] Unknown command: ${rawArgs[0]}. Try supercov help.`);
26
+ process.exitCode = 2;
27
+ }
28
+ else {
29
+ const separator = process.argv.indexOf("--");
30
+ const command = separator >= 0 ? process.argv.slice(separator + 1) : [];
31
+ if (command.length === 0) {
32
+ console.error("Usage: supercov -- <test command>");
33
+ process.exit(2);
34
+ }
35
+ const root = process.cwd();
36
+ const project = discoverCoverageProject(root);
37
+ const runId = new Date().toISOString().replace(/[:.]/g, "-");
38
+ const runStartedAt = Date.now();
39
+ const generatedDirectory = resolve(root, ".supercov");
40
+ const evidenceDirectoryRelative = `.supercov/evidence/${runId}`;
41
+ const evidenceDirectory = resolve(root, evidenceDirectoryRelative);
42
+ const generatedPlaywrightConfig = resolve(generatedDirectory, "playwright.config.mjs");
43
+ const generatedViteConfig = resolve(generatedDirectory, "vite.config.mjs");
44
+ const generatedVitestConfig = resolve(generatedDirectory, "vitest.config.mjs");
45
+ const manifestRelative = `.supercov/work/${runId}/mcdc-manifest.json`;
46
+ const manifestPath = resolve(root, manifestRelative);
47
+ const packageSource = fileURLToPath(new URL(".", import.meta.url));
48
+ const runIntegrity = createRunIntegrity(root, project, packageSource);
49
+ mkdirSync(generatedDirectory, { recursive: true });
50
+ mkdirSync(evidenceDirectory, { recursive: true });
51
+ for (const file of [
52
+ "playwright.js",
53
+ "playwrightReporter.js",
54
+ "provenance.js",
55
+ "register.mjs",
56
+ "resolve-loader.mjs",
57
+ "transport.js",
58
+ "types.js",
59
+ ]) {
60
+ copyFileSync(resolve(packageSource, file), resolve(generatedDirectory, file));
61
+ }
62
+ const generatedPlaywrightAdapter = resolve(generatedDirectory, "playwright.js");
63
+ const generatedPlaywrightReporter = resolve(generatedDirectory, "playwrightReporter.js");
64
+ writeFileSync(generatedPlaywrightAdapter, readFileSync(generatedPlaywrightAdapter, "utf8")
65
+ .replace("__SUPERCOV_EVIDENCE_DIRECTORY__", evidenceDirectoryRelative)
66
+ .replace("__SUPERCOV_PLAYWRIGHT_MODULE__", project.playwrightModule)
67
+ .replace("__SUPERCOV_RUN_ID__", runId));
68
+ writeFileSync(generatedPlaywrightReporter, readFileSync(generatedPlaywrightReporter, "utf8").replace("__SUPERCOV_EVIDENCE_DIRECTORY__", evidenceDirectoryRelative));
69
+ const generatedResolveLoader = resolve(generatedDirectory, "resolve-loader.mjs");
70
+ writeFileSync(generatedResolveLoader, readFileSync(generatedResolveLoader, "utf8").replace("__SUPERCOV_PLAYWRIGHT_MODULE__", project.playwrightModule));
71
+ if (project.playwrightConfig) {
72
+ const configImport = project.essentialOffline
73
+ ? `../${relative(root, project.playwrightConfig).split(sep).join("/")}`
74
+ : pathToFileURL(project.playwrightConfig).href;
75
+ writeFileSync(generatedPlaywrightConfig, [
76
+ `import './register.mjs';`,
77
+ `import { isAbsolute, resolve } from 'node:path';`,
78
+ `import original from '${configImport}';`,
79
+ `const resolved = typeof original === 'function' ? await original({ command: 'test', mode: 'test' }) : original;`,
80
+ `const originalDirectory = ${JSON.stringify(dirname(project.playwrightConfig))};`,
81
+ `const absoluteFromOriginal = value => value && !isAbsolute(value) ? resolve(originalDirectory, value) : value;`,
82
+ `const normalizeWebServer = server => server ? ({ ...server, cwd: absoluteFromOriginal(server.cwd ?? originalDirectory) }) : server;`,
83
+ `const normalized = { ...resolved,`,
84
+ ` testDir: absoluteFromOriginal(resolved?.testDir),`,
85
+ ` outputDir: absoluteFromOriginal(resolved?.outputDir),`,
86
+ ` snapshotDir: absoluteFromOriginal(resolved?.snapshotDir),`,
87
+ ` projects: resolved?.projects?.map(project => ({ ...project, testDir: absoluteFromOriginal(project.testDir), outputDir: absoluteFromOriginal(project.outputDir), snapshotDir: absoluteFromOriginal(project.snapshotDir) })),`,
88
+ ` webServer: Array.isArray(resolved?.webServer) ? resolved.webServer.map(normalizeWebServer) : normalizeWebServer(resolved?.webServer),`,
89
+ `};`,
90
+ `const configuredReporters = normalized.reporter;`,
91
+ `const reporters = configuredReporters`,
92
+ ` ? (typeof configuredReporters === 'string' ? [[configuredReporters]] : (Array.isArray(configuredReporters[0]) ? configuredReporters : [configuredReporters]))`,
93
+ ` : [['list']];`,
94
+ `const coverageReporter = process.env.TEST_IN_CONTAINER === 'true'`,
95
+ ` ? '/workspace/.supercov/playwrightReporter.js'`,
96
+ ` : ${JSON.stringify(resolve(packageSource, "playwrightReporter.js"))};`,
97
+ `export default { ...normalized, reporter: [...reporters, [coverageReporter]] };`,
98
+ "",
99
+ ].join("\n"));
100
+ }
101
+ writeFileSync(generatedViteConfig, [
102
+ `import { loadConfigFromFile, mergeConfig } from 'vite';`,
103
+ `import { mcdcVitePlugin } from '${pathToFileURL(resolve(packageSource, "vitePlugin.js")).href}';`,
104
+ `export default async function supercovViteConfig(env) {`,
105
+ ` const loaded = await loadConfigFromFile(env, undefined, process.cwd());`,
106
+ ` return mergeConfig(loaded?.config ?? {}, { plugins: [mcdcVitePlugin(${JSON.stringify({ root, sourceRoots: project.sourceRoots, manifestPath })})] });`,
107
+ `}`,
108
+ "",
109
+ ].join("\n"));
110
+ writeFileSync(generatedVitestConfig, [
111
+ `import { loadConfigFromFile, mergeConfig } from 'vite';`,
112
+ `import { mcdcVitePlugin } from '${pathToFileURL(resolve(packageSource, "vitePlugin.js")).href}';`,
113
+ `import SupercovVitestReporter from '${pathToFileURL(resolve(packageSource, "vitestReporter.js")).href}';`,
114
+ `const discoveredConfig = ${JSON.stringify(project.vitestConfig)};`,
115
+ `export default async function supercovVitestConfig(env) {`,
116
+ ` const originalPath = process.env.SUPERCOV_ORIGINAL_VITEST_CONFIG || discoveredConfig;`,
117
+ ` const loaded = originalPath ? await loadConfigFromFile(env, originalPath, process.cwd()) : undefined;`,
118
+ ` const config = mergeConfig(loaded?.config ?? {}, {`,
119
+ ` plugins: [mcdcVitePlugin(${JSON.stringify({ root, sourceRoots: project.sourceRoots, manifestPath })})],`,
120
+ ` test: { setupFiles: [${JSON.stringify(resolve(packageSource, "vitest.js"))}], maxConcurrency: 1 },`,
121
+ ` });`,
122
+ ` const configuredReporters = loaded?.config?.test?.reporters;`,
123
+ ` config.test ??= {};`,
124
+ ` config.test.reporters = configuredReporters`,
125
+ ` ? [...(Array.isArray(configuredReporters) ? configuredReporters : [configuredReporters]), new SupercovVitestReporter()]`,
126
+ ` : ['default', new SupercovVitestReporter()];`,
127
+ ` return config;`,
128
+ `}`,
129
+ "",
130
+ ].join("\n"));
131
+ const coverageEnv = {
132
+ ...process.env,
133
+ TEST_MCDC: "true",
134
+ TEST_OFFLINE_RESULTS_RUN_ID: runId,
135
+ SUPERCOV_EVIDENCE_DIR: evidenceDirectoryRelative,
136
+ SUPERCOV_RUN_ID: runId,
137
+ SUPERCOV_MANIFEST: manifestRelative,
138
+ SUPERCOV_PLAYWRIGHT_MODULE: project.playwrightModule,
139
+ SUPERCOV_PROJECT_ROOT: root,
140
+ SUPERCOV_GENERATED_VITEST_CONFIG: generatedVitestConfig,
141
+ SUPERCOV_GENERATED_PLAYWRIGHT_CONFIG: generatedPlaywrightConfig,
142
+ };
143
+ const testNodeOptions = [
144
+ process.env["NODE_OPTIONS"],
145
+ `--import=${pathToFileURL(resolve(generatedDirectory, "register.mjs")).href}`,
146
+ ]
147
+ .filter(Boolean)
148
+ .join(" ");
149
+ console.error(`[supercov] instrumenting ${root}`);
150
+ const instrumentedBuild = spawnSync(project.buildCommand[0], [
151
+ ...project.buildCommand.slice(1),
152
+ "--",
153
+ "--config",
154
+ ".supercov/vite.config.mjs",
155
+ ], {
156
+ cwd: root,
157
+ env: {
158
+ ...coverageEnv,
159
+ ...(project.essentialOffline ? { TEST_OFFLINE: "true" } : {}),
160
+ NODE_ENV: "production",
161
+ },
162
+ stdio: "inherit",
163
+ });
164
+ let testRun;
165
+ let reportFailed = false;
166
+ if (!instrumentedBuild.error && instrumentedBuild.status === 0) {
167
+ // The Essential offline VM pool keys its snapshot on dependency overlays,
168
+ // not the mounted application build. A tiny build-hash overlay invalidates
169
+ // the warm snapshot exactly when the instrumented bundle changes. Other
170
+ // runners simply ignore these environment variables.
171
+ const overlayPackage = "essential-seo/.mcdc-pool";
172
+ if (project.essentialOffline) {
173
+ const overlayDist = resolve(root, ".mcdc-pool/dist");
174
+ const overlayMarker = resolve(overlayDist, "instrumented-build.sha256");
175
+ const bundleHash = createHash("sha256")
176
+ .update(readFileSync(resolve(root, "build/server/index.js")))
177
+ .update(readFileSync(manifestPath))
178
+ .digest("hex");
179
+ mkdirSync(overlayDist, { recursive: true });
180
+ if (!existsSync(overlayMarker) ||
181
+ readFileSync(overlayMarker, "utf8").trim() !== bundleHash) {
182
+ writeFileSync(overlayMarker, `${bundleHash}\n`);
183
+ }
184
+ }
185
+ console.error(`[supercov] running: ${command.join(" ")}`);
186
+ testRun = spawnSync(command[0], command.slice(1), {
187
+ cwd: root,
188
+ stdio: "inherit",
189
+ env: {
190
+ ...coverageEnv,
191
+ NODE_OPTIONS: testNodeOptions,
192
+ ...(!project.essentialOffline
193
+ ? {
194
+ SUPERCOV_CJS_INTERCEPT: "1",
195
+ }
196
+ : {}),
197
+ ...(project.essentialOffline
198
+ ? {
199
+ TEST_OFFLINE_LOCAL_OVERLAY: "true",
200
+ TEST_OFFLINE_LOCAL_OVERLAY_PKGS: overlayPackage,
201
+ TEST_PLAYWRIGHT_CONFIG: ".supercov/playwright.config.mjs",
202
+ }
203
+ : {}),
204
+ },
205
+ });
206
+ try {
207
+ writeMcdcReport(evidenceDirectory, runId, runStartedAt, manifestPath, testRun.status, runIntegrity);
208
+ const storedRunDirectory = resolve(root, ".supercov/runs", runId);
209
+ writeFileSync(resolve(storedRunDirectory, "run.json"), `${JSON.stringify({
210
+ id: runId,
211
+ startedAt: new Date(runStartedAt).toISOString(),
212
+ durationMs: Date.now() - runStartedAt,
213
+ command,
214
+ testExitCode: testRun.status,
215
+ integrity: runIntegrity,
216
+ }, null, 2)}\n`);
217
+ }
218
+ catch (error) {
219
+ reportFailed = true;
220
+ console.error("[supercov] failed to generate report", error);
221
+ }
222
+ }
223
+ console.error("[supercov] restoring the ordinary build");
224
+ const restore = spawnSync(project.buildCommand[0], project.buildCommand.slice(1), {
225
+ cwd: root,
226
+ env: {
227
+ ...process.env,
228
+ ...(project.essentialOffline ? { TEST_OFFLINE: "true" } : {}),
229
+ NODE_ENV: "production",
230
+ },
231
+ stdio: "inherit",
232
+ });
233
+ if (instrumentedBuild.error)
234
+ throw instrumentedBuild.error;
235
+ if (testRun?.error)
236
+ throw testRun.error;
237
+ if (restore.error)
238
+ throw restore.error;
239
+ process.exitCode =
240
+ instrumentedBuild.status ||
241
+ testRun?.status ||
242
+ restore.status ||
243
+ (reportFailed ? 1 : 0);
244
+ }
245
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,YAAY,EACZ,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1C,MAAM,OAAO,GACX,WAAW,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI;IACpD,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,WAAW,CAAC;AAClB,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhC,IAAI,YAAY,IAAI,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;IAC5D,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,cAAc,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvE,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;KAAM,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;IAC7C,OAAO,CAAC,KAAK,CACX,+BAA+B,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAChE,CAAC;IACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC;KAAM,CAAC;IACN,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,yBAAyB,GAAG,sBAAsB,KAAK,EAAE,CAAC;IAChE,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;IACnE,MAAM,yBAAyB,GAAG,OAAO,CACvC,kBAAkB,EAClB,uBAAuB,CACxB,CAAC;IACF,MAAM,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IAC3E,MAAM,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,kBAAkB,KAAK,qBAAqB,CAAC;IACtE,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACtE,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI;QACjB,eAAe;QACf,uBAAuB;QACvB,eAAe;QACf,cAAc;QACd,oBAAoB;QACpB,cAAc;QACd,UAAU;KACX,EAAE,CAAC;QACF,YAAY,CACV,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,EAC5B,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAClC,CAAC;IACJ,CAAC;IACD,MAAM,0BAA0B,GAAG,OAAO,CACxC,kBAAkB,EAClB,eAAe,CAChB,CAAC;IACF,MAAM,2BAA2B,GAAG,OAAO,CACzC,kBAAkB,EAClB,uBAAuB,CACxB,CAAC;IACF,aAAa,CACX,0BAA0B,EAC1B,YAAY,CAAC,0BAA0B,EAAE,MAAM,CAAC;SAC7C,OAAO,CACN,iCAAiC,EACjC,yBAAyB,CAC1B;SACA,OAAO,CACN,gCAAgC,EAChC,OAAO,CAAC,gBAAgB,CACzB;SACA,OAAO,CACN,qBAAqB,EACrB,KAAK,CACN,CACJ,CAAC;IACF,aAAa,CACX,2BAA2B,EAC3B,YAAY,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC,OAAO,CACvD,iCAAiC,EACjC,yBAAyB,CAC1B,CACF,CAAC;IACF,MAAM,sBAAsB,GAAG,OAAO,CACpC,kBAAkB,EAClB,oBAAoB,CACrB,CAAC;IACF,aAAa,CACX,sBAAsB,EACtB,YAAY,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,OAAO,CAClD,gCAAgC,EAChC,OAAO,CAAC,gBAAgB,CACzB,CACF,CAAC;IACF,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB;YAC3C,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACvE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC;QACjD,aAAa,CACX,yBAAyB,EACzB;YACE,0BAA0B;YAC1B,kDAAkD;YAClD,yBAAyB,YAAY,IAAI;YACzC,iHAAiH;YACjH,6BAA6B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG;YACjF,gHAAgH;YAChH,qIAAqI;YACrI,mCAAmC;YACnC,qDAAqD;YACrD,yDAAyD;YACzD,6DAA6D;YAC7D,+NAA+N;YAC/N,yIAAyI;YACzI,IAAI;YACJ,kDAAkD;YAClD,uCAAuC;YACvC,iKAAiK;YACjK,iBAAiB;YACjB,mEAAmE;YACnE,kDAAkD;YAClD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC,GAAG;YACzE,iFAAiF;YACjF,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IACD,aAAa,CACX,mBAAmB,EACnB;QACE,yDAAyD;QACzD,mCAAmC,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,IAAI;QAClG,yDAAyD;QACzD,2EAA2E;QAC3E,yEAAyE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,QAAQ;QACzJ,GAAG;QACH,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACF,aAAa,CACX,qBAAqB,EACrB;QACE,yDAAyD;QACzD,mCAAmC,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,IAAI;QAClG,uCAAuC,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,IAAI;QAC1G,4BAA4B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG;QACnE,2DAA2D;QAC3D,yFAAyF;QACzF,yGAAyG;QACzG,sDAAsD;QACtD,gCAAgC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,KAAK;QAC7G,4BAA4B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,yBAAyB;QACxG,OAAO;QACP,gEAAgE;QAChE,uBAAuB;QACvB,+CAA+C;QAC/C,6HAA6H;QAC7H,kDAAkD;QAClD,kBAAkB;QAClB,GAAG;QACH,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACF,MAAM,WAAW,GAAG;QAClB,GAAG,OAAO,CAAC,GAAG;QACd,SAAS,EAAE,MAAM;QACjB,2BAA2B,EAAE,KAAK;QAClC,qBAAqB,EAAE,yBAAyB;QAChD,eAAe,EAAE,KAAK;QACtB,iBAAiB,EAAE,gBAAgB;QACnC,0BAA0B,EAAE,OAAO,CAAC,gBAAgB;QACpD,qBAAqB,EAAE,IAAI;QAC3B,gCAAgC,EAAE,qBAAqB;QACvD,oCAAoC,EAAE,yBAAyB;KAChE,CAAC;IACF,MAAM,eAAe,GAAG;QACtB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAC3B,YAAY,aAAa,CAAC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE;KAC9E;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,CAAC,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,SAAS,CACjC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAE,EACxB;QACE,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QAChC,IAAI;QACJ,UAAU;QACV,2BAA2B;KAC5B,EACD;QACE,GAAG,EAAE,IAAI;QACT,GAAG,EAAE;YACH,GAAG,WAAW;YACd,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,QAAQ,EAAE,YAAY;SACvB;QACD,KAAK,EAAE,SAAS;KACjB,CACF,CAAC;IAEF,IAAI,OAAiD,CAAC;IACtD,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,0EAA0E;QAC1E,2EAA2E;QAC3E,wEAAwE;QACxE,qDAAqD;QACrD,MAAM,cAAc,GAAG,0BAA0B,CAAC;QAClD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;YACrD,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC;YACxE,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;iBACpC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC;iBAC5D,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;iBAClC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjB,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,IACE,CAAC,UAAU,CAAC,aAAa,CAAC;gBAC1B,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,UAAU,EACzD,CAAC;gBACD,aAAa,CAAC,aAAa,EAAE,GAAG,UAAU,IAAI,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,uBAAuB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1D,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACjD,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE;gBACH,GAAG,WAAW;gBACd,YAAY,EAAE,eAAe;gBAC7B,GAAG,CAAC,CAAC,OAAO,CAAC,gBAAgB;oBAC3B,CAAC,CAAC;wBACE,sBAAsB,EAAE,GAAG;qBAC5B;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,gBAAgB;oBAC1B,CAAC,CAAC;wBACE,0BAA0B,EAAE,MAAM;wBAClC,+BAA+B,EAAE,cAAc;wBAC/C,sBAAsB,EACpB,iCAAiC;qBACpC;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;SACF,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,eAAe,CACb,iBAAiB,EACjB,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,OAAO,CAAC,MAAM,EACd,YAAY,CACb,CAAC;YACF,MAAM,kBAAkB,GAAG,OAAO,CAChC,IAAI,EACJ,gBAAgB,EAChB,KAAK,CACN,CAAC;YACF,aAAa,CACX,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC,EACvC,GAAG,IAAI,CAAC,SAAS,CACf;gBACE,EAAE,EAAE,KAAK;gBACT,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;gBAC/C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY;gBACrC,OAAO;gBACP,YAAY,EAAE,OAAO,CAAC,MAAM;gBAC5B,SAAS,EAAE,YAAY;aACxB,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CACN,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,GAAG,IAAI,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,SAAS,CACvB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAE,EACxB,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAC7B;QACE,GAAG,EAAE,IAAI;QACT,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,QAAQ,EAAE,YAAY;SACvB;QACD,KAAK,EAAE,SAAS;KACjB,CACF,CAAC;IAEF,IAAI,iBAAiB,CAAC,KAAK;QAAE,MAAM,iBAAiB,CAAC,KAAK,CAAC;IAC3D,IAAI,OAAO,EAAE,KAAK;QAAE,MAAM,OAAO,CAAC,KAAK,CAAC;IACxC,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,OAAO,CAAC,KAAK,CAAC;IACvC,OAAO,CAAC,QAAQ;QACd,iBAAiB,CAAC,MAAM;YACxB,OAAO,EAAE,MAAM;YACf,OAAO,CAAC,MAAM;YACd,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import generate from "@babel/generator";
2
+ import type { CoverageManifest, McdcDecisionMeta } from "./types.ts";
3
+ export interface InstrumentMcdcResult {
4
+ code: string;
5
+ map: ReturnType<typeof generate>["map"];
6
+ manifest: CoverageManifest;
7
+ decisions: McdcDecisionMeta[];
8
+ }
9
+ export declare function instrumentMcdc(code: string, file: string): InstrumentMcdcResult;
10
+ export declare const mcdcRuntimeModuleId = "virtual:supercov-runtime";
11
+ //# sourceMappingURL=instrumenter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instrumenter.d.ts","sourceRoot":"","sources":["../src/instrumenter.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AAIxC,OAAO,KAAK,EAEV,gBAAgB,EAGhB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAyKpB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;IACxC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,gBAAgB,EAAE,CAAC;CAC/B;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,oBAAoB,CAqiCtB;AAED,eAAO,MAAM,mBAAmB,6BAAiB,CAAC"}