33 lines
821 B
JavaScript
33 lines
821 B
JavaScript
'use strict';
|
|
|
|
const fs = require('fs');
|
|
const TX = require('../lib/primitives/tx');
|
|
const BufferWriter = require('../lib/utils/writer');
|
|
const StaticWriter = require('../lib/utils/staticwriter');
|
|
const bench = require('./bench');
|
|
|
|
const hex = fs.readFileSync(`${__dirname}/../test/data/wtx.hex`, 'utf8');
|
|
const raw = Buffer.from(hex.trim(), 'hex');
|
|
const tx = TX.fromRaw(raw);
|
|
|
|
{
|
|
const end = bench('serialize (static-writer)');
|
|
for (let i = 0; i < 10000; i++) {
|
|
tx.refresh();
|
|
const {size} = tx.getWitnessSizes();
|
|
const bw = new StaticWriter(size);
|
|
tx.toWitnessWriter(bw).render();
|
|
}
|
|
end(10000);
|
|
}
|
|
|
|
{
|
|
const end = bench('serialize (buffer-writer)');
|
|
for (let i = 0; i < 10000; i++) {
|
|
tx.refresh();
|
|
const bw = new BufferWriter();
|
|
tx.toWitnessWriter(bw).render();
|
|
}
|
|
end(10000);
|
|
}
|