From 500d66bd58ae472dafe9759658592b9433937109 Mon Sep 17 00:00:00 2001 From: Jeremy Ashkenas Date: Thu, 14 Oct 2010 15:11:56 -0400 Subject: [PATCH] a handful of model speed tests. --- backbone.js | 2 +- test/speed.js | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/backbone.js b/backbone.js index d0a1acc9..c219f516 100644 --- a/backbone.js +++ b/backbone.js @@ -135,7 +135,7 @@ // Extract attributes and options. options || (options = {}); if (!attrs) return this; - attrs = attrs.attributes || attrs; + if (attrs.attributes) attrs = attrs.attributes; var now = this.attributes; // Run validation if `validate` is defined. diff --git a/test/speed.js b/test/speed.js index 0f29d47f..6cd0b66c 100644 --- a/test/speed.js +++ b/test/speed.js @@ -22,4 +22,24 @@ object.trigger('test:trigger2', 1, 2, 3, 4, 5); }); + var model = new Backbone.Model; + + JSLitmus.test('Model: set Math.random()', function() { + model.set({number: Math.random()}); + }); + + var eventModel = new Backbone.Model; + eventModel.bind('change', fn); + + JSLitmus.test('Model: set Math.random() with a change event', function() { + eventModel.set({number: Math.random()}); + }); + + var keyModel = new Backbone.Model; + keyModel.bind('change:number', fn); + + JSLitmus.test('Model: set Math.random() with a key-value observer', function() { + keyModel.set({number: Math.random()}); + }); + })(); \ No newline at end of file