fcoin/bench/coins.js
2017-07-31 18:21:03 -07:00

41 lines
745 B
JavaScript

'use strict';
const fs = require('fs');
const Coins = require('../lib/coins/coins');
const TX = require('../lib/primitives/tx');
const bench = require('./bench');
const hex = fs.readFileSync(`${__dirname}/../test/data/wtx.hex`, 'utf8');
const wtx = TX.fromRaw(hex.trim(), 'hex');
const coins = Coins.fromTX(wtx, 1);
const raw = coins.toRaw();
{
const end = bench('serialize');
for (let i = 0; i < 10000; i++)
coins.toRaw();
end(10000);
}
{
const end = bench('parse');
for (let i = 0; i < 10000; i++)
Coins.fromRaw(raw);
end(10000);
}
{
const end = bench('get');
for (let i = 0; i < 10000; i++) {
for (let j = 0; j < coins.outputs.length; j++)
coins.get(j);
}
end(10000 * coins.outputs.length);
}