Skip to content

Commit 4f62861

Browse files
committed
chore: update benchmark compare
1 parent 72a385b commit 4f62861

File tree

1 file changed

+48
-41
lines changed

1 file changed

+48
-41
lines changed

Diff for: benchmark-compare.js

+48-41
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
#!/usr/bin/env node
22

3-
const inquirer = require("inquirer");
43
const chalk = require("chalk");
54
const Table = require("cli-table");
65
const { join } = require("path");
76
const { readdirSync, readFileSync } = require("fs");
8-
const commander = require("commander");
7+
const { program } = require("commander");
98
const { compare } = require("./lib/autocannon");
109

11-
commander
10+
program
1211
.option("-t, --table", "table")
1312
.option("-p, --percentage", "percentage")
1413
.option("-c --commandlineMdTable", "Print a table for use in MarkDown")
1514
.parse(process.argv);
1615

17-
const options = commander.opts();
16+
const options = program.opts();
1817
const resultsPath = join(process.cwd(), "results");
1918
let choices = readdirSync(resultsPath)
2019
.filter((file) => file.match(/(.+)\.json$/))
@@ -140,45 +139,53 @@ if (!choices.length) {
140139

141140
console.log(table.toString());
142141
} else {
143-
inquirer
144-
.prompt([
145-
{
146-
type: "list",
147-
name: "choice",
148-
message: "What's your first pick?",
149-
choices,
150-
},
151-
])
152-
.then((firstChoice) => {
153-
choices = choices.filter((choice) => choice !== firstChoice.choice);
154-
inquirer
155-
.prompt([
156-
{
157-
type: "list",
158-
name: "choice",
159-
message: "What's your second one?",
160-
choices,
161-
},
162-
])
163-
.then((secondChoice) => {
164-
const [a, b] = [firstChoice.choice, secondChoice.choice];
165-
const result = compare(a, b);
166-
if (result === true) {
167-
console.log(chalk.green.bold(`${a} and ${b} both are fast!`));
168-
} else {
169-
const fastest = chalk.bold.yellow(result.fastest);
170-
const fastestAverage = chalk.green(result.fastestAverage);
171-
const slowest = chalk.bold.yellow(result.slowest);
172-
const slowestAverage = chalk.green(result.slowestAverage);
173-
const diff = chalk.bold.green(result.diff);
142+
async function getInquirer() {
143+
const { default: inquirer } = await import("inquirer");
174144

175-
console.log(`
145+
return inquirer;
146+
}
147+
148+
getInquirer().then((inquirer) => {
149+
return inquirer
150+
.prompt([
151+
{
152+
type: "list",
153+
name: "choice",
154+
message: "What's your first pick?",
155+
choices,
156+
},
157+
])
158+
.then((firstChoice) => {
159+
choices = choices.filter((choice) => choice !== firstChoice.choice);
160+
inquirer
161+
.prompt([
162+
{
163+
type: "list",
164+
name: "choice",
165+
message: "What's your second one?",
166+
choices,
167+
},
168+
])
169+
.then((secondChoice) => {
170+
const [a, b] = [firstChoice.choice, secondChoice.choice];
171+
const result = compare(a, b);
172+
if (result === true) {
173+
console.log(chalk.green.bold(`${a} and ${b} both are fast!`));
174+
} else {
175+
const fastest = chalk.bold.yellow(result.fastest);
176+
const fastestAverage = chalk.green(result.fastestAverage);
177+
const slowest = chalk.bold.yellow(result.slowest);
178+
const slowestAverage = chalk.green(result.slowestAverage);
179+
const diff = chalk.bold.green(result.diff);
180+
181+
console.log(`
176182
${chalk.blue("Both are awesome but")} ${fastest} ${chalk.blue(
177-
"is",
178-
)} ${diff} ${chalk.blue("faster than")} ${slowest}
183+
"is",
184+
)} ${diff} ${chalk.blue("faster than")} ${slowest}
179185
${fastest} ${chalk.blue("request average is")} ${fastestAverage}
180186
${slowest} ${chalk.blue("request average is")} ${slowestAverage}`);
181-
}
182-
});
183-
});
187+
}
188+
});
189+
});
190+
});
184191
}

0 commit comments

Comments
 (0)