plate-speed-test

Benchmark created on


Preparation HTML

<script src="http://neversaw.us/media/plate.min.js"></script>
<script id="base" type="text/html">

<html>
    <head>
        <title>NEVERSAW.US{% block extratitle %}{% endblock %}</title>
        <link rel="stylesheet" href="http://neversaw.us/media/css/reset.css"  media="screen" type="text/css" />
        <link rel="stylesheet" href="http://neversaw.us/media/css/style.css" media="screen" type="text/css" />
    </head>
    <body id="{% block body_id %}{% endblock %}">
        <h1 id="logo"><a href="/">NeverSawUs</a></h1>
        <div id="wrap">
        {% block content %}
        {% endblock %}
        </div>
        <footer>
            <div>
                <h4><mark>Neversaw.us</mark> is Chris Dickinson&rsquo;s personal blog.</h4>
                <p>Nothing he says here reflects anyone he is, has ever, or will ever work for.</p>
                <p>Even if the things he says are on occasion pretty awesome.</p>
                <p><small>Copyright 2010 into perpetuity. Some rights reserved.</small></p>
                <p><small><a href="http://twitter.com/isntitvacant" title="twitter">twitter</a> | <a href="http://github.com/chrisdickinson" title="github">github</a>
            </div>
        </footer>
    </body>
</html>
</script>
<script id="home" type="text/html">
{% extends "base" %}

{% block body_id %}list-page{% endblock %}

{% block content %}
    <ul class="post-list">
    {% for post in posts %}
        <li>
            <h2><a href="{{ post.get_absolute_url }}" title="{{ post.title }}">{{ post.title }}</a></h2>
            <p>{{ post.description }}</p>
        </li>
    {% empty %}
        <li>
            <h2><a href="#" title="nothin here">nothin here dude</a></h2>
            <p>shiiiiit</p>
        </li>
    {% endfor %}
    </ul>
{% endblock %}
</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
 
<script>
  plate.Template.Meta.registerPlugin('loader', function(templateName, readyCallback) { var src = $('#'+templateName); if(src.length) { readyCallback(null, new plate.Template(src.text())); } else { readyCallback(new Error); } })
  
  context = {'posts':[{
  get_absolute_url:function() { return '/lol/'; },
  title:'asdf',
  description:function(ready) { ready(null, 'hahah'); }
  }]}
  
  template = new plate.Template('{% extends "home" %}');
  
  renderFast = plate.nodes.NodeList.prototype.render;
  renderEter = plate.nodes.NodeList.prototype.eterRender;
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
newrender
// async test
plate.nodes.NodeList.prototype.render = renderFast;
template.render(context, function(err, data) {
deferred.resolve()
});
ready
oldrender
// async test
plate.nodes.NodeList.prototype.render = renderEter;
template.render(context, function(err, data) {
deferred.resolve()
});
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.