codeguard-testgen 1.0.14 → 1.0.16

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 (50) hide show
  1. package/README.md +157 -1034
  2. package/dist/ai.d.ts +8 -0
  3. package/dist/ai.d.ts.map +1 -0
  4. package/dist/ai.js +332 -0
  5. package/dist/ai.js.map +1 -0
  6. package/dist/ast.d.ts +8 -0
  7. package/dist/ast.d.ts.map +1 -0
  8. package/dist/ast.js +988 -0
  9. package/dist/ast.js.map +1 -0
  10. package/dist/config.d.ts +4 -0
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +4 -0
  13. package/dist/config.js.map +1 -1
  14. package/dist/git.d.ts +18 -0
  15. package/dist/git.d.ts.map +1 -0
  16. package/dist/git.js +208 -0
  17. package/dist/git.js.map +1 -0
  18. package/dist/globals.d.ts +24 -0
  19. package/dist/globals.d.ts.map +1 -0
  20. package/dist/globals.js +40 -0
  21. package/dist/globals.js.map +1 -0
  22. package/dist/index.d.ts +9 -54
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +85 -5434
  25. package/dist/index.js.map +1 -1
  26. package/dist/pathResolver.d.ts +12 -0
  27. package/dist/pathResolver.d.ts.map +1 -0
  28. package/dist/pathResolver.js +44 -0
  29. package/dist/pathResolver.js.map +1 -0
  30. package/dist/reviewer.d.ts +13 -0
  31. package/dist/reviewer.d.ts.map +1 -0
  32. package/dist/reviewer.js +402 -0
  33. package/dist/reviewer.js.map +1 -0
  34. package/dist/testGenerator.d.ts +24 -0
  35. package/dist/testGenerator.d.ts.map +1 -0
  36. package/dist/testGenerator.js +1107 -0
  37. package/dist/testGenerator.js.map +1 -0
  38. package/dist/toolDefinitions.d.ts +6 -0
  39. package/dist/toolDefinitions.d.ts.map +1 -0
  40. package/dist/toolDefinitions.js +370 -0
  41. package/dist/toolDefinitions.js.map +1 -0
  42. package/dist/toolHandlers.d.ts +76 -0
  43. package/dist/toolHandlers.d.ts.map +1 -0
  44. package/dist/toolHandlers.js +1430 -0
  45. package/dist/toolHandlers.js.map +1 -0
  46. package/dist/types.d.ts +74 -0
  47. package/dist/types.d.ts.map +1 -0
  48. package/dist/types.js +3 -0
  49. package/dist/types.js.map +1 -0
  50. package/package.json +1 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -19,7 +19,9 @@ export interface CodeGuardConfig {
19
19
  gemini?: string;
20
20
  };
21
21
  testDir?: string;
22
+ sourceRoot?: string;
22
23
  testEnv?: 'jest' | 'vitest';
24
+ packageManager?: 'npm' | 'yarn';
23
25
  extensions?: string[];
24
26
  excludeDirs?: string[];
25
27
  validationInterval?: number;
