You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							31 lines
						
					
					
						
							740 B
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							31 lines
						
					
					
						
							740 B
						
					
					
				
								'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});
							 | 
						|
								
							 |