test-gen-js 0.2.4 → 0.3.0

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/CHANGELOG.md CHANGED
@@ -15,6 +15,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
15
15
 
16
16
  ---
17
17
 
18
+ ## [0.3.0] - 2026-01-09
19
+
20
+ ### Added
21
+ - 🎉 **HOC Pattern Support** - Now correctly detects and analyzes components wrapped with Higher-Order Components
22
+ - `memo()` and `React.memo()` support
23
+ - `forwardRef()` and `React.forwardRef()` support
24
+ - `lazy()` and `React.lazy()` support
25
+ - Nested HOCs: `memo(forwardRef(() => {}))` support
26
+ - `export default memo(Component)` pattern support
27
+ - `const Wrapped = memo(() => {})` pattern support
28
+
29
+ ### Fixed
30
+ - 🐛 Fixed EJS template HTML escaping issue (`'` → `'`)
31
+ - Changed `<%= %>` to `<%- %>` for code generation
32
+ - 📝 Added Prerequisites section to README
33
+
34
+ ---
35
+
18
36
  ## [0.2.1] - 2026-01-08
19
37
 
20
38
  ### Fixed
@@ -5,6 +5,10 @@
5
5
  import type { NodePath } from '@babel/traverse';
6
6
  import * as t from '@babel/types';
7
7
  import type { ComponentInfo } from '../types';
8
+ /**
9
+ * Analyze a HOC-wrapped component (memo, forwardRef, etc.)
10
+ */
11
+ export declare function analyzeHOCComponent(funcNode: t.ArrowFunctionExpression | t.FunctionExpression, componentName: string, filePath: string, hocName: string): ComponentInfo;
8
12
  /**
9
13
  * Analyze a component and extract its information
10
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"componentAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/componentAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,UAAU,CAAC;AAExD;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,kBAAkB,CAAC,EAChE,QAAQ,EAAE,MAAM,GACf,aAAa,GAAG,IAAI,CAgDtB"}
1
+ {"version":3,"file":"componentAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/componentAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,UAAU,CAAC;AAExD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,CAAC,CAAC,uBAAuB,GAAG,CAAC,CAAC,kBAAkB,EAC1D,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,aAAa,CA2Bf;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,kBAAkB,CAAC,EAChE,QAAQ,EAAE,MAAM,GACf,aAAa,GAAG,IAAI,CAgDtB"}
@@ -37,9 +37,36 @@ var __importStar = (this && this.__importStar) || (function () {
37
37
  };
38
38
  })();
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.analyzeHOCComponent = analyzeHOCComponent;
40
41
  exports.analyzeComponent = analyzeComponent;
41
42
  const t = __importStar(require("@babel/types"));
42
43
  const typeExtractor_1 = require("../parser/typeExtractor");
44
+ /**
45
+ * Analyze a HOC-wrapped component (memo, forwardRef, etc.)
46
+ */
47
+ function analyzeHOCComponent(funcNode, componentName, filePath, hocName) {
48
+ // For forwardRef, the second parameter is the ref
49
+ // For memo, it's just the regular props
50
+ const isForwardRef = hocName === 'forwardRef';
51
+ // Extract props (first parameter)
52
+ const props = extractPropsFromFunc(funcNode, isForwardRef);
53
+ // Extract hooks
54
+ const hooks = extractHooks(funcNode);
55
+ // Extract event handlers
56
+ const events = extractEventsFromProps(props);
57
+ // Check if component accepts children
58
+ const children = props.some((p) => p.name === 'children');
59
+ return {
60
+ name: componentName,
61
+ type: 'arrow',
62
+ props,
63
+ hooks,
64
+ events,
65
+ children,
66
+ imports: [],
67
+ filePath,
68
+ };
69
+ }
43
70
  /**
44
71
  * Analyze a component and extract its information
45
72
  */
