added selmer benchmark

This commit is contained in:
Yogthos 2013-07-28 15:57:38 -04:00
parent b67200c2fb
commit 8962bde055
2 changed files with 38 additions and 2 deletions

View file

@ -11,5 +11,6 @@
[hiccup "1.0.3"]
[stencil "0.3.2"]
[tinsel "0.4.0" :exclusions [hickory]]
[selmer "0.1.8"]
[me.raynes/laser "1.1.1"]
[me.shenfeng/mustache "1.1"]])

View file

@ -6,7 +6,8 @@
[hiccup.core :as hiccup]
[me.raynes.laser :as laser :refer [defdocument]]
[net.cgrand.enlive-html :as enlive]
[me.shenfeng.mustache :as mustache]))
[me.shenfeng.mustache :as mustache]
[selmer.parser :as selmer]))
(def bar (str "bar"))
@ -23,6 +24,23 @@
"</ul>"))
(defn simple-selmer-no-fd []
(selmer/render "<span class=\"foo\">{{bar}}</span>" {:bar bar}))
(defn list-selmer-no-fd [ceil]
(selmer/render "<ul>{% for item in items %}<li>{{item}}</li>{% endfor %}</ul>"
{:items (range 1 ceil)}))
(defn simple-selmer []
(selmer/render-file "clojure_template_benchmarks/templates/simple.html" {:bar bar}))
(defn list-selmer [ceil]
(selmer/render-file "clojure_template_benchmarks/templates/list.html" {:items (range 1 ceil)}))
(defn list-selmer-template [template ceil]
(selmer/render template {:items (range 1 ceil)}))
(defn simple-hiccup []
(hiccup/html [:span {:class "foo"} bar]))
@ -52,6 +70,7 @@
(render-file "clojure_template_benchmarks/templates/list.html" {:items (range 1 ceil)}))
(defn simple-stencil-no-fd []
(stencil/render-string "<span class=\"foo\">{{bar}}</span>" {:bar bar}))
@ -146,6 +165,22 @@
(with-progress-reporting (quick-bench (list-clabango 1000)))
(println "\n --- \n")
(println "\n\n ***** selmer string ***** \n\n")
(quick-bench (simple-selmer-no-fd))
(println "\n --- \n")
(quick-bench (list-selmer-no-fd 50))
(println "\n --- \n")
(quick-bench (list-selmer-no-fd 1000))
(println "\n --- \n")
(println "\n\n ***** selmer from file template ***** \n\n")
(with-progress-reporting (quick-bench (simple-selmer)))
(println "\n --- \n")
(with-progress-reporting (quick-bench (list-selmer 50)))
(println "\n --- \n")
(with-progress-reporting (quick-bench (list-selmer 1000)))
(println "\n --- \n")
(println "\n\n ***** stencil string ***** \n\n")
(with-progress-reporting (quick-bench (simple-stencil-no-fd)))
(println "\n --- \n")
@ -193,7 +228,7 @@
(println "\n --- \n")
(with-progress-reporting (quick-bench (list-laser-hinted 1000)))
(println "\n --- \n")
(println "\n\n ***** enlive ***** \n\n")
(with-progress-reporting (quick-bench (simple-enlive)))
(println "\n --- \n")