Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
MR414N-ID
GitHub Repository: MR414N-ID/botku2
Path: blob/master/node_modules/asynckit/bench.js
1126 views
1
/* eslint no-console: "off" */
2
3
var asynckit = require('./')
4
, async = require('async')
5
, assert = require('assert')
6
, expected = 0
7
;
8
9
var Benchmark = require('benchmark');
10
var suite = new Benchmark.Suite;
11
12
var source = [];
13
for (var z = 1; z < 100; z++)
14
{
15
source.push(z);
16
expected += z;
17
}
18
19
suite
20
// add tests
21
22
.add('async.map', function(deferred)
23
{
24
var total = 0;
25
26
async.map(source,
27
function(i, cb)
28
{
29
setImmediate(function()
30
{
31
total += i;
32
cb(null, total);
33
});
34
},
35
function(err, result)
36
{
37
assert.ifError(err);
38
assert.equal(result[result.length - 1], expected);
39
deferred.resolve();
40
});
41
}, {'defer': true})
42
43
44
.add('asynckit.parallel', function(deferred)
45
{
46
var total = 0;
47
48
asynckit.parallel(source,
49
function(i, cb)
50
{
51
setImmediate(function()
52
{
53
total += i;
54
cb(null, total);
55
});
56
},
57
function(err, result)
58
{
59
assert.ifError(err);
60
assert.equal(result[result.length - 1], expected);
61
deferred.resolve();
62
});
63
}, {'defer': true})
64
65
66
// add listeners
67
.on('cycle', function(ev)
68
{
69
console.log(String(ev.target));
70
})
71
.on('complete', function()
72
{
73
console.log('Fastest is ' + this.filter('fastest').map('name'));
74
})
75
// run async
76
.run({ 'async': true });
77
78