Files
backbone/test/speed.js
2012-10-05 19:41:40 -04:00

56 lines
1.3 KiB
JavaScript

(function(){
var object = {};
_.extend(object, Backbone.Events);
var fn = function(){};
JSLitmus.test('Events: bind + unbind', function() {
object.on("event", fn);
object.off("event", fn);
});
object.on('test:trigger', fn);
JSLitmus.test('Events: trigger', function() {
object.trigger('test:trigger');
});
object.on('test:trigger2', fn);
object.on('test:trigger2', fn);
JSLitmus.test('Events: trigger 2, passing 5 args', function() {
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.on('change', fn);
JSLitmus.test('Model: set rand() with an event', function() {
eventModel.set({number: Math.random()});
});
var keyModel = new Backbone.Model;
keyModel.on('change:number', fn);
JSLitmus.test('Model: set rand() with an attribute observer', function() {
keyModel.set({number: Math.random()});
});
var silentModel = new Backbone.Model;
silentModel.on('change', fn);
JSLitmus.test('Model: silent sets with rand(), with an attribute observer', function () {
for (var i=0;i<10;i++) {
silentModel.set({number:Math.random()}, {silent:true});
}
silentModel.set({number:'one'});
});
})();