Use Unicode box-drawing characters for command-line benchmark table

Hopefully this works reasonably in all environments where Node.js runs.
redux
David Majda 13 years ago
parent 17c1531068
commit f0eab4728a

@ -37,38 +37,38 @@ function center(text, length) {
} }
function writeTableHeader() { function writeTableHeader() {
sys.puts("+-------------------------------------+-----------+------------+--------------+"); sys.puts("┌─────────────────────────────────────┬───────────┬────────────┬──────────────┐");
sys.puts("| Test | Inp. size | Avg. time | Avg. speed |"); sys.puts("│ Test │ Inp. size │ Avg. time │ Avg. speed │");
} }
function writeHeading(heading) { function writeHeading(heading) {
sys.puts("+-------------------------------------+-----------+------------+--------------+"); sys.puts("├─────────────────────────────────────┴───────────┴────────────┴──────────────┤");
sys.puts("| " + center(heading, 75) + " |"); sys.puts("│ " + center(heading, 75) + " │");
sys.puts("+-------------------------------------+-----------+------------+--------------+"); sys.puts("├─────────────────────────────────────┬───────────┬────────────┬──────────────┤");
} }
function writeResult(title, inputSize, parseTime) { function writeResult(title, inputSize, parseTime) {
var KB = 1024; var KB = 1024;
var MS_IN_S = 1000; var MS_IN_S = 1000;
sys.puts("| " sys.puts(" "
+ padRight(title, 35) + padRight(title, 35)
+ " | " + " "
+ padLeft((inputSize / KB).toFixed(2), 6) + padLeft((inputSize / KB).toFixed(2), 6)
+ " kB | " + " kB "
+ padLeft(parseTime.toFixed(2), 7) + padLeft(parseTime.toFixed(2), 7)
+ " ms | " + " ms "
+ padLeft(((inputSize / KB) / (parseTime / MS_IN_S)).toFixed(2), 7) + padLeft(((inputSize / KB) / (parseTime / MS_IN_S)).toFixed(2), 7)
+ " kB/s |" + " kB/s "
); );
} }
function writeSeparator() { function writeSeparator() {
sys.puts("+-------------------------------------+-----------+------------+--------------+"); sys.puts("├─────────────────────────────────────┼───────────┼────────────┼──────────────┤");
} }
function writeTableFooter() { function writeTableFooter() {
sys.puts("+-------------------------------------+-----------+------------+--------------+"); sys.puts("└─────────────────────────────────────┴───────────┴────────────┴──────────────┘");
} }
/* Helpers */ /* Helpers */

Loading…
Cancel
Save