Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2212)

Unified Diff: appengine/config_service/ui/bower_components/async/perf/suites.js

Issue 2923973003: Added base template for config ui. (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine/config_service/ui/bower_components/async/perf/suites.js
diff --git a/appengine/config_service/ui/bower_components/async/perf/suites.js b/appengine/config_service/ui/bower_components/async/perf/suites.js
new file mode 100644
index 0000000000000000000000000000000000000000..dd8392c382073c4eebf5c6ef99abc06f92a795cb
--- /dev/null
+++ b/appengine/config_service/ui/bower_components/async/perf/suites.js
@@ -0,0 +1,297 @@
+var _ = require("lodash");
+var tasks;
+
+module.exports = [
+ {
+ name: "each",
+ // args lists are passed to the setup function
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.each(tasks, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "eachSeries",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.eachSeries(tasks, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "eachLimit",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.eachLimit(tasks, 4, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "map",
+ // args lists are passed to the setup function
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.map(tasks, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "mapSeries",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.mapSeries(tasks, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "mapLimit",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.mapLimit(tasks, 4, function (num, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "eachOf",
+ // args lists are passed to the setup function
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.eachOf(tasks, function (num, i, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "eachOfSeries",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.eachOfSeries(tasks, function (num, i, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "eachOfLimit",
+ args: [[10], [300], [10000]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.eachOfLimit(tasks, 4, function (num, i, cb) {
+ async.setImmediate(cb);
+ }, done);
+ }
+ },
+ {
+ name: "parallel",
+ args: [[10], [100], [1000]],
+ setup: function (count) {
+ tasks = _.range(count).map(function () {
+ return function (cb) {
+ setImmediate(cb);
+ };
+ });
+ },
+ fn: function (async, done) {
+ async.parallel(tasks, done);
+ }
+ },
+ {
+ name: "series",
+ args: [[10], [100], [1000]],
+ setup: function (count) {
+ tasks = _.range(count).map(function () {
+ return function (cb) { setImmediate(cb); };
+ });
+ },
+ fn: function (async, done) {
+ async.series(tasks, done);
+ }
+ },
+ {
+ name: "waterfall",
+ args: [[10], [100], [1000]],
+ setup: function (count) {
+ tasks = [
+ function (cb) {
+ return cb(null, 1);
+ }
+ ].concat(_.range(count).map(function (i) {
+ return function (arg, cb) {
+ setImmediate(function () {
+ cb(null, i);
+ });
+ };
+ }));
+ },
+ fn: function (async, done) {
+ async.waterfall(tasks, done);
+ }
+ },
+ {
+ name: "queue",
+ args: [[1000], [30000], [100000], [200000]],
+ setup: function (count) {
+ tasks = count;
+ },
+ fn: function (async, done) {
+ var numEntries = tasks;
+ var q = async.queue(worker, 1);
+ for (var i = 1; i <= numEntries; i++) {
+ q.push({num: i});
+ }
+ function worker(task, callback) {
+ if (task.num === numEntries) {
+ return done();
+ }
+ setImmediate(callback);
+ }
+ }
+ },
+ {
+ name: "some - no short circuit- false",
+ // args lists are passed to the setup function
+ args: [[500]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.some(tasks, function(i, cb) {
+ async.setImmediate(function() {
+ cb(i >= 600);
+ });
+ }, done);
+ }
+ },
+ {
+ name: "some - short circuit - true",
+ // args lists are passed to the setup function
+ args: [[500]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.some(tasks, function(i, cb) {
+ async.setImmediate(function() {
+ cb(i >= 60);
+ });
+ }, done);
+ }
+ },
+ {
+ name: "every - no short circuit- true",
+ // args lists are passed to the setup function
+ args: [[500]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.every(tasks, function(i, cb) {
+ async.setImmediate(function() {
+ cb(i <= 600);
+ });
+ }, done);
+ }
+ },
+ {
+ name: "every - short circuit - false",
+ // args lists are passed to the setup function
+ args: [[500]],
+ setup: function(count) {
+ tasks = _.range(count);
+ },
+ fn: function (async, done) {
+ async.every(tasks, function(i, cb) {
+ async.setImmediate(function() {
+ cb(i <= 60);
+ });
+ }, done);
+ }
+ },
+ {
+ name: "defer nextTick",
+ fn: function (async, done) {
+ process.nextTick(done);
+ }
+ },
+ {
+ name: "defer setImmediate",
+ fn: function (async, done) {
+ setImmediate(done);
+ }
+ },
+ {
+ name: "defer async.nextTick",
+ fn: function (async, done) {
+ async.nextTick(done);
+ }
+ },
+ {
+ name: "defer async.setImmediate",
+ fn: function (async, done) {
+ async.setImmediate(done);
+ }
+ },
+ {
+ name: "defer setTimeout",
+ fn: function (async, done) {
+ setTimeout(done, 0);
+ }
+ },
+ {
+ name: "ensureAsync sync",
+ fn: function (async, done) {
+ async.ensureAsync(function (cb) {
+ cb();
+ })(done);
+ }
+ },
+ {
+ name: "ensureAsync async",
+ fn: function (async, done) {
+ async.ensureAsync(function (cb) {
+ setImmediate(cb);
+ })(done);
+ }
+ },
+ {
+ name: "ensureAsync async noWrap",
+ fn: function (async, done) {
+ (function (cb) {
+ setImmediate(cb);
+ }(done));
+ }
+ }
+];
+

Powered by Google App Engine
This is Rietveld 408576698