source: imaps-frontend/node_modules/asynckit/bench.js@ d565449

main
Last change on this file since d565449 was d565449, checked in by stefan toskovski <stefantoska84@…>, 4 weeks ago

Update repo after prototype presentation

  • Property mode set to 100644
File size: 1.2 KB
Line 
1/* eslint no-console: "off" */
2
3var asynckit = require('./')
4 , async = require('async')
5 , assert = require('assert')
6 , expected = 0
7 ;
8
9var Benchmark = require('benchmark');
10var suite = new Benchmark.Suite;
11
12var source = [];
13for (var z = 1; z < 100; z++)
14{
15 source.push(z);
16 expected += z;
17}
18
19suite
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 });
Note: See TracBrowser for help on using the repository browser.