@gnapi/cotester 1.2.4 → 1.2.6

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 (49) hide show
  1. package/dist/analyzer.d.ts +5 -0
  2. package/dist/analyzer.js +7 -2
  3. package/dist/analyzer.js.map +1 -1
  4. package/dist/auditLogger.d.ts +46 -0
  5. package/dist/auditLogger.js +107 -0
  6. package/dist/auditLogger.js.map +1 -0
  7. package/dist/checker.d.ts +3 -1
  8. package/dist/checker.js +1 -0
  9. package/dist/checker.js.map +1 -1
  10. package/dist/cli.js +39 -0
  11. package/dist/cli.js.map +1 -1
  12. package/dist/configManager.d.ts +27 -0
  13. package/dist/configManager.js +87 -17
  14. package/dist/configManager.js.map +1 -1
  15. package/dist/fileWorker.js +6 -1
  16. package/dist/fileWorker.js.map +1 -1
  17. package/dist/frameworkAdapter.d.ts +51 -0
  18. package/dist/frameworkAdapter.js +77 -0
  19. package/dist/frameworkAdapter.js.map +1 -0
  20. package/dist/generator.d.ts +24 -1
  21. package/dist/generator.js +167 -69
  22. package/dist/generator.js.map +1 -1
  23. package/dist/hooksInstaller.d.ts +1 -0
  24. package/dist/hooksInstaller.js +246 -0
  25. package/dist/hooksInstaller.js.map +1 -0
  26. package/dist/importRepairer.d.ts +22 -0
  27. package/dist/importRepairer.js +226 -0
  28. package/dist/importRepairer.js.map +1 -0
  29. package/dist/interfaceShapeResolver.js +8 -3
  30. package/dist/interfaceShapeResolver.js.map +1 -1
  31. package/dist/migrator.d.ts +49 -0
  32. package/dist/migrator.js +335 -0
  33. package/dist/migrator.js.map +1 -0
  34. package/dist/mockGenerator.js +25 -1
  35. package/dist/mockGenerator.js.map +1 -1
  36. package/dist/reporter.d.ts +10 -0
  37. package/dist/reporter.js +270 -0
  38. package/dist/reporter.js.map +1 -0
  39. package/dist/scenarioEngine.js +4 -1
  40. package/dist/scenarioEngine.js.map +1 -1
  41. package/dist/sensitiveValueDetector.d.ts +62 -0
  42. package/dist/sensitiveValueDetector.js +147 -0
  43. package/dist/sensitiveValueDetector.js.map +1 -0
  44. package/dist/sharedMockRegistry.d.ts +27 -0
  45. package/dist/sharedMockRegistry.js +223 -0
  46. package/dist/sharedMockRegistry.js.map +1 -0
  47. package/dist/watcher.js +10 -1
  48. package/dist/watcher.js.map +1 -1
  49. package/package.json +1 -1
