summaryrefslogtreecommitdiffstats
path: root/bench
diff options
context:
space:
mode:
authorkpdecker <kpdecker@gmail.com>2013-01-14 00:00:11 -0600
committerkpdecker <kpdecker@gmail.com>2013-01-14 00:00:11 -0600
commitf5079765ff2ffaa33f82281b8eddd908781ae7d7 (patch)
treef50b668c100f2d9e91decb3db6eeefb54679c60d /bench
parent24fc3a2288d788488e056cbaa0f13503e2607e1b (diff)
downloadhandlebars.js-f5079765ff2ffaa33f82281b8eddd908781ae7d7.zip
handlebars.js-f5079765ff2ffaa33f82281b8eddd908781ae7d7.tar.gz
handlebars.js-f5079765ff2ffaa33f82281b8eddd908781ae7d7.tar.bz2
Update benchmark suite for node 0.8
Diffstat (limited to 'bench')
-rw-r--r--bench/benchwarmer.js2
-rw-r--r--bench/handlebars.js77
2 files changed, 44 insertions, 35 deletions
diff --git a/bench/benchwarmer.js b/bench/benchwarmer.js
index 203c7bc..25a2506 100644
--- a/bench/benchwarmer.js
+++ b/bench/benchwarmer.js
@@ -133,7 +133,7 @@ BenchWarmer.prototype = {
if(!bench.error) {
var count = bench.hz,
- moe = count * bench.stats.RME / 100;
+ moe = count * bench.stats.rme / 100;
out = Math.round(count / 1000) + " ±" + Math.round(moe / 1000) + " (" + bench.cycles + ")";
} else {
diff --git a/bench/handlebars.js b/bench/handlebars.js
index 72dac94..c7f6c10 100644
--- a/bench/handlebars.js
+++ b/bench/handlebars.js
@@ -1,20 +1,22 @@
-require.paths.push("lib");
-require.paths.push("vendor");
-require.paths.push("vendor/dustjs/lib");
-require.paths.push("vendor/coffee/lib");
-require.paths.push("vendor/eco/lib");
+var BenchWarmer = require("./benchwarmer");
+Handlebars = require("../lib/handlebars");
+var dust, Mustache, eco;
-var BenchWarmer = require("./benchwarmer");
-Handlebars = require("handlebars");
+try {
+ dust = require("dust");
+} catch (err) { /* NOP */ }
-var dust = require("dust");
-var Mustache = require("mustache");
-var ecoExports = require("eco");
+try {
+ Mustache = require("mustache");
+} catch (err) { /* NOP */ }
-eco = function(str) {
- return ecoExports(str);
-}
+try {
+ var ecoExports = require("eco");
+ eco = function(str) {
+ return ecoExports(str);
+ }
+} catch (err) { /* NOP */ }
var benchDetails = {
string: {
@@ -113,39 +115,46 @@ var makeSuite = function(name) {
var error = function() { throw new Error("EWOT"); };
-
- //bench("dust", function() {
- //dust.render(templateName, context, function(err, out) { });
- //});
+ if (dust) {
+ bench("dust", function() {
+ dust.render(templateName, context, function(err, out) { });
+ });
+ }
bench("handlebars", function() {
handlebarsTemplates[templateName](context);
});
- //if(ecoTemplates[templateName]) {
- //bench("eco", function() {
- //ecoTemplates[templateName](context);
- //});
- //} else {
- //bench("eco", error);
- //}
-
- //if(mustacheSource) {
- //bench("mustache", function() {
- //Mustache.to_html(mustacheSource, context, mustachePartials);
- //});
- //} else {
- //bench("mustache", error);
- //}
+ if (eco) {
+ if(ecoTemplates[templateName]) {
+ bench("eco", function() {
+ ecoTemplates[templateName](context);
+ });
+ } else {
+ bench("eco", error);
+ }
+ }
+
+ if (Mustache && mustacheSource) {
+ bench("mustache", function() {
+ Mustache.to_html(mustacheSource, context, mustachePartials);
+ });
+ } else {
+ bench("mustache", error);
+ }
});
}
for(var name in benchDetails) {
if(benchDetails.hasOwnProperty(name)) {
- dust.loadSource(dust.compile(benchDetails[name].dust, name));
+ if (dust) {
+ dust.loadSource(dust.compile(benchDetails[name].dust, name));
+ }
handlebarsTemplates[name] = Handlebars.compile(benchDetails[name].handlebars);
- if(benchDetails[name].eco) { ecoTemplates[name] = eco(benchDetails[name].eco); }
+ if (eco && benchDetails[name].eco) {
+ ecoTemplates[name] = eco(benchDetails[name].eco);
+ }
var partials = benchDetails[name].partials;
if(partials) {