32 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
'use strict';
 | 
						|
 | 
						|
const Benchmark = require('benchmark');
 | 
						|
const suite = new Benchmark.Suite;
 | 
						|
const testData = require('./test.json');
 | 
						|
 | 
						|
 | 
						|
const stringifyPackages = {
 | 
						|
  // 'JSON.stringify': JSON.stringify,
 | 
						|
  'fast-json-stable-stringify': require('../index'),
 | 
						|
  'json-stable-stringify': true,
 | 
						|
  'fast-stable-stringify': true,
 | 
						|
  'faster-stable-stringify': true
 | 
						|
};
 | 
						|
 | 
						|
 | 
						|
for (const name in stringifyPackages) {
 | 
						|
  let func = stringifyPackages[name];
 | 
						|
  if (func === true) func = require(name);
 | 
						|
 | 
						|
  suite.add(name, function() {
 | 
						|
    func(testData);
 | 
						|
  });
 | 
						|
}
 | 
						|
 | 
						|
suite
 | 
						|
  .on('cycle', (event) => console.log(String(event.target)))
 | 
						|
  .on('complete', function () {
 | 
						|
    console.log('The fastest is ' + this.filter('fastest').map('name'));
 | 
						|
  })
 | 
						|
  .run({async: true});
 |