summaryrefslogtreecommitdiff
path: root/perf/suites.js
diff options
context:
space:
mode:
authorAlexander Early <alexander.early@gmail.com>2018-04-14 20:10:29 -0700
committerAlexander Early <alexander.early@gmail.com>2018-04-14 20:10:29 -0700
commit45e2938cfa536fe27898c60a4e0fe37080c880bb (patch)
treec0cb0776b596908d1a79f77c1a30a138dcba6a00 /perf/suites.js
parent2030f5f1bd01a141ac4c85d3deab927f49e255fc (diff)
parent3235c8f5f67ff38b85ce6f9664053d0b1897ff3b (diff)
downloadasync-45e2938cfa536fe27898c60a4e0fe37080c880bb.tar.gz
Merge branch 'master' into DELETE_THIS_BRANCHDELETE_THIS_BRANCH
Diffstat (limited to 'perf/suites.js')
-rw-r--r--perf/suites.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/perf/suites.js b/perf/suites.js
index ca400dc..02f0e7e 100644
--- a/perf/suites.js
+++ b/perf/suites.js
@@ -131,6 +131,24 @@ module.exports = [{
}, done);
}
}, {
+ name: "concat",
+ // args lists are passed to the setup function
+ args: [
+ [10],
+ [300],
+ [10000]
+ ],
+ setup: function setup(count) {
+ tasks = _.range(count);
+ },
+ fn: function(async, done) {
+ async.concat(tasks, function(num, cb) {
+ async.setImmediate(function() {
+ cb(null, [num]);
+ });
+ }, done);
+ }
+}, {
name: "eachOf",
// args lists are passed to the setup function
args: [
@@ -234,8 +252,32 @@ module.exports = [{
async.waterfall(tasks, done);
}
}, {
+ name: "auto",
+ args: [
+ [5],
+ [10],
+ [100]
+ ],
+ setup: function setup(count) {
+ tasks = {
+ dep1: function (cb) { cb(null, 1); }
+ };
+ _.times(count, function(n) {
+ var task = ['dep' + (n+1), function(results, cb) {
+ setImmediate(cb, null, n);
+ }];
+ if (n > 2) task.unshift('dep' + n);
+ tasks['dep' + (n+2)] = task;
+ });
+ },
+ fn: function(async, done) {
+ async.auto(tasks, done);
+ }
+}, {
name: "queue",
args: [
+ [10],
+ [100],
[1000],
[30000],
[100000],