Skip to content

Commit ca13bc9

Browse files
committed
feat(cli): add version
1 parent a1f3e66 commit ca13bc9

File tree

2 files changed

+21
-5
lines changed

2 files changed

+21
-5
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "testcase-gen",
3-
"version": "0.1.1",
3+
"version": "0.2.0",
44
"description": "Testcase Generator",
55
"main": "lib/index.js",
66
"types": "lib/index.d.ts",

src/cli.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,23 @@ import { existsSync, writeFileSync } from "fs";
22
import { join } from "path";
33
import { Generator, recipe, testcase, generateMode } from "./";
44

5-
// get recipe and output from command line
5+
if (
6+
process.argv.findIndex((arg) => arg === "--version") !== -1 ||
7+
process.argv.findIndex((arg) => arg === "-v") !== -1 ||
8+
process.argv.findIndex((arg) => arg === "-V") !== -1
9+
) {
10+
console.log("testcase-gen version: " + "\u001b[1;93m" + require("../package.json").version + "\u001b[0m");
11+
console.log("Usage: testcase-gen --recipe [recipe] --output [output] --mode [mode]");
12+
console.log("\t--recipe (-r): Recipe JS File Path.");
13+
console.log("\t--output (-o): Output File Path.");
14+
console.log('\t--mode (-m): Generate Mode. "simple" or "normal".');
15+
console.log("\t--version (-V) or (-v): Show version.");
16+
console.log("Homepage: " + "\u001b[94m" + require("../package.json").homepage + "\u001b[0m");
17+
process.exit(0);
18+
}
19+
620
let recipePath = join(process.cwd(), "recipe.js"),
7-
outputPath = join(process.cwd(), "testcases.txt"),
21+
outputPath = "",
822
mode: generateMode = "simple";
923
if (process.argv.findIndex((arg) => arg === "--recipe") !== -1 || process.argv.findIndex((arg) => arg === "-r") !== -1) {
1024
recipePath =
@@ -46,9 +60,11 @@ const testcases = generator.gen(mode);
4660
const EndTime = Date.now();
4761

4862
if (mode === "simple") {
63+
if (!outputPath) outputPath = join(process.cwd(), "testcases.txt");
4964
writeFileSync(outputPath, testcases as string, "utf-8");
50-
console.log("\033[92m" + `Testcases generated in ${EndTime - StartTime}ms at ${outputPath}.` + "\033[0m");
65+
console.log("\u001b[92m" + `Testcases generated in ${EndTime - StartTime}ms at ${outputPath}.` + "\u001b[0m");
5166
} else {
67+
if (!outputPath) outputPath = join(process.cwd(), "testcases.json");
5268
writeFileSync(outputPath, JSON.stringify(testcases as testcase[], null, 2), "utf-8");
53-
console.log("\033[92m" + `${(testcases as testcase[]).length} testcases generated in ${EndTime - StartTime}ms at ${outputPath}.` + "\033[0m");
69+
console.log("\u001b[92m" + `${(testcases as testcase[]).length} testcases generated in ${EndTime - StartTime}ms at ${outputPath}.` + "\u001b[0m");
5470
}

0 commit comments

Comments
 (0)