node-stratum-pool/node_modules/bignum/test/seed.js
2014-01-06 15:17:35 -05:00

52 lines
1.4 KiB
JavaScript

var assert = require('assert');
var exec = require('child_process').exec;
exports.rand = function () {
var to = setTimeout(function () {
assert.fail('never executed');
}, 5000);
var cmd = 'node -e \'console.log(require('
+ JSON.stringify(__dirname + '/../')
+ ').rand(1000).toString())\''
;
exec(cmd, function (err1, r1) {
exec(cmd, function (err2, r2) {
clearTimeout(to);
assert.ok(!err1);
assert.ok(!err2);
assert.ok(
r1.match(/^\d+\n/),
JSON.stringify(r1) + ' is not an integer'
);
assert.ok(
r2.match(/^\d+\n/),
JSON.stringify(r2) + ' is not an integer'
);
var n1 = parseInt(r1.split('\n')[0], 10);
var n2 = parseInt(r2.split('\n')[0], 10);
assert.ok(n1 >= 0, 'n1 >= 0');
assert.ok(n2 >= 0, 'n2 >= 0');
assert.ok(n1 < 1000, 'n1 < 1000');
assert.ok(n2 < 1000, 'n2 < 1000');
assert.ok(n1 != n2, 'n1 != n2');
})
});
}
if (process.argv[1] === __filename) {
assert.eql = assert.deepEqual;
Object.keys(exports).forEach(function (ex) {
exports[ex]();
});
if ("function" === typeof gc) {
gc();
}
}