|
|
@ -23,20 +23,24 @@ if ( process.cwd() !== cwd ) process.chdir( cwd ); |
|
|
|
|
|
|
|
// Execution Files |
|
|
|
|
|
|
|
let PEGJS_BIN = "bin/peg.js"; |
|
|
|
let BENCHMARK_BIN = "test/benchmark/run"; |
|
|
|
let NEWER_PEGJS_BIN = "bin/peg.js"; |
|
|
|
let NEWER_BENCHMARK_BIN = "test/benchmark/run"; |
|
|
|
|
|
|
|
if ( ! fs.existsSync( PEGJS_BIN ) ) { |
|
|
|
const ef = { |
|
|
|
|
|
|
|
PEGJS_BIN = "bin/pegjs"; |
|
|
|
get pegjs() { |
|
|
|
|
|
|
|
} |
|
|
|
return fs.existsSync( NEWER_PEGJS_BIN ) ? NEWER_PEGJS_BIN : "bin/pegjs"; |
|
|
|
|
|
|
|
if ( ! fs.existsSync( BENCHMARK_BIN ) ) { |
|
|
|
}, |
|
|
|
|
|
|
|
BENCHMARK_BIN = "benchmark/run"; |
|
|
|
get benchmark() { |
|
|
|
|
|
|
|
} |
|
|
|
return fs.existsSync( NEWER_BENCHMARK_BIN ) ? NEWER_BENCHMARK_BIN : "benchmark/run"; |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
// Utils |
|
|
|
|
|
|
@ -61,7 +65,7 @@ function prepare( commit ) { |
|
|
|
function runBenchmark() { |
|
|
|
|
|
|
|
return parseFloat( |
|
|
|
exec( "node " + BENCHMARK_BIN ) |
|
|
|
exec( "node " + ef.benchmark ) |
|
|
|
|
|
|
|
// Split by table seprator, reverse and return the total bytes per second |
|
|
|
.split( "│" ) |
|
|
@ -87,7 +91,7 @@ function measureSize() { |
|
|
|
glob.sync( "examples/*.pegjs" ) |
|
|
|
.forEach( example => { |
|
|
|
|
|
|
|
exec( `node ${ PEGJS_BIN } ${ example }` ); |
|
|
|
exec( `node ${ ef.pegjs } ${ example }` ); |
|
|
|
example = example.slice( 0, -5 ) + "js"; |
|
|
|
size += fs.statSync( example ).size; |
|
|
|
fs.unlinkSync( example ); |
|
|
|