# HG changeset patch # User cmlenz # Date 1162909682 0 # Node ID 97b0d21b81b79df68d9db188e104c1fa1723a35f # Parent 3e749eaa3100e8dfbdde87de99c0e1fc95635e48 * Fixed `basic.py` benchmark on Windows, closing #72. Thanks to John M. Camara for reporting the issue and providing the fix. * Changed `bigtable.py` benchmark so that `cElementTree` and `ElementTree` are no longer required to run it. diff --git a/examples/bench/basic.py b/examples/bench/basic.py --- a/examples/bench/basic.py +++ b/examples/bench/basic.py @@ -146,7 +146,7 @@ print '--------------------------------------------------------' else: print '%s:' % engine.capitalize(), - t = timeit.Timer(setup='from __main__ import %s; render = %s("%s", %s)' + t = timeit.Timer(setup='from __main__ import %s; render = %s(r"%s", %s)' % (engine, engine, dirname, verbose), stmt='render()') time = t.timeit(number=number) / number diff --git a/examples/bench/bigtable.py b/examples/bench/bigtable.py --- a/examples/bench/bigtable.py +++ b/examples/bench/bigtable.py @@ -9,12 +9,20 @@ import sys import timeit from StringIO import StringIO -import cElementTree as cet -from elementtree import ElementTree as et from genshi.builder import tag from genshi.template import MarkupTemplate try: + from elementtree import ElementTree as et +except ImportError: + et = None + +try: + import cElementTree as cet +except ImportError: + cet = None + +try: import neo_cgi, neo_cs, neo_util except ImportError: neo_cgi = None @@ -126,33 +134,37 @@ kid_tmpl.table = table kid_tmpl.serialize(output='html') - def test_kid_et(): - """Kid template + cElementTree""" + + if cet: + def test_kid_et(): + """Kid template + cElementTree""" + _table = cet.Element('table') + for row in table: + td = cet.SubElement(_table, 'tr') + for c in row.values(): + cet.SubElement(td, 'td').text=str(c) + kid_tmpl2.table = _table + kid_tmpl2.serialize(output='html') + +if et: + def test_et(): + """ElementTree""" + _table = et.Element('table') + for row in table: + tr = et.SubElement(_table, 'tr') + for c in row.values(): + et.SubElement(tr, 'td').text=str(c) + et.tostring(_table) + +if cet: + def test_cet(): + """cElementTree""" _table = cet.Element('table') for row in table: - td = cet.SubElement(_table, 'tr') + tr = cet.SubElement(_table, 'tr') for c in row.values(): - cet.SubElement(td, 'td').text=str(c) - kid_tmpl2.table = _table - kid_tmpl2.serialize(output='html') - -def test_et(): - """ElementTree""" - _table = et.Element('table') - for row in table: - tr = et.SubElement(_table, 'tr') - for c in row.values(): - et.SubElement(tr, 'td').text=str(c) - et.tostring(_table) - -def test_cet(): - """cElementTree""" - _table = cet.Element('table') - for row in table: - tr = cet.SubElement(_table, 'tr') - for c in row.values(): - cet.SubElement(tr, 'td').text=str(c) - cet.tostring(_table) + cet.SubElement(tr, 'td').text=str(c) + cet.tostring(_table) if neo_cgi: def test_clearsilver():