Lawnchair all adapters (v15)

Revision 15 of this benchmark created on


Description

Comparing the speed of using a local SQLite database versus window.localStorage to store key/value pairs using Lawnchair.

Preparation HTML

<script src="//brian.io/lawnchair/downloads/lawnchair-0.6.1.js"></script>
<script src="//brian.io/lawnchair/downloads/lawnchair-adapter-indexed-db-0.6.1.js"></script>
<script src="//brian.io/lawnchair/downloads/lawnchair-adapter-webkit-sqlite-0.6.1.js"></script>

Setup

var adapter = '';
    var lawnchair = Lawnchair;

Teardown


    lawnchair({name:'people', record:'person', adapter: adapter}, function() {
      this.nuke();
    });
  

Test runner

Ready to run.

Testing in
TestOps/sec
DOM
// async test
adapter = 'dom';
lawnchair({name:'people', record:'person', adapter: adapter}, function() {
  this.save({key:'brian'}, function() { this.get('brian', function() { deferred.resolve(); }); });
});
ready
Memory
// async test
adapter = 'memory';
lawnchair({name:'people', record:'person', adapter: adapter}, function() {
  this.save({key:'brian'}, function() { this.get('brian', function() { deferred.resolve(); }); });
});
ready
IndexedDB
// async test
adapter = 'indexed-db';
lawnchair({name:'people', record:'person', adapter: adapter}, function() {
  this.save({key:'brian'}, function() { this.get('brian', function() { deferred.resolve(); }); });
});
ready
SQL
// async test
adapter = 'webkit-sqlite';
lawnchair({name:'people', record:'person', adapter: adapter}, function() {
  this.save({key:'brian'}, function() { this.get('brian', function() { deferred.resolve(); }); });
});
ready

Revisions

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