@@ -36,7 +38,9 @@ export interface Config {
36
38
  extensions: string[];
37
39
  excludeDirs: string[];
38
40
  testDir: string;
41
+ sourceRoot: string;
39
42
  testEnv: 'jest' | 'vitest';
43
+ packageManager: 'npm' | 'yarn';
40
44
  aiProvider: 'openai' | 'gemini' | 'claude';
41
45
  apiKeys: {
42
46
  claude?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,mBAAmB,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CACjD;AAED,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3B,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB,EAAE,OAAO,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mBAAmB,EAAE,UAAU,GAAG,YAAY,CAAC;CAChD;AA2CD,wBAAgB,UAAU,IAAI,MAAM,CA6GnC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAuBnD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,mBAAmB,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CACjD;AAED,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3B,cAAc,EAAE,KAAK,GAAG,MAAM,CAAC;IAC/B,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB,EAAE,OAAO,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mBAAmB,EAAE,UAAU,GAAG,YAAY,CAAC;CAChD;AA2CD,wBAAgB,UAAU,IAAI,MAAM,CAiHnC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAuBnD"}
package/dist/config.js CHANGED
@@ -54,7 +54,9 @@ function loadConfig() {
54
54
  return {
55
55
  aiProvider: 'claude',
56
56
  testDir: 'src/tests',
57
+ sourceRoot: 'src',
57
58
  testEnv: 'jest',
59
+ packageManager: 'npm',
58
60
  extensions: ['.ts', '.tsx', '.js', '.jsx'],
59
61
  excludeDirs: ['node_modules', 'dist', 'build', '.git', 'coverage', '__tests__'],
60
62
  apiKeys: {
@@ -115,7 +117,9 @@ function loadConfig() {
115
117
  return {
116
118
  aiProvider: config.aiProvider,
117
119
  testDir: config.testDir || 'src/tests',
120
+ sourceRoot: config.sourceRoot || 'src',
118
121
  testEnv: config.testEnv || 'jest',
122
+ packageManager: config.packageManager || 'npm',
119
123
  extensions: config.extensions || ['.ts', '.tsx', '.js', '.jsx'],
120
124
  excludeDirs: config.excludeDirs || [
121
125
  'node_modules',
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/git.d.ts ADDED
@@ -0,0 +1,18 @@
1
+ import { GitDiffFile } from './types';
2
+ /**
3
+ * Get git diff output for both staged and unstaged changes
4
+ * Returns the combined diff content and list of changed source files
5
+ */
6
+ export declare function getGitDiff(): Promise<{
7
+ fullDiff: string;
8
+ files: GitDiffFile[];
9
+ }>;
10
+ /**
11
+ * Use AI to extract changed function names from git diff
12
+ */
13
+ export declare function getChangedFunctionsFromDiff(filePath: string, diff: string): Promise<string[]>;
14
+ /**
15
+ * Auto-generate tests for changed functions detected via git diff
16
+ */
17
+ export declare function autoGenerateTests(): Promise<void>;
18
+ //# sourceMappingURL=git.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAW,MAAM,SAAS,CAAC;AAE/C;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC,CAqDtF;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA8EnG;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAgFvD"}
package/dist/git.js ADDED
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGitDiff = getGitDiff;
4
+ exports.getChangedFunctionsFromDiff = getChangedFunctionsFromDiff;
5
+ exports.autoGenerateTests = autoGenerateTests;
6
+ const fsSync = require("fs");
7
+ const path = require("path");
8
+ const child_process_1 = require("child_process");
9
+ const globals_1 = require("./globals");
10
+ const ast_1 = require("./ast");
11
+ const ai_1 = require("./ai");
12
+ /**
13
+ * Get git diff output for both staged and unstaged changes
14
+ * Returns the combined diff content and list of changed source files
15
+ */
16
+ async function getGitDiff() {
17
+ try {
18
+ try {
19
+ (0, child_process_1.execSync)('git rev-parse --git-dir', { stdio: 'pipe' });
20
+ }
21
+ catch {
22
+ throw new Error('Not a git repository');
23
+ }
24
+ const stagedDiff = (0, child_process_1.execSync)('git diff --staged', { encoding: 'utf-8', stdio: 'pipe' }).toString();
25
+ const fullDiff = stagedDiff;
26
+ if (!fullDiff.trim()) {
27
+ return { fullDiff: '', files: [] };
28
+ }
29
+ const files = [];
30
+ const diffSections = fullDiff.split(/^diff --git /m).filter(Boolean);
31
+ for (const section of diffSections) {
32
+ const lines = section.split('\n');
33
+ const firstLine = 'diff --git ' + lines[0];
34
+ const match = firstLine.match(/b\/(.+)$/);
35
+ if (match) {
36
+ const filePath = match[1];
37
+ const ext = path.extname(filePath);
38
+ const basename = path.basename(filePath);
39
+ const isTestFile = basename.includes('.test.') ||
40
+ basename.includes('.spec.') ||
41
+ basename.includes('test.') ||
42
+ basename.includes('spec.') ||
43
+ filePath.includes('/__tests__/') ||
44
+ filePath.includes('/tests/') ||
45
+ filePath.includes(globals_1.g.CONFIG.testDir);
46
+ if (globals_1.g.CONFIG.extensions.includes(ext) && !isTestFile) {
47
+ files.push({
48
+ filePath,
49
+ diff: 'diff --git ' + section
50
+ });
51
+ }
52
+ }
53
+ }
54
+ return { fullDiff, files };
55
+ }
56
+ catch (error) {
57
+ if (error.message === 'Not a git repository') {
58
+ throw error;
59
+ }
60
+ console.error('⚠️ Error reading git diff:', error.message);
61
+ return { fullDiff: '', files: [] };
62
+ }
63
+ }
64
+ /**
65
+ * Use AI to extract changed function names from git diff
66
+ */
67
+ async function getChangedFunctionsFromDiff(filePath, diff) {
68
+ try {
69
+ if (!fsSync.existsSync(filePath)) {
70
+ console.log(` ⚠️ File not found: ${filePath}`);
71
+ return [];
72
+ }
73
+ const result = (0, ast_1.analyzeFileAST)(filePath);
74
+ if (!result.success || !result.analysis || !result.analysis.functions) {
75
+ console.log(` ⚠️ Failed to analyze file: ${result.error || 'unknown error'}`);
76
+ return [];
77
+ }
78
+ const exportedFunctions = result.analysis.functions.filter((f) => f.exported);
79
+ if (exportedFunctions.length === 0) {
80
+ console.log(` ⚠️ No exported functions found in file`);
81
+ console.log(` 💡 Tip: Make sure the file has exported functions (export const/function/async)`);
82
+ return [];
83
+ }
84
+ const exportedFunctionNames = exportedFunctions.map((f) => f.name);
85
+ const prompt = `You are analyzing a git diff to identify which exported functions have been changed or added.
86
+
87
+ Here is the git diff for file: ${filePath}
88
+
89
+ \`\`\`diff
90
+ ${diff}
91
+ \`\`\`
92
+
93
+ The file has the following exported functions: ${exportedFunctionNames.join(', ')}
94
+
95
+ Your task: Look at the git diff and identify which of these exported functions have changes inside them.
96
+ - Look at the @@ line numbers and context to see which function the changes are in
97
+ - A function is changed if any line within that function's body is modified (marked with + or -)
98
+ - Return ONLY a JSON array of function names, like: ["functionName1", "functionName2"]
99
+ - If no exported functions are in the diff, return an empty array: []
100
+
101
+ Return ONLY the JSON array, nothing else.`;
102
+ const messages = [
103
+ {
104
+ role: 'user',
105
+ content: prompt
106
+ }
107
+ ];
108
+ const response = await (0, ai_1.callAI)(messages, [], globals_1.g.CONFIG.aiProvider);
109
+ if (!response.content) {
110
+ console.error(' ⚠️ AI returned no content');
111
+ return [];
112
+ }
113
+ const content = typeof response.content === 'string' ? response.content.trim() : JSON.stringify(response.content || '');
114
+ const jsonMatch = content.match(/\[.*\]/s);
115
+ if (jsonMatch) {
116
+ try {
117
+ const functionNames = JSON.parse(jsonMatch[0]);
118
+ if (Array.isArray(functionNames)) {
119
+ const filtered = functionNames.filter(name => exportedFunctionNames.includes(name));
120
+ return filtered;
121
+ }
122
+ }
123
+ catch (parseError) {
124
+ console.error(' ⚠️ Failed to parse AI response as JSON:', content);
125
+ }
126
+ }
127
+ else {
128
+ console.log(' ⚠️ No JSON array found in AI response');
129
+ }
130
+ return [];
131
+ }
132
+ catch (error) {
133
+ console.error(` ⚠️ Error getting changed functions from AI:`, error.message);
134
+ return [];
135
+ }
136
+ }
137
+ /**
138
+ * Auto-generate tests for changed functions detected via git diff
139
+ */
140
+ async function autoGenerateTests() {
141
+ // Import here to avoid circular dependency during module initialization
142
+ const { generateTestsForFunctions } = require('./testGenerator');
143
+ (0, globals_1.updateSpinner)('🔍 Scanning git changes...');
144
+ try {
145
+ const { fullDiff, files } = await getGitDiff();
146
+ if (files.length === 0) {
147
+ (0, globals_1.stopSpinner)();
148
+ console.log('✅ No changes detected in source files.');
149
+ console.log(' (Only staged and unstaged changes are checked)');
150
+ return;
151
+ }
152
+ globals_1.g.globalSpinner.text = `Found changes in ${files.length} file(s)`;
153
+ await new Promise(resolve => setTimeout(resolve, 200));
154
+ let totalFunctions = 0;
155
+ let processedFiles = 0;
156
+ let errorFiles = 0;
157
+ for (const fileInfo of files) {
158
+ const { filePath, diff } = fileInfo;
159
+ if (!fsSync.existsSync(filePath)) {
160
+ (0, globals_1.updateSpinner)(`⏭️ Skipping ${filePath} (file not found)`);
161
+ await new Promise(resolve => setTimeout(resolve, 100));
162
+ continue;
163
+ }
164
+ (0, globals_1.updateSpinner)(`🤖 Analyzing diff with AI: ${path.basename(filePath)}`);
165
+ const changedFunctions = await getChangedFunctionsFromDiff(filePath, diff);
166
+ if (changedFunctions.length === 0) {
167
+ globals_1.g.globalSpinner.text = `⏭️ No exported functions changed in ${path.basename(filePath)}`;
168
+ await new Promise(resolve => setTimeout(resolve, 150));
169
+ continue;
170
+ }
171
+ globals_1.g.globalSpinner.text = `Found ${changedFunctions.length} function(s): ${changedFunctions.join(', ')}`;
172
+ await new Promise(resolve => setTimeout(resolve, 200));
173
+ try {
174
+ await generateTestsForFunctions(filePath, changedFunctions);
175
+ processedFiles++;
176
+ totalFunctions += changedFunctions.length;
177
+ if (globals_1.g.globalSpinner) {
178
+ globals_1.g.globalSpinner.text = `Tests generated for ${path.basename(filePath)}`;
179
+ await new Promise(resolve => setTimeout(resolve, 200));
180
+ }
181
+ }
182
+ catch (error) {
183
+ errorFiles++;
184
+ console.error(` ❌ Error generating tests: ${error.message}`);
185
+ }
186
+ }
187
+ console.log('\n' + '='.repeat(60));
188
+ console.log('📊 Auto-Generation Summary');
189
+ (0, globals_1.stopSpinner)();
190
+ console.log('='.repeat(60));
191
+ console.log(`✅ Successfully processed: ${processedFiles} file(s)`);
192
+ console.log(`📝 Functions tested: ${totalFunctions}`);
193
+ if (errorFiles > 0) {
194
+ console.log(`⚠️ Failed: ${errorFiles} file(s)`);
195
+ }
196
+ console.log('='.repeat(60));
197
+ console.log('\n✨ Done!');
198
+ }
199
+ catch (error) {
200
+ if (error.message === 'Not a git repository') {
201
+ console.error('❌ Error: Not a git repository');
202
+ console.error(' Auto mode requires git to detect changes.');
203
+ process.exit(1);
204
+ }
205
+ throw error;
206
+ }
207
+ }
208
+ //# sourceMappingURL=git.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { CodebaseIndexer } from './codebaseIndexer';
2
+ import { RuntimeConfig } from './types';
3
+ /**
4
+ * Shared mutable application state.
5
+ * All modules import this object and read/write its properties.
6
+ * Using a plain object ensures CommonJS module caching preserves the reference,
7
+ * so mutations are visible to all importers.
8
+ */
9
+ export declare const g: {
10
+ CONFIG: RuntimeConfig;
11
+ globalIndexer: CodebaseIndexer | null;
12
+ globalSpinner: any;
13
+ EXPECTED_TEST_FILE_PATH: string | null;
14
+ };
15
+ /**
16
+ * Update or create the global spinner with new text.
17
+ * Eliminates the duplicated pattern that appears 12+ times across the codebase.
18
+ */
19
+ export declare function updateSpinner(text: string): void;
20
+ /**
21
+ * Stop the global spinner and set it to null.
22
+ */
23
+ export declare function stopSpinner(): void;
24
+ //# sourceMappingURL=globals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../src/globals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIxC;;;;;GAKG;AACH,eAAO,MAAM,CAAC,EAAE;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,EAAE,eAAe,GAAG,IAAI,CAAC;IACtC,aAAa,EAAE,GAAG,CAAC;IACnB,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;CAMxC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMhD;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAKlC"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.g = void 0;
4
+ exports.updateSpinner = updateSpinner;
5
+ exports.stopSpinner = stopSpinner;
6
+ const ora = require('ora');
7
+ /**
8
+ * Shared mutable application state.
9
+ * All modules import this object and read/write its properties.
10
+ * Using a plain object ensures CommonJS module caching preserves the reference,
11
+ * so mutations are visible to all importers.
12
+ */
13
+ exports.g = {
14
+ CONFIG: null,
15
+ globalIndexer: null,
16
+ globalSpinner: null,
17
+ EXPECTED_TEST_FILE_PATH: null,
18
+ };
19
+ /**
20
+ * Update or create the global spinner with new text.
21
+ * Eliminates the duplicated pattern that appears 12+ times across the codebase.
22
+ */
23
+ function updateSpinner(text) {
24
+ if (!exports.g.globalSpinner || !exports.g.globalSpinner.isSpinning) {
25
+ exports.g.globalSpinner = ora(text).start();
26
+ }
27
+ else {
28
+ exports.g.globalSpinner.text = text;
29
+ }
30
+ }
31
+ /**
32
+ * Stop the global spinner and set it to null.
33
+ */
34
+ function stopSpinner() {
35
+ if (exports.g.globalSpinner && exports.g.globalSpinner.isSpinning) {
36
+ exports.g.globalSpinner.stop();
37
+ }
38
+ exports.g.globalSpinner = null;
39
+ }
40
+ //# sourceMappingURL=globals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../src/globals.ts"],"names":[],"mappings":";;;AA2BA,sCAMC;AAKD,kCAKC;AAxCD,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAE3B;;;;;GAKG;AACU,QAAA,CAAC,GAKV;IACF,MAAM,EAAE,IAA4B;IACpC,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,IAAI;IACnB,uBAAuB,EAAE,IAAI;CAC9B,CAAC;AAEF;;;GAGG;AACH,SAAgB,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC,SAAC,CAAC,aAAa,IAAI,CAAC,SAAC,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;QACpD,SAAC,CAAC,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,SAAC,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,SAAC,CAAC,aAAa,IAAI,SAAC,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;QAClD,SAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IACD,SAAC,CAAC,aAAa,GAAG,IAAI,CAAC;AACzB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,64 +1,19 @@
1
1
  #!/usr/bin/env node
2
- /** //This version has lefitimate failure detection and reporting.
2
+ /**
3
3
  * AI-Powered Unit Test Generator with AST Analysis
4
4
  * Supports OpenAI, Gemini, and Claude with function calling
5
5
  *
6
- * Usage: npx ts-node src/testgen.ts
6
+ * Usage: npx ts-node src/index.ts
7
7
  *
8
8
  * Required packages: npm install @babel/parser @babel/traverse ts-node
9
- *
10
- * Required environment variables:
11
- * - OPENAI_API_KEY (for OpenAI)
12
- * - GEMINI_API_KEY (for Gemini)
13
- * - ANTHROPIC_API_KEY (for Claude)
14
9
  */
15
10
  import { CodebaseIndexer } from './codebaseIndexer';
16
- interface Tool {
17
- name: string;
18
- description: string;
19
- input_schema: {
20
- type: string;
21
- properties: Record<string, any>;
22
- required: string[];
23
- };
24
- }
25
- declare const TOOLS: Tool[];
26
- declare function analyzeFileAST(filePath: string, functionName?: string): any;
27
- declare function getFunctionAST(filePath: string, functionName: string): any;
28
- declare function getImportsAST(filePath: string): any;
29
- declare function getTypeDefinitions(filePath: string): any;
30
- declare function getClassMethods(filePath: string, className: string): any;
31
- declare function replaceFunctionTests(testFilePath: string, functionName: string, newTestContent: string): Promise<any>;
32
- declare function deleteLines(filePath: string, startLine: number, endLine: number): Promise<any>;
33
- declare function insertLines(filePath: string, lineNumber: number, content: string): Promise<any>;
34
- declare function replaceLines(filePath: string, startLine: number, endLine: number, newContent: string): Promise<any>;
35
- /**
36
- * Search and replace a code block using fuzzy matching
37
- * Much more reliable than line-based editing!
38
- */
39
- declare function searchReplaceBlock(filePath: string, search: string, replace: string, matchMode?: 'exact' | 'normalized' | 'fuzzy'): Promise<any>;
40
- /**
41
- * Insert content at a specific position in the file
42
- * Simpler than search_replace_block for adding new content
43
- */
44
- declare function insertAtPosition(filePath: string, content: string, position?: 'beginning' | 'end' | 'after_imports' | 'before_first_describe', afterMarker?: string): Promise<any>;
45
- /**
46
- * Write code review findings to a markdown file in the reviews/ directory
47
- */
48
- declare function writeReview(filePath: string, reviewContent: string): Promise<any>;
49
- declare function executeTool(toolName: string, args: any): Promise<any>;
50
- declare function generateTests(sourceFile: string): Promise<string>;
51
- declare function generateTestsForFolder(): Promise<void>;
52
- /** [Not useful, introduce side-effect]
53
- * Validate and fix the complete test file after all functions are processed
54
- * Runs full test suite and fixes file-level issues (mock pollution, imports, etc)
55
- */
56
- declare function validateAndFixCompleteTestFile(sourceFile: string, testFilePath: string, functionNames: string[]): Promise<void>;
57
- /**
58
- * Generate tests for multiple functions, one at a time
59
- */
60
- declare function generateTestsForFunctions(sourceFile: string, functionNames: string[]): Promise<string>;
61
- declare function generateTestsForFunction(): Promise<void>;
11
+ import { analyzeFileAST } from './ast';
12
+ import { generateTests, generateTestsForFolder, generateTestsForFunction, generateTestsForFunctions } from './testGenerator';
13
+ import { executeTool } from './toolHandlers';
14
+ import { getFunctionAST, getImportsAST, getTypeDefinitions, getClassMethods } from './ast';
15
+ import { replaceFunctionTests, searchReplaceBlock, insertAtPosition, deleteLines, insertLines, replaceLines, writeReview } from './toolHandlers';
16
+ import { TOOLS } from './toolDefinitions';
62
17
  declare function main(): Promise<void>;
63
- export { main, generateTests, generateTestsForFolder, generateTestsForFunction, generateTestsForFunctions, validateAndFixCompleteTestFile, executeTool, analyzeFileAST, getFunctionAST, getImportsAST, getTypeDefinitions, getClassMethods, replaceFunctionTests, searchReplaceBlock, insertAtPosition, deleteLines, insertLines, replaceLines, writeReview, CodebaseIndexer, TOOLS };
18
+ export { main, generateTests, generateTestsForFolder, generateTestsForFunction, generateTestsForFunctions, executeTool, analyzeFileAST, getFunctionAST, getImportsAST, getTypeDefinitions, getClassMethods, replaceFunctionTests, searchReplaceBlock, insertAtPosition, deleteLines, insertLines, replaceLines, writeReview, CodebaseIndexer, TOOLS, };
64
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAEL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAEL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,eAAe,EAChB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjJ,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,iBAAe,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA+LnC;AAMD,OAAO,EACL,IAAI,EACJ,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,WAAW,EACX,cAAc,EACd,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,eAAe,EACf,KAAK,GACN,CAAC"}