@zhiweiliu/playwright-generator 1.0.34 → 1.0.35

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/dist/cli.js CHANGED
@@ -12,7 +12,7 @@ const program = new commander_1.Command();
12
12
  program
13
13
  .name("playwright-generator")
14
14
  .description("Generate Playwright test cases from natural language using LLM")
15
- .version("1.0.34");
15
+ .version("1.0.35");
16
16
  // Init command
17
17
  program
18
18
  .command("init [projectPath]")
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA4Gf;AA0FD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA0FzD"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAOD,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAyFf;AAoFD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8EzD"}
@@ -10,11 +10,20 @@ const fs_extra_1 = __importDefault(require("fs-extra"));
10
10
  const glob_1 = require("glob");
11
11
  const chalk_1 = __importDefault(require("chalk"));
12
12
  const llm_1 = require("../llm");
13
+ const config_1 = __importDefault(require("../config"));
14
+ // Normalise Windows backslashes to forward slashes for glob
15
+ function toGlobPath(p) {
16
+ return p.split(path_1.default.sep).join("/");
17
+ }
13
18
  async function generateTestCode(projectRoot, options) {
14
19
  try {
15
20
  if (!options.testCaseIds || options.testCaseIds.length === 0) {
16
21
  throw new Error("Please specify at least one test case ID with --tc flag");
17
22
  }
23
+ // Override model from CLI flag before creating the provider
24
+ if (options.model) {
25
+ config_1.default.setModel(options.model);
26
+ }
18
27
  const llmProvider = llm_1.LLMFactory.createProvider();
19
28
  // Validate LLM connection
20
29
  console.log(chalk_1.default.blue("Validating LLM connection..."));
@@ -34,42 +43,34 @@ async function generateTestCode(projectRoot, options) {
34
43
  }
35
44
  // Ensure generated directory exists
36
45
  await fs_extra_1.default.ensureDir(generatedDir);
37
- let outputFilePath = options.outputFile
46
+ const outputFilePath = options.outputFile
38
47
  ? path_1.default.join(generatedDir, options.outputFile)
39
48
  : path_1.default.join(generatedDir, "generated.test.ts");
40
49
  // Ensure output file exists with imports if it's new
41
50
  if (!fs_extra_1.default.existsSync(outputFilePath)) {
42
- const header = `import { test, expect } from '@playwright/test';\n\n`;
43
- await fs_extra_1.default.writeFile(outputFilePath, header);
51
+ await fs_extra_1.default.writeFile(outputFilePath, `import { test, expect } from '@playwright/test';\n\n`);
44
52
  }
45
53
  for (const testCaseId of options.testCaseIds) {
46
- console.log(chalk_1.default.blue(`\\nGenerating test case: ${testCaseId}...`));
47
- // Find the test case file
54
+ console.log(chalk_1.default.blue(`\nGenerating test case: ${testCaseId}...`));
48
55
  const testCaseFile = await findTestCaseFile(testsDir, testCaseId);
49
56
  if (!testCaseFile) {
50
57
  console.error(chalk_1.default.red(`✗ Test case file not found for: ${testCaseId}`));
51
58
  continue;
52
59
  }
53
60
  console.log(chalk_1.default.gray(`Found: ${path_1.default.relative(projectRoot, testCaseFile)}`));
54
- // Read test case content
55
61
  const fullFileContent = await fs_extra_1.default.readFile(testCaseFile, "utf-8");
56
- // Extract only the specific test case content
57
62
  const testCaseContent = extractTestCaseContent(fullFileContent, testCaseId);
58
- // Extract tags
59
63
  const tags = extractTags(testCaseContent);
60
- // Create LLM prompt
61
64
  const prompt = {
62
65
  testCase: testCaseContent,
63
66
  testCaseId: testCaseId,
64
67
  tags: tags,
65
68
  };
66
- // Generate code
67
69
  const generatedCode = await llmProvider.generateTestCode(prompt);
68
- // Append to output file
69
70
  await appendTestCodeToFile(outputFilePath, generatedCode.code, testCaseId, tags);
70
71
  console.log(chalk_1.default.green(`✓ Generated test case: ${testCaseId}`));
71
72
  }
72
- console.log(chalk_1.default.green.bold(`\\n✓ Code generation completed!`));
73
+ console.log(chalk_1.default.green.bold(`\n✓ Code generation completed!`));
73
74
  console.log(chalk_1.default.cyan(`Generated file: ${path_1.default.relative(projectRoot, outputFilePath)}`));
74
75
  console.log(chalk_1.default.cyan("Next: Review the generated code and run: npm test"));
75
76
  }
@@ -80,7 +81,7 @@ async function generateTestCode(projectRoot, options) {
80
81
  }
81
82
  async function findTestCaseFile(testsDir, testCaseId) {
82
83
  try {
83
- const files = await (0, glob_1.glob)(path_1.default.join(testsDir, "**/*.test.md"));
84
+ const files = await (0, glob_1.glob)(toGlobPath(path_1.default.join(testsDir, "**/*.test.md")));
84
85
  for (const file of files) {
85
86
  const content = await fs_extra_1.default.readFile(file, "utf-8");
86
87
  if (content.includes(`[${testCaseId}]`)) {
@@ -95,7 +96,7 @@ async function findTestCaseFile(testsDir, testCaseId) {
95
96
  }
96
97
  }
97
98
  async function findDuplicateTestCaseIds(testsDir) {
98
- const files = await (0, glob_1.glob)(path_1.default.join(testsDir, "**/*.test.md"));
99
+ const files = await (0, glob_1.glob)(toGlobPath(path_1.default.join(testsDir, "**/*.test.md")));
99
100
  const idMap = {};
100
101
  const idRegex = /\[TC-[A-Z0-9_-]+\]/gi;
101
102
  for (const file of files) {
@@ -109,10 +110,9 @@ async function findDuplicateTestCaseIds(testsDir) {
109
110
  return Object.keys(idMap).filter((id) => idMap[id] > 1);
110
111
  }
111
112
  function extractTestCaseContent(fileContent, testCaseId) {
112
- const lines = fileContent.split("\n");
113
+ const lines = fileContent.replace(/\r\n/g, "\n").split("\n");
113
114
  let startIndex = -1;
114
115
  let endIndex = lines.length;
115
- // Find the line with the test case ID
116
116
  for (let i = 0; i < lines.length; i++) {
117
117
  if (lines[i].includes(`[${testCaseId}]`)) {
118
118
  startIndex = i;
@@ -122,7 +122,6 @@ function extractTestCaseContent(fileContent, testCaseId) {
122
122
  if (startIndex === -1) {
123
123
  throw new Error(`Test case [${testCaseId}] not found in file`);
124
124
  }
125
- // Find the start of this test case (previous "# Test Case:" / "## Test Case:" heading or beginning of file)
126
125
  for (let i = startIndex - 1; i >= 0; i--) {
127
126
  if (/^#{1,2}\s+Test Case:/i.test(lines[i].trim())) {
128
127
  startIndex = i;
@@ -132,16 +131,13 @@ function extractTestCaseContent(fileContent, testCaseId) {
132
131
  startIndex = 0;
133
132
  }
134
133
  }
135
- // Find the end of this test case (next "# Test Case:" / "## Test Case:" heading or end of file)
136
134
  for (let i = startIndex + 1; i < lines.length; i++) {
137
135
  if (/^#{1,2}\s+Test Case:/i.test(lines[i].trim()) && i > startIndex) {
138
136
  endIndex = i;
139
137
  break;
140
138
  }
141
139
  }
142
- // Extract the test case content
143
- const testCaseLines = lines.slice(startIndex, endIndex);
144
- return testCaseLines.join("\n").trim();
140
+ return lines.slice(startIndex, endIndex).join("\n").trim();
145
141
  }
146
142
  function extractTags(testCaseContent) {
147
143
  const tagLine = testCaseContent.split("\n").find(line => /\[TC-[A-Z0-9_-]+\]/i.test(line)) || "";
@@ -150,7 +146,6 @@ function extractTags(testCaseContent) {
150
146
  return matches.map(m => m[1]).filter(t => t.length > 0);
151
147
  }
152
148
  function extractTypeScriptCode(raw) {
153
- // Try fencing blocks first, picking the longest snippet (best chance of complete function)
154
149
  const fenceRegex = /```(?:ts|typescript|javascript)?\s*\n([\s\S]*?)\n```/gi;
155
150
  const fenceMatches = [...raw.matchAll(fenceRegex)];
156
151
  if (fenceMatches.length > 0) {
@@ -158,11 +153,9 @@ function extractTypeScriptCode(raw) {
158
153
  .map((m) => m[1]?.trim() || "")
159
154
  .filter(Boolean);
160
155
  if (codeBlocks.length > 0) {
161
- const best = codeBlocks.reduce((prev, curr) => (curr.length > prev.length ? curr : prev), "");
162
- return best.trim();
156
+ return codeBlocks.reduce((prev, curr) => (curr.length > prev.length ? curr : prev), "").trim();
163
157
  }
164
158
  }
165
- // If no fenced blocks, extract the first complete test() function
166
159
  const testIndex = raw.indexOf("test(");
167
160
  if (testIndex !== -1) {
168
161
  const arrowIndex = raw.indexOf("=>", testIndex);
@@ -217,19 +210,15 @@ function extractTypeScriptCode(raw) {
217
210
  if (endIndex !== -1) {
218
211
  return raw.slice(testIndex, endIndex).trim();
219
212
  }
220
- // If brace matching fails, keep raw from test( to end as fallback
221
213
  return raw.slice(testIndex).trim();
222
214
  }
223
- // Last resort: return the entire input trimmed
224
215
  return raw.trim();
225
216
  }
226
217
  async function appendTestCodeToFile(filePath, generatedCode, testCaseId, tags) {
227
218
  let code = extractTypeScriptCode(generatedCode);
228
- // Enforce all tags in the test title deterministically
229
- const tagString = tags.map(t => `[${t}]`).join(' ');
219
+ const tagString = tags.map(t => `[${t}]`).join(" ");
230
220
  code = code.replace(/^(test\s*\(\s*['"`])(.+?)(['"`])/m, (_, open, title, close) => {
231
- // Strip any existing bracket tags from the title, then prepend all tags
232
- const stripped = title.replace(/\[[A-Z0-9\-]+\]\s*/g, '').trim();
221
+ const stripped = title.replace(/\[[A-Z0-9\-]+\]\s*/g, "").trim();
233
222
  return `${open}${tagString} ${stripped}${close}`;
234
223
  });
235
224
  let currentContent = await fs_extra_1.default.readFile(filePath, "utf-8");
@@ -241,21 +230,17 @@ async function appendTestCodeToFile(filePath, generatedCode, testCaseId, tags) {
241
230
  .join("\n")
242
231
  .trim();
243
232
  }
244
- // Remove all existing occurrences of this test case ID to make latest output win.
245
233
  while (true) {
246
234
  const idIndex = currentContent.indexOf(testCaseId);
247
235
  if (idIndex === -1)
248
236
  break;
249
- // Find beginning of enclosing test block
250
237
  const startIndex = currentContent.lastIndexOf("test(", idIndex);
251
238
  if (startIndex === -1) {
252
- // If we can't find enclosing test block, remove just the literal ID and continue.
253
239
  currentContent =
254
240
  currentContent.slice(0, idIndex) +
255
241
  currentContent.slice(idIndex + testCaseId.length);
256
242
  continue;
257
243
  }
258
- // Determine end of enclosing test block (next `test(` or end of file)
259
244
  const nextTestIndex = currentContent.indexOf("test(", startIndex + 1);
260
245
  const endIndex = nextTestIndex !== -1 ? nextTestIndex : currentContent.length;
261
246
  currentContent =
@@ -263,7 +248,6 @@ async function appendTestCodeToFile(filePath, generatedCode, testCaseId, tags) {
263
248
  "\n\n" +
264
249
  currentContent.slice(endIndex).trimStart();
265
250
  }
266
- // Append latest code
267
251
  if (!currentContent.endsWith("\n\n")) {
268
252
  currentContent += "\n\n";
269
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -22,6 +22,7 @@ export declare class ConfigManager {
22
22
  static getInstance(): ConfigManager;
23
23
  private loadConfig;
24
24
  getConfig(): Config;
25
+ setModel(model: "claude" | "azure-openai" | "chatgpt" | "local"): void;
25
26
  validateConfig(): boolean;
26
27
  getEnvFilePath(projectRoot: string): string;
27
28
  envFileExists(projectRoot: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,aAAa;IAOnC,OAAO,CAAC,UAAU;IAsBlB,SAAS,IAAI,MAAM;IAInB,cAAc,IAAI,OAAO;IAkBzB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI3C,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;CAG5C;;AAED,wBAA2C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,aAAa;IAOnC,OAAO,CAAC,UAAU;IAsBlB,SAAS,IAAI,MAAM;IAInB,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,IAAI;IAGtE,cAAc,IAAI,OAAO;IAkBzB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI3C,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;CAG5C;;AAED,wBAA2C"}
package/dist/config.js CHANGED
@@ -42,6 +42,9 @@ class ConfigManager {
42
42
  getConfig() {
43
43
  return this.config;
44
44
  }
45
+ setModel(model) {
46
+ this.config.aiModel = model;
47
+ }
45
48
  validateConfig() {
46
49
  const { aiModel, claudeApiKey, azureOpenAIApiKey, azureOpenAIEndpoint, azureOpenAIDeployment } = this.config;
47
50
  if (aiModel === "azure-openai") {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,gDAAwB;AACxB,4CAAoB;AAEpB,6BAA6B;AAC7B,gBAAM,CAAC,MAAM,EAAE,CAAC;AAoBhB,MAAa,aAAa;IAIxB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAEO,UAAU;QAChB,OAAO;YACL,OAAO,EAAG,OAAO,CAAC,GAAG,CAAC,QAA4D,IAAI,QAAQ;YAC9F,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;YACxC,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;YACnD,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YACtD,qBAAqB,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB;YAC1D,qBAAqB,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,YAAY;YAC3E,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;YAC1C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,QAAQ;YACnD,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,wBAAwB;YAClE,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,QAAQ;YACtD,OAAO,EACJ,OAAO,CAAC,GAAG,CAAC,OAA6C;gBAC1D,UAAU;YACZ,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO;YAC1C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,uBAAuB;YACxD,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,EAAE,EAAE,CAAC;YACrD,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,EAAE,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,cAAc;QACZ,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAE7G,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC,iBAAiB,IAAI,CAAC,mBAAmB,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACzE,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;YAClI,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,OAAO,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,aAAa,CAAC,WAAmB;QAC/B,OAAO,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;IACzD,CAAC;CACF;AAlED,sCAkEC;AAED,kBAAe,aAAa,CAAC,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,7 +2,6 @@ export * from "./config";
2
2
  export * from "./commands/init";
3
3
  export * from "./commands/generate";
4
4
  export * from "./llm/provider";
5
- export { CopilotProvider } from "./llm/copilot";
6
5
  export { ClaudeProvider } from "./llm/claude";
7
6
  export { LLMFactory } from "./llm";
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC"}
package/dist/index.js CHANGED
@@ -14,13 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.LLMFactory = exports.ClaudeProvider = exports.CopilotProvider = void 0;
17
+ exports.LLMFactory = exports.ClaudeProvider = void 0;
18
18
  __exportStar(require("./config"), exports);
19
19
  __exportStar(require("./commands/init"), exports);
20
20
  __exportStar(require("./commands/generate"), exports);
21
21
  __exportStar(require("./llm/provider"), exports);
22
- var copilot_1 = require("./llm/copilot");
23
- Object.defineProperty(exports, "CopilotProvider", { enumerable: true, get: function () { return copilot_1.CopilotProvider; } });
24
22
  var claude_1 = require("./llm/claude");
25
23
  Object.defineProperty(exports, "ClaudeProvider", { enumerable: true, get: function () { return claude_1.ClaudeProvider; } });
26
24
  var llm_1 = require("./llm");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,kDAAgC;AAChC,sDAAoC;AACpC,iDAA+B;AAC/B,yCAAgD;AAAvC,0GAAA,eAAe,OAAA;AACxB,uCAA8C;AAArC,wGAAA,cAAc,OAAA;AACvB,6BAAmC;AAA1B,iGAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,kDAAgC;AAChC,sDAAoC;AACpC,iDAA+B;AAC/B,uCAA8C;AAArC,wGAAA,cAAc,OAAA;AACvB,6BAAmC;AAA1B,iGAAA,UAAU,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/llm/claude.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEnE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAA2C;gBAE9C,MAAM,EAAE,MAAM;IAapB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IA8CtC,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;CA0DlE"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/llm/claude.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEnE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAA2C;gBAE9C,MAAM,EAAE,MAAM;IAapB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IA8CtC,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;CAyDlE"}
@@ -94,8 +94,7 @@ class ClaudeProvider extends provider_1.LLMProvider {
94
94
  error.response.data?.error?.type === "not_found_error") {
95
95
  throw new Error(`Failed to generate code with Claude: Model not available. ` +
96
96
  `Your Anthropic account may not have access to Claude models. ` +
97
- `Please check your account at https://console.anthropic.com/ and ensure Claude API access is enabled. ` +
98
- `Alternatively, try using Copilot: set AI_MODEL=copilot in your .env file.`);
97
+ `Please check your account at https://console.anthropic.com/ and ensure Claude API access is enabled. `);
99
98
  }
100
99
  throw new Error(`Failed to generate code with Claude: ${errorMessage}`);
101
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/llm/claude.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,yCAAmE;AAEnE,MAAa,cAAe,SAAQ,sBAAW;IAI7C,YAAY,MAAc;QACxB,KAAK,EAAE,CAAC;QAHF,YAAO,GAAG,uCAAuC,CAAC;QAIxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,IAAI,CAAC,OAAO,EACZ;gBACE,KAAK,EAAE,2BAA2B;gBAClC,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,MAAM;qBAChB;iBACF;aACF,EACD;gBACE,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI,CAAC,MAAM;oBACxB,mBAAmB,EAAE,YAAY;oBACjC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,OAAO,EAAE,KAAK;aACf,CACF,CAAC;YACF,OAAO,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC;QACjC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,IACE,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;oBAC7B,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,iBAAiB,EACtD,CAAC;oBACD,OAAO,CAAC,KAAK,CACX,oKAAoK,CACrK,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,mDAAmD,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,EAC3E,KAAK,CAAC,QAAQ,CAAC,IAAI,CACpB,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACvE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAiB;QACtC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAE9C,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,IAAI,CAAC,OAAO,EACZ;gBACE,KAAK,EAAE,2BAA2B;gBAClC,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,YAAY;qBACtB;iBACF;aACF,EACD;gBACE,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI,CAAC,MAAM;oBACxB,mBAAmB,EAAE,YAAY;oBACjC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,OAAO,EAAE,KAAK;aACf,CACF,CAAC;YAEF,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YAE7D,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,KAAK,EAAE,QAAQ;gBACf,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ;gBACjC,CAAC,CAAC,QAAQ,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAChG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;YAElB,IACE,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG;gBAC9B,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,iBAAiB,EACtD,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,4DAA4D;oBAC1D,+DAA+D;oBAC/D,uGAAuG;oBACvG,2EAA2E,CAC9E,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,YAAY,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;CACF;AAzHD,wCAyHC"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/llm/claude.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhiweiliu/playwright-generator",
3
- "version": "1.0.34",
3
+ "version": "1.0.35",
4
4
  "description": "Generate Playwright test cases from natural language using LLM",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -14,7 +14,6 @@
14
14
  "build": "tsc",
15
15
  "dev": "ts-node src/cli.ts",
16
16
  "start": "node dist/cli.js",
17
- "validate:tc0002": "ts-node scripts/validate-tc0002.ts",
18
17
  "prepublishOnly": "npm run build"
19
18
  },
20
19
  "keywords": [
@@ -23,7 +22,6 @@
23
22
  "llm",
24
23
  "ai",
25
24
  "test-generation",
26
- "copilot",
27
25
  "claude"
28
26
  ],
29
27
  "author": "Zhiwei Liu",