# HG changeset patch # User athomas # Date 1201097631 0 # Node ID 1efe990d675e13871679a5f2f5dfc446160efea0 # Parent 905070c31ea83ebf3dfd3654ad9deced145d4600 Same for bigtable. Around 36% faster. diff --git a/examples/bench/bigtable.py b/examples/bench/bigtable.py --- a/examples/bench/bigtable.py +++ b/examples/bench/bigtable.py @@ -11,6 +11,7 @@ from StringIO import StringIO from genshi.builder import tag from genshi.template import MarkupTemplate, NewTextTemplate +from genshi.template.optimize import Optimizer, StaticStrategy try: from elementtree import ElementTree as et @@ -56,6 +57,14 @@ """) +genshi_opt_tmpl = Optimizer(MarkupTemplate(""" + + + +
+
+"""), [StaticStrategy()]) + genshi_tmpl2 = MarkupTemplate(""" $table
""") @@ -103,6 +112,11 @@ stream = genshi_tmpl.generate(table=table) stream.render('html', strip_whitespace=False) +def test_genshi_opt(): + """Genshi optimizer""" + stream = genshi_opt_tmpl.generate(table=table) + stream.render('html', strip_whitespace=False) + def test_genshi_text(): """Genshi text template""" stream = genshi_text_tmpl.generate(table=table) @@ -196,9 +210,10 @@ def run(which=None, number=10): - tests = ['test_builder', 'test_genshi', 'test_genshi_text', - 'test_genshi_builder', 'test_mako', 'test_kid', 'test_kid_et', - 'test_et', 'test_cet', 'test_clearsilver', 'test_django'] + tests = ['test_builder', 'test_genshi', 'test_genshi_opt', + 'test_genshi_text', 'test_genshi_builder', 'test_mako', + 'test_kid', 'test_kid_et', 'test_et', 'test_cet', + 'test_clearsilver', 'test_django'] if which: tests = filter(lambda n: n[5:] in which, tests)