@@ -0,0 +1,335 @@
1
+ "use strict";
2
+ /**
3
+ * Version Upgrade Command — `cotester migrate`
4
+ *
5
+ * Scans all cotester-generated test and mock files, detects their format
6
+ * version, and upgrades them in-place to the current version.
7
+ *
8
+ * Version history
9
+ * ───────────────
10
+ * v1 (unversioned) Files have `// @cotester-generated` but no version line.
11
+ * Describe blocks lack `@testgen-sig:` fingerprint comments.
12
+ * Mock headers have no version line.
13
+ *
14
+ * v2 (current) Test files: second line is `// @cotester-version: 2`.
15
+ * Test files: `// @testgen-sig:` comments precede each describe.
16
+ * Mock files: second header line is `// @cotester-version: 2`.
17
+ *
18
+ * v1 → v2 transformations
19
+ * ───────────────────────
20
+ * Test files:
21
+ * 1. Insert `// @cotester-version: 2` immediately after `// @cotester-generated`.
22
+ * 2. For each describe('fnName', ...) block, if no preceding @testgen-sig comment
23
+ * exists, insert one by re-analysing the source file to get the current
24
+ * signature fingerprint.
25
+ *
26
+ * Mock files:
27
+ * 1. Insert `// @cotester-version: 2` after the `// Auto-generated mock data for`
28
+ * first-line header.
29
+ *
30
+ * All transformations are idempotent — running `cotester migrate` a second time
31
+ * has no effect on already-upgraded files.
32
+ */
33
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
34
+ if (k2 === undefined) k2 = k;
35
+ var desc = Object.getOwnPropertyDescriptor(m, k);
36
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
37
+ desc = { enumerable: true, get: function() { return m[k]; } };
38
+ }
39
+ Object.defineProperty(o, k2, desc);
40
+ }) : (function(o, m, k, k2) {
41
+ if (k2 === undefined) k2 = k;
42
+ o[k2] = m[k];
43
+ }));
44
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
45
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
46
+ }) : function(o, v) {
47
+ o["default"] = v;
48
+ });
49
+ var __importStar = (this && this.__importStar) || (function () {
50
+ var ownKeys = function(o) {
51
+ ownKeys = Object.getOwnPropertyNames || function (o) {
52
+ var ar = [];
53
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
54
+ return ar;
55
+ };
56
+ return ownKeys(o);
57
+ };
58
+ return function (mod) {
59
+ if (mod && mod.__esModule) return mod;
60
+ var result = {};
61
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
62
+ __setModuleDefault(result, mod);
63
+ return result;
64
+ };
65
+ })();
66
+ Object.defineProperty(exports, "__esModule", { value: true });
67
+ exports.runMigrate = runMigrate;
68
+ const fs = __importStar(require("fs"));
69
+ const path = __importStar(require("path"));
70
+ const utils_1 = require("./utils");
71
+ const configManager_1 = require("./configManager");
72
+ const astCache_1 = require("./astCache");
73
+ const scenarioEngine_1 = require("./scenarioEngine");
74
+ const generator_1 = require("./generator");
75
+ // ─── Version constants ────────────────────────────────────────────────────────
76
+ const VERSION_PREFIX = "// @cotester-version:";
77
+ const MOCK_HEADER_PREFIX = "// Auto-generated mock data for";
78
+ const VERSION_LINE = `// @cotester-version: ${generator_1.CURRENT_FILE_VERSION}`;
79
+ /**
80
+ * Run the migration scan for all generated test/mock files under the project's
81
+ * configured testDir and mockDir.
82
+ *
83
+ * @param folder Optional subfolder to restrict the scan (relative to testDir/mockDir).
84
+ * @param opts `dryRun: true` prints proposed changes without writing.
85
+ */
86
+ function runMigrate(folder, opts = {}) {
87
+ const projectRoot = (0, utils_1.getProjectRoot)();
88
+ const config = (0, configManager_1.loadConfig)(projectRoot);
89
+ const dryRun = opts.dryRun ?? false;
90
+ if (dryRun)
91
+ (0, utils_1.log)("Dry-run mode — no files will be modified.", "info");
92
+ const testRoot = path.join(projectRoot, config.testDir);
93
+ const mockRoot = path.join(projectRoot, config.mockDir);
94
+ const testScan = folder ? path.join(testRoot, folder) : testRoot;
95
+ const mockScan = folder ? path.join(mockRoot, folder) : mockRoot;
96
+ const testFiles = collectGeneratedTestFiles(testScan);
97
+ const mockFiles = collectGeneratedMockFiles(mockScan);
98
+ (0, utils_1.log)(`Scanning ${testFiles.length} test file(s) and ${mockFiles.length} mock file(s)…`, "info");
99
+ const result = { scanned: 0, upgraded: 0, alreadyCurrent: 0, failed: 0 };
100
+ for (const filePath of testFiles) {
101
+ result.scanned++;
102
+ const outcome = migrateTestFile(filePath, projectRoot, config, dryRun);
103
+ tally(result, outcome, filePath, projectRoot);
104
+ }
105
+ for (const filePath of mockFiles) {
106
+ result.scanned++;
107
+ const outcome = migrateMockFile(filePath, dryRun);
108
+ tally(result, outcome, filePath, projectRoot);
109
+ }
110
+ const dryTag = dryRun ? " (dry-run)" : "";
111
+ (0, utils_1.log)(`Migration complete${dryTag}: ${result.upgraded} upgraded, ` +
112
+ `${result.alreadyCurrent} already at v${generator_1.CURRENT_FILE_VERSION}, ` +
113
+ `${result.failed} failed`, result.failed > 0 ? "warn" : "success");
114
+ }
115
+ function migrateTestFile(filePath, projectRoot, config, dryRun) {
116
+ try {
117
+ const content = fs.readFileSync(filePath, "utf-8");
118
+ const version = detectVersion(content, "test");
119
+ if (version >= generator_1.CURRENT_FILE_VERSION)
120
+ return "current";
121
+ let updated = content;
122
+ // ── v1 → v2 ──────────────────────────────────────────────────────
123
+ if (version < 2) {
124
+ updated = insertVersionMarkerTest(updated);
125
+ updated = stampSignatureComments(updated, filePath, projectRoot, config);
126
+ }
127
+ // Future migration passes: if (version < 3) { updated = applyV2ToV3(updated); }
128
+ if (!dryRun) {
129
+ fs.writeFileSync(filePath, updated, "utf-8");
130
+ }
131
+ return "upgraded";
132
+ }
133
+ catch {
134
+ return "failed";
135
+ }
136
+ }
137
+ function migrateMockFile(filePath, dryRun) {
138
+ try {
139
+ const content = fs.readFileSync(filePath, "utf-8");
140
+ const version = detectVersion(content, "mock");
141
+ if (version >= generator_1.CURRENT_FILE_VERSION)
142
+ return "current";
143
+ let updated = content;
144
+ // ── v1 → v2 ──────────────────────────────────────────────────────
145
+ if (version < 2) {
146
+ updated = insertVersionMarkerMock(updated);
147
+ }
148
+ if (!dryRun) {
149
+ fs.writeFileSync(filePath, updated, "utf-8");
150
+ }
151
+ return "upgraded";
152
+ }
153
+ catch {
154
+ return "failed";
155
+ }
156
+ }
157
+ // ─── Version detection ────────────────────────────────────────────────────────
158
+ /**
159
+ * Detect the version encoded in a file's header comment.
160
+ *
161
+ * @param content Raw file text.
162
+ * @param kind "test" or "mock" — determines which header marker to look for.
163
+ * @returns Version number (1 for unversioned, 0 for non-cotester files).
164
+ */
165
+ function detectVersion(content, kind) {
166
+ const isGenerated = kind === "test"
167
+ ? content.trimStart().startsWith(generator_1.TESTGEN_MARKER)
168
+ : content.trimStart().startsWith(MOCK_HEADER_PREFIX);
169
+ if (!isGenerated)
170
+ return 0;
171
+ for (const line of content.split(/\r?\n/).slice(0, 5)) {
172
+ if (line.startsWith(VERSION_PREFIX)) {
173
+ const num = parseInt(line.replace(VERSION_PREFIX, "").trim(), 10);
174
+ return isNaN(num) ? 1 : num;
175
+ }
176
+ }
177
+ // Recognised as generated but no version line → it is v1
178
+ return 1;
179
+ }
180
+ // ─── v1 → v2 transforms ──────────────────────────────────────────────────────
181
+ /**
182
+ * Insert `// @cotester-version: 2` on the line immediately after
183
+ * `// @cotester-generated` in a test file.
184
+ */
185
+ function insertVersionMarkerTest(content) {
186
+ const markerLine = generator_1.TESTGEN_MARKER;
187
+ const idx = content.indexOf(markerLine);
188
+ if (idx === -1)
189
+ return content;
190
+ // Find the end of that line (after the newline)
191
+ const lineEnd = content.indexOf("\n", idx);
192
+ if (lineEnd === -1)
193
+ return content + "\n" + VERSION_LINE;
194
+ return content.slice(0, lineEnd + 1) + VERSION_LINE + "\n" + content.slice(lineEnd + 1);
195
+ }
196
+ /**
197
+ * Insert `// @cotester-version: 2` on the line immediately after the
198
+ * `// Auto-generated mock data for …` first line in a mock file.
199
+ */
200
+ function insertVersionMarkerMock(content) {
201
+ const idx = content.indexOf(MOCK_HEADER_PREFIX);
202
+ if (idx === -1)
203
+ return content;
204
+ const lineEnd = content.indexOf("\n", idx);
205
+ if (lineEnd === -1)
206
+ return content + "\n" + VERSION_LINE;
207
+ return content.slice(0, lineEnd + 1) + VERSION_LINE + "\n" + content.slice(lineEnd + 1);
208
+ }
209
+ /**
210
+ * For each `describe('fnName', ...)` block in `content`, if there is no
211
+ * `// @testgen-sig:fnName` comment on the line immediately above it, attempt
212
+ * to add one by re-analysing the corresponding source file.
213
+ *
214
+ * If the source file cannot be found or analysed, the describe block is left
215
+ * unchanged — the migration is always non-destructive.
216
+ */
217
+ function stampSignatureComments(content, testFilePath, projectRoot, config) {
218
+ // Build a map: fnName → sigFingerprint from the current source
219
+ const sigMap = buildSigMap(testFilePath, projectRoot, config);
220
+ if (sigMap.size === 0)
221
+ return content;
222
+ let result = content;
223
+ for (const [fnName, sig] of sigMap) {
224
+ const sigComment = `// @testgen-sig:${sig}`;
225
+ // Skip if this function already has a sig stamp
226
+ if (result.includes(`// @testgen-sig:${fnName}(`))
227
+ continue;
228
+ // Find the describe('fnName', ...) line and insert the sig comment above it
229
+ const describeRe = new RegExp(`(^[ \\t]*)(describe\\s*\\(\\s*['"\`]${escapeForRegex(fnName)}['"\`])`, "m");
230
+ result = result.replace(describeRe, `$1${sigComment}\n$1$2`);
231
+ }
232
+ return result;
233
+ }
234
+ /**
235
+ * Re-analyse the source file that corresponds to `testFilePath` and build a
236
+ * map of functionName → signature fingerprint string.
237
+ */
238
+ function buildSigMap(testFilePath, projectRoot, config) {
239
+ const srcFile = reverseMapToSource(testFilePath, projectRoot, config);
240
+ if (!srcFile || !fs.existsSync(srcFile))
241
+ return new Map();
242
+ try {
243
+ const functions = (0, astCache_1.analyzeFileCached)(srcFile, projectRoot);
244
+ const scenarios = (0, scenarioEngine_1.generateScenarios)(functions, config, projectRoot);
245
+ const map = new Map();
246
+ for (const s of scenarios) {
247
+ const params = s.parameters
248
+ .map((p) => `${p.name}:${p.type.replace(/\s+/g, "")}`)
249
+ .join(",");
250
+ const sig = `${s.functionName}(${params}):${s.returnType.replace(/\s+/g, "")}`;
251
+ map.set(s.functionName, sig);
252
+ }
253
+ return map;
254
+ }
255
+ catch {
256
+ return new Map();
257
+ }
258
+ }
259
+ /**
260
+ * Reverse-map a test file path back to its source file path.
261
+ *
262
+ * e.g. `cotester/tests/services/user.service.test.ts`
263
+ * → `src/services/user.service.ts`
264
+ */
265
+ function reverseMapToSource(testFilePath, projectRoot, config) {
266
+ const testRoot = path.resolve(projectRoot, config.testDir);
267
+ const srcRoot = path.resolve(projectRoot, config.srcDir);
268
+ const rel = path.relative(testRoot, testFilePath);
269
+ if (rel.startsWith(".."))
270
+ return null; // test file is outside testDir
271
+ const srcRel = rel.replace(/\.test\.ts$/, ".ts");
272
+ return path.join(srcRoot, srcRel);
273
+ }
274
+ // ─── File collection ──────────────────────────────────────────────────────────
275
+ /**
276
+ * Recursively collect `.test.ts` files under `dir` that start with the
277
+ * `// @cotester-generated` marker (cotester-owned, safe to migrate).
278
+ */
279
+ function collectGeneratedTestFiles(dir) {
280
+ return collectFiles(dir, ".test.ts", (content) => content.trimStart().startsWith(generator_1.TESTGEN_MARKER));
281
+ }
282
+ /**
283
+ * Recursively collect `.mock.ts` files under `dir` that start with the
284
+ * `// Auto-generated mock data` marker.
285
+ */
286
+ function collectGeneratedMockFiles(dir) {
287
+ return collectFiles(dir, ".mock.ts", (content) => content.trimStart().startsWith(MOCK_HEADER_PREFIX));
288
+ }
289
+ function collectFiles(dir, suffix, isOwned) {
290
+ if (!fs.existsSync(dir))
291
+ return [];
292
+ const results = [];
293
+ for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
294
+ const full = path.join(dir, entry.name);
295
+ if (entry.isDirectory()) {
296
+ results.push(...collectFiles(full, suffix, isOwned));
297
+ }
298
+ else if (entry.isFile() && entry.name.endsWith(suffix)) {
299
+ try {
300
+ // Only read the first 200 chars to check the ownership marker
301
+ const fd = fs.openSync(full, "r");
302
+ const buf = Buffer.alloc(200);
303
+ const bytesRead = fs.readSync(fd, buf, 0, 200, 0);
304
+ fs.closeSync(fd);
305
+ const peek = buf.slice(0, bytesRead).toString("utf-8");
306
+ if (isOwned(peek))
307
+ results.push(full);
308
+ }
309
+ catch {
310
+ // skip unreadable files
311
+ }
312
+ }
313
+ }
314
+ return results;
315
+ }
316
+ // ─── Helpers ─────────────────────────────────────────────────────────────────
317
+ function tally(result, outcome, filePath, projectRoot) {
318
+ const rel = path.relative(projectRoot, filePath).replace(/\\/g, "/");
319
+ if (outcome === "upgraded") {
320
+ result.upgraded++;
321
+ (0, utils_1.log)(` ↑ upgraded ${rel}`, "success");
322
+ }
323
+ else if (outcome === "current") {
324
+ result.alreadyCurrent++;
325
+ (0, utils_1.log)(` ✔ current ${rel}`, "info");
326
+ }
327
+ else {
328
+ result.failed++;
329
+ (0, utils_1.log)(` ✖ failed ${rel}`, "error");
330
+ }
331
+ }
332
+ function escapeForRegex(str) {
333
+ return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
334
+ }
335
+ //# sourceMappingURL=migrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrator.js","sourceRoot":"","sources":["../src/migrator.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,9 @@ const path = __importStar(require("path"));
43
43
  const formatter_1 = require("./formatter");
