node/test/common/benchmark.js
Jon Moss 640b20616d
test: create shared runBenchmark function
Mostly shared/duplicated logic between all benchmark test files, so
creating a new common module to store it.

PR-URL: https://github.com/nodejs/node/pull/15004
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
2017-09-11 11:26:15 -04:00

30 lines
674 B
JavaScript

/* eslint-disable required-modules */
'use strict';
const assert = require('assert');
const fork = require('child_process').fork;
const path = require('path');
const runjs = path.join(__dirname, '..', '..', 'benchmark', 'run.js');
function runBenchmark(name, args, env) {
const argv = [];
for (let i = 0; i < args.length; i++) {
argv.push('--set');
argv.push(args[i]);
}
argv.push(name);
const mergedEnv = Object.assign({}, process.env, env);
const child = fork(runjs, argv, { env: mergedEnv });
child.on('exit', (code, signal) => {
assert.strictEqual(code, 0);
assert.strictEqual(signal, null);
});
}
module.exports = runBenchmark;