1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| /* 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 });
|
|