1 |
3a515b92
|
cagy
|
'use strict';
|
2 |
|
|
|
3 |
|
|
const Benchmark = require('benchmark');
|
4 |
|
|
const suite = new Benchmark.Suite;
|
5 |
|
|
const testData = require('./test.json');
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
const stringifyPackages = {
|
9 |
|
|
// 'JSON.stringify': JSON.stringify,
|
10 |
|
|
'fast-json-stable-stringify': require('../index'),
|
11 |
|
|
'json-stable-stringify': true,
|
12 |
|
|
'fast-stable-stringify': true,
|
13 |
|
|
'faster-stable-stringify': true
|
14 |
|
|
};
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
for (const name in stringifyPackages) {
|
18 |
|
|
let func = stringifyPackages[name];
|
19 |
|
|
if (func === true) func = require(name);
|
20 |
|
|
|
21 |
|
|
suite.add(name, function() {
|
22 |
|
|
func(testData);
|
23 |
|
|
});
|
24 |
|
|
}
|
25 |
|
|
|
26 |
|
|
suite
|
27 |
|
|
.on('cycle', (event) => console.log(String(event.target)))
|
28 |
|
|
.on('complete', function () {
|
29 |
|
|
console.log('The fastest is ' + this.filter('fastest').map('name'));
|
30 |
|
|
})
|
31 |
|
|
.run({async: true});
|