Spaces:
Sleeping
Sleeping
/* eslint no-console: "off" */ | |
var asynckit = require('./') | |
, async = require('async') | |
, assert = require('assert') | |
, expected = 0 | |
; | |
var Benchmark = require('benchmark'); | |
var suite = new Benchmark.Suite; | |
var source = []; | |
for (var z = 1; z < 100; z++) | |
{ | |
source.push(z); | |
expected += z; | |
} | |
suite | |
// add tests | |
.add('async.map', function(deferred) | |
{ | |
var total = 0; | |
async.map(source, | |
function(i, cb) | |
{ | |
setImmediate(function() | |
{ | |
total += i; | |
cb(null, total); | |
}); | |
}, | |
function(err, result) | |
{ | |
assert.ifError(err); | |
assert.equal(result[result.length - 1], expected); | |
deferred.resolve(); | |
}); | |
}, {'defer': true}) | |
.add('asynckit.parallel', function(deferred) | |
{ | |
var total = 0; | |
asynckit.parallel(source, | |
function(i, cb) | |
{ | |
setImmediate(function() | |
{ | |
total += i; | |
cb(null, total); | |
}); | |
}, | |
function(err, result) | |
{ | |
assert.ifError(err); | |
assert.equal(result[result.length - 1], expected); | |
deferred.resolve(); | |
}); | |
}, {'defer': true}) | |
// add listeners | |
.on('cycle', function(ev) | |
{ | |
console.log(String(ev.target)); | |
}) | |
.on('complete', function() | |
{ | |
console.log('Fastest is ' + this.filter('fastest').map('name')); | |
}) | |
// run async | |
.run({ 'async': true }); | |