44
44
  const utils_1 = require("./utils");
45
45
  const mockDataEngine_1 = require("./mockDataEngine");
46
+ const sensitiveValueDetector_1 = require("./sensitiveValueDetector");
46
47
  const interfaceShapeResolver_1 = require("./interfaceShapeResolver");
48
+ const sharedMockRegistry_1 = require("./sharedMockRegistry");
47
49
  /**
48
50
  * Generate a mock file that mirrors the source file path.
49
51
  *
@@ -55,13 +57,23 @@ async function generateMockFile(srcFilePath, scenarios, projectRoot, srcDir, moc
55
57
  return null;
56
58
  const absSrcRoot = path.resolve(projectRoot, srcDir);
57
59
  const mockFilePath = (0, utils_1.mirrorPath)(srcFilePath, absSrcRoot, path.join(projectRoot, mockDir), ".mock.ts");
60
+ // ── Ensure shared registry has entries for all custom types ──────────
61
+ const registryResult = (0, sharedMockRegistry_1.ensureSharedRegistry)(scenarios, projectRoot, mockDir, dryRun, srcFilePath);
58
62
  const constantNames = new Map();
59
63
  const lines = [];
60
64
  // Header comment
61
65
  const relSrc = path.relative(projectRoot, srcFilePath).replace(/\\/g, "/");
62
66
  lines.push(`// Auto-generated mock data for ${relSrc}`);
67
+ lines.push(`// @cotester-version: 2`);
63
68
  lines.push(`// Do not edit — regenerated on each source change.`);
64
69
  lines.push("");
70
+ // ── Import from shared registry if we have any custom-type factories ─
71
+ if (registryResult && registryResult.factories.size > 0) {
72
+ const importPath = (0, sharedMockRegistry_1.getRegistryImportPath)(mockFilePath, registryResult.registryPath);
73
+ const factoryNames = [...registryResult.factories.values()].sort().join(", ");
74
+ lines.push(`import { ${factoryNames} } from '${importPath}';`);
75
+ lines.push("");
76
+ }
65
77
  for (const scenario of scenarios) {
66
78
  const fnName = scenario.className
67
79
  ? `${scenario.className}_${scenario.functionName}`
@@ -76,7 +88,19 @@ async function generateMockFile(srcFilePath, scenarios, projectRoot, srcDir, moc
76
88
  }
77
89
  else {
78
90
  const props = c.paramNames
79
- .map((name, i) => `${name}: ${c.argLiterals[i] ?? "undefined"}`)
91
+ .map((name, i) => {
92
+ const rawLiteral = c.argLiterals[i] ?? "undefined";
93
+ // Resolve the type for this parameter name
94
+ const param = scenario.parameters.find(p => p.name === name);
95
+ if (param) {
96
+ const typeName = (0, sharedMockRegistry_1.extractBaseTypeName)(param.type);
97
+ if ((0, sharedMockRegistry_1.isCustomTypeName)(typeName) && registryResult?.factories.has(typeName)) {
98
+ const factory = registryResult.factories.get(typeName);
99
+ return `${name}: ${factory}()`;
100
+ }
101
+ }
102
+ return `${name}: ${(0, sensitiveValueDetector_1.sanitizeLiteral)(rawLiteral, name)}`;
103
+ })
80
104
  .join(", ");
81
105
  lines.push(` ${key}: { ${props} },`);
82
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mockGenerator.js","sourceRoot":"","sources":["../src/mockGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mockGenerator.js","sourceRoot":"","sources":["../src/mockGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface ReportOptions {
2
+ format: "html" | "json" | "md";
3
+ /** Path to coverage-summary.json. Defaults to <projectRoot>/coverage/coverage-summary.json */
4
+ coverageSummaryPath?: string;
5
+ /** Write report to this file path; print to stdout if omitted */
6
+ output?: string;
7
+ /** Restrict scan to this subfolder of srcDir */
8
+ folder?: string;
9
+ }
10
+ export declare function runReport(options: ReportOptions): void;