-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrunner.js
33 lines (25 loc) · 1.21 KB
/
runner.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
'use strict';
const CP = require('child_process');
module.exports.VERSION = {
'6.10.1_v8': '/home/vladimir/.nvm/versions/node/v6.10.1/bin/node',
'7.10.0_v8': '/home/vladimir/.nvm/versions/node/v7.10.0/bin/node',
'7.10.0_v8_turbo_ignition': '/home/vladimir/.nvm/versions/node/v7.10.0/bin/node --turbo --ignition',
'8.0.0_v8': '/home/vladimir/.nvm/versions/node/v8.0.0/bin/node',
'8.0.0_v8_turbo_ignition': '/home/vladimir/.nvm/versions/node/v8.0.0/bin/node --turbo --ignition',
'8.0.0-nightly20170415265fc0bedc_chakra': '/home/vladimir/.nvs/chakracore/8.0.0-pre2/x64/bin/node',
'8.0.0-nightly20170505fe44f54949_chakra': '/home/vladimir/.nvs/chakracore-nightly/8.0.0-nightly20170505fe44f54949/x64/bin/node'
};
module.exports.runWith = function (exec, file, cb) {
const command = exec + ' ' + file;
return CP.exec(command, cb);
};
module.exports.timeRun = function (exec, file, arg) {
const command = exec + ' ' + file + ' ' + arg;
console.log('\t\t', command);
const t0 = process.hrtime();
CP.execSync(command);
const t1 = process.hrtime(t0); // [seconds, nanoseconds]
const result = t1[0] * 1000 + t1[1]/1e6;
console.log('\t\t', result, 'ms');
return result;
};