@@ -92,6 +119,12 @@ function analyzeComponent(nodePath, filePath) {
92
119
  * Extract props from a function component
93
120
  */
94
121
  function extractProps(node) {
122
+ return extractPropsFromFunc(node, false);
123
+ }
124
+ /**
125
+ * Extract props from a function (can handle forwardRef which has ref as second param)
126
+ */
127
+ function extractPropsFromFunc(node, _isForwardRef = false) {
95
128
  const props = [];
96
129
  const firstParam = node.params[0];
97
130
  if (!firstParam)
@@ -205,8 +238,14 @@ function findHooks(node, hooks) {
205
238
  * Extract event handler props (onPress, onClick, etc.)
206
239
  */
207
240
  function extractEvents(node) {
208
- const events = new Set();
209
241
  const props = extractProps(node);
242
+ return extractEventsFromProps(props);
243
+ }
244
+ /**
245
+ * Extract event handlers from props array
246
+ */
247
+ function extractEventsFromProps(props) {
248
+ const events = new Set();
210
249
  // Check props for event handlers
211
250
  for (const prop of props) {
212
251
  if (prop.name.startsWith('on') &&
@@ -1 +1 @@
1
- {"version":3,"file":"componentAnalyzer.js","sourceRoot":"","sources":["../../src/analyzer/componentAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"componentAnalyzer.js","sourceRoot":"","sources":["../../src/analyzer/componentAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fileAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/fileAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EACV,YAAY,EAMb,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAoGzE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAClD,OAAO,CAAC,YAAY,EAAE,CAAC,CAGzB"}
1
+ {"version":3,"file":"fileAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzer/fileAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EACV,YAAY,EAMb,MAAM,UAAU,CAAC;AAKlB;;GAEG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAwIzE;AAqFD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAClD,OAAO,CAAC,YAAY,EAAE,CAAC,CAGzB"}
@@ -48,6 +48,8 @@ const path_1 = __importDefault(require("path"));
48
48
  const parser_1 = require("../parser");
49
49
  const componentAnalyzer_1 = require("./componentAnalyzer");
50
50
  const functionAnalyzer_1 = require("./functionAnalyzer");
51
+ // Known React HOC names
52
+ const HOC_NAMES = ['memo', 'forwardRef', 'React.memo', 'React.forwardRef', 'lazy', 'React.lazy'];
51
53
  /**
52
54
  * Analyze a single file
53
55
  */
@@ -57,6 +59,7 @@ async function analyzeFile(filePath) {
57
59
  const components = [];
58
60
  const functions = [];
59
61
  const imports = [];
62
+ const analyzedNames = new Set(); // Track already analyzed components
60
63
  // Extract imports
61
64
  (0, traverse_1.default)(ast, {
62
65
  ImportDeclaration(nodePath) {
@@ -82,23 +85,27 @@ async function analyzeFile(filePath) {
82
85
  });
83
86
  // Analyze components and functions
84
87
  (0, traverse_1.default)(ast, {
85
- // Function declarations
88
+ // Function declarations (function MyComponent() {})
86
89
  FunctionDeclaration(nodePath) {
87
90
  if (!nodePath.node.id)
88
91
  return;
89
92
  const name = nodePath.node.id.name;
93
+ if (analyzedNames.has(name))
94
+ return;
90
95
  const isExported = t.isExportNamedDeclaration(nodePath.parent) ||
91
96
  t.isExportDefaultDeclaration(nodePath.parent);
92
97
  if (isReactComponent(nodePath.node)) {
93
98
  const componentInfo = (0, componentAnalyzer_1.analyzeComponent)(nodePath, absolutePath);
94
99
  if (componentInfo) {
95
100
  components.push(componentInfo);
101
+ analyzedNames.add(name);
96
102
  }
97
103
  }
98
104
  else if (isExported) {
99
105
  const functionInfo = (0, functionAnalyzer_1.analyzeFunction)(nodePath, absolutePath);
100
106
  if (functionInfo) {
101
107
  functions.push(functionInfo);
108
+ analyzedNames.add(name);
102
109
  }
103
110
  }
104
111
  },
@@ -106,28 +113,55 @@ async function analyzeFile(filePath) {
106
113
  VariableDeclarator(nodePath) {
107
114
  if (!t.isIdentifier(nodePath.node.id))
108
115
  return;
109
- if (!t.isArrowFunctionExpression(nodePath.node.init) && !t.isFunctionExpression(nodePath.node.init)) {
116
+ const name = nodePath.node.id.name;
117
+ if (analyzedNames.has(name))
118
+ return;
119
+ const init = nodePath.node.init;
120
+ // Check if it's a HOC call: const Component = memo(() => {})
121
+ if (t.isCallExpression(init)) {
122
+ const hocResult = analyzeHOCCall(init, name, absolutePath);
123
+ if (hocResult) {
124
+ components.push(hocResult);
125
+ analyzedNames.add(name);
126
+ return;
127
+ }
128
+ }
129
+ // Regular arrow function or function expression
130
+ if (!t.isArrowFunctionExpression(init) && !t.isFunctionExpression(init)) {
110
131
  return;
111
132
  }
112
- const name = nodePath.node.id.name;
113
- const funcNode = nodePath.node.init;
114
133
  // Check if exported
115
134
  const variableDeclaration = nodePath.parentPath;
116
135
  const isExported = variableDeclaration &&
117
136
  (t.isExportNamedDeclaration(variableDeclaration.parent) ||
118
137
  t.isExportDefaultDeclaration(variableDeclaration.parent));
119
- if (isReactComponent(funcNode)) {
138
+ if (isReactComponent(init)) {
120
139
  const componentInfo = (0, componentAnalyzer_1.analyzeComponent)(nodePath, absolutePath);
121
140
  if (componentInfo) {
122
141
  components.push(componentInfo);
142
+ analyzedNames.add(name);
123
143
  }
124
144
  }
125
145
  else if (isExported) {
126
146
  const functionInfo = (0, functionAnalyzer_1.analyzeFunction)(nodePath, absolutePath);
127
147
  if (functionInfo) {
128
148
  functions.push(functionInfo);
149
+ analyzedNames.add(name);
150
+ }
151
+ }
152
+ },
153
+ // Export default with HOC: export default memo(MyComponent)
154
+ ExportDefaultDeclaration(nodePath) {
155
+ const declaration = nodePath.node.declaration;
156
+ // export default memo(Component) or export default memo(() => {})
157
+ if (t.isCallExpression(declaration)) {
158
+ const hocResult = analyzeHOCCall(declaration, 'default', absolutePath);
159
+ if (hocResult && !analyzedNames.has(hocResult.name)) {
160
+ components.push(hocResult);
161
+ analyzedNames.add(hocResult.name);
129
162
  }
130
163
  }
164
+ // export default identifier (already handled by FunctionDeclaration)
131
165
  },
132
166
  });
133
167
  // Determine framework and file type
@@ -142,6 +176,72 @@ async function analyzeFile(filePath) {
142
176
  imports,
143
177
  };
144
178
  }
179
+ /**
180
+ * Check if a CallExpression is a HOC call and extract the component
181
+ */
182
+ function analyzeHOCCall(callExpr, fallbackName, filePath) {
183
+ const hocName = getHOCName(callExpr.callee);
184
+ if (!hocName)
185
+ return null;
186
+ // Get the inner function from HOC arguments
187
+ const innerFunc = extractInnerFunction(callExpr);
188
+ if (!innerFunc) {
189
+ // HOC wrapping an identifier: memo(MyComponent)
190
+ // Try to get the component name from the argument
191
+ if (callExpr.arguments[0] && t.isIdentifier(callExpr.arguments[0])) {
192
+ const componentName = callExpr.arguments[0].name;
193
+ // Return a basic component info - the actual component will be analyzed separately
194
+ return null; // Let the original component be analyzed
195
+ }
196
+ return null;
197
+ }
198
+ // Analyze the inner function as a component
199
+ return (0, componentAnalyzer_1.analyzeHOCComponent)(innerFunc, fallbackName, filePath, hocName);
200
+ }
201
+ /**
202
+ * Get HOC name from callee
203
+ */
204
+ function getHOCName(callee) {
205
+ // memo(), forwardRef()
206
+ if (t.isIdentifier(callee)) {
207
+ if (HOC_NAMES.includes(callee.name)) {
208
+ return callee.name;
209
+ }
210
+ }
211
+ // React.memo(), React.forwardRef()
212
+ if (t.isMemberExpression(callee)) {
213
+ if (t.isIdentifier(callee.object) &&
214
+ callee.object.name === 'React' &&
215
+ t.isIdentifier(callee.property)) {
216
+ const fullName = `React.${callee.property.name}`;
217
+ if (HOC_NAMES.includes(fullName)) {
218
+ return callee.property.name;
219
+ }
220
+ }
221
+ }
222
+ return null;
223
+ }
224
+ /**
225
+ * Extract the inner function from a HOC call
226
+ * Handles nested HOCs: memo(forwardRef((props, ref) => {}))
227
+ */
228
+ function extractInnerFunction(callExpr) {
229
+ const firstArg = callExpr.arguments[0];
230
+ if (!firstArg)
231
+ return null;
232
+ // Direct function: memo(() => {})
233
+ if (t.isArrowFunctionExpression(firstArg) || t.isFunctionExpression(firstArg)) {
234
+ return firstArg;
235
+ }
236
+ // Nested HOC: memo(forwardRef(() => {}))
237
+ if (t.isCallExpression(firstArg)) {
238
+ const nestedHocName = getHOCName(firstArg.callee);
239
+ if (nestedHocName) {
240
+ return extractInnerFunction(firstArg);
241
+ }
242
+ }
243
+ return null;
244
+ }
145
245
  /**
146
246
  * Analyze all files in a directory
147
247
  */
@@ -1 +1 @@
1
- {"version":3,"file":"fileAnalyzer.js","sourceRoot":"","sources":["../../src/analyzer/fileAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileAnalyzer.js","sourceRoot":"","sources":["../../src/analyzer/fileAnalyzer.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -14,7 +14,7 @@ const program = new commander_1.Command();
14
14
  program
15
15
  .name('test-gen-js')
16
16
  .description('Auto-generate test boilerplate code for JavaScript/TypeScript projects')
17
- .version('0.2.1');
17
+ .version('0.3.0');
18
18
  // Generate command
19
19
  program
20
20
  .command('generate <file>')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "test-gen-js",
3
- "version": "0.2.4",
3
+ "version": "0.3.0",
4
4
  "description": "Auto-generate test boilerplate code for JavaScript/TypeScript, React, and React Native projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",