Edgewall Software

Changeset 393


Ignore:
Timestamp:
Oct 24, 2006, 6:27:41 PM (17 years ago)
Author:
cmlenz
Message:

Add Myghty to the benchmarks, kindly contributed by Mike Bayer.

Location:
trunk/examples/bench
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/bench/basic.py

    r299 r393  
    55import timeit
    66
    7 __all__ = ['clearsilver', 'django', 'kid', 'genshi', 'simpletal']
     7__all__ = ['clearsilver', 'myghty', 'django', 'kid', 'genshi', 'cheetah']
    88
    99def genshi(dirname, verbose=False):
     
    1616        return template.generate(**data).render('xhtml')
    1717
     18    if verbose:
     19        print render()
     20    return render
     21
     22def myghty(dirname, verbose=False):
     23    from myghty import interp
     24    interpreter = interp.Interpreter(component_root=dirname)
     25    def render():
     26        data = dict(title='Just a test', user='joe',
     27                    items=['Number %d' % num for num in range(1, 15)])
     28        buffer = StringIO()
     29        interpreter.execute("template.myt", request_args=data, out_buffer=buffer)
     30        return buffer.getvalue()
    1831    if verbose:
    1932        print render()
     
    3952
    4053def clearsilver(dirname, verbose=False):
    41     import neo_cgi
     54    try:
     55        import neo_cgi
     56    except ImportError:
     57        return lambda:None
    4258    neo_cgi.update()
    4359    import neo_util
  • trunk/examples/bench/bigtable.py

    r299 r393  
    99import sys
    1010import timeit
    11 
     11from StringIO import StringIO
    1212import cElementTree as cet
    1313from elementtree import ElementTree as et
    1414from genshi.builder import tag
    1515from genshi.template import MarkupTemplate
    16 import neo_cgi
    17 import neo_cs
    18 import neo_util
    1916
    2017try:
     
    3532except ImportError:
    3633    DjangoContext = DjangoTemplate = None
     34
     35try:
     36    from myghty.interp import Interpreter as MyghtyInterpreter
     37except ImportError:
     38    MyghtyInterpreter = None
    3739
    3840table = [dict(a=1,b=2,c=3,d=4,e=5,f=6,g=7,h=8,i=9,j=10)
     
    6466        context = DjangoContext({'table': table})
    6567        django_tmpl.render(context)
     68
     69if MyghtyInterpreter:
     70    interpreter = MyghtyInterpreter()
     71    component = interpreter.make_component("""
     72<table>
     73% for row in ARGS['table']:
     74   <tr>
     75%    for col in row.values():
     76     <td><% col %></td>
     77%
     78%
     79   </tr>
     80</table>
     81""")
     82    def test_myghty():
     83        """Myghty Template"""
     84        buf = StringIO()
     85        interpreter.execute(component, request_args={'table':table}, out_buffer=buf)
    6686
    6787def test_genshi():
     
    155175
    156176def run(which=None, number=10):
    157     tests = ['test_builder', 'test_genshi', 'test_genshi_builder', 'test_kid',
     177    tests = ['test_builder', 'test_genshi', 'test_genshi_builder', 'test_myghty', 'test_kid',
    158178             'test_kid_et', 'test_et', 'test_cet', 'test_clearsilver',
    159179             'test_django']
     180
    160181    if which:
    161182        tests = filter(lambda n: n[5:] in which, tests)
  • trunk/examples/bench/cheetah/template.tmpl

    r299 r393  
    77  </head>
    88  <body>
    9     #include "header.tmpl"
     9    #include "cheetah/header.tmpl"
    1010
    1111    <h2>Loop</h2>
     
    1818    #end if
    1919
    20     #include "footer.tmpl"
     20    #include "cheetah/footer.tmpl"
    2121  </body>
    2222</html>
Note: See TracChangeset for help on using the changeset viewer.