mirror of
https://github.com/jashkenas/backbone.git
synced 2026-04-30 03:00:06 -04:00
Add tests for #listenTo event library interop
This commit is contained in:
@@ -585,4 +585,41 @@
|
||||
two.trigger('y', 2);
|
||||
});
|
||||
|
||||
test("#3611 - listenTo is compatible with non-Backbone event libraries", 1, function() {
|
||||
var obj = _.extend({}, Backbone.Events);
|
||||
var other = {
|
||||
events: {},
|
||||
on: function(name, callback) {
|
||||
this.events[name] = callback;
|
||||
},
|
||||
trigger: function(name) {
|
||||
this.events[name]();
|
||||
}
|
||||
};
|
||||
|
||||
obj.listenTo(other, 'test', function() { ok(true); });
|
||||
other.trigger('test');
|
||||
});
|
||||
|
||||
test("#3611 - stopListening is compatible with non-Backbone event libraries", 1, function() {
|
||||
var obj = _.extend({}, Backbone.Events);
|
||||
var other = {
|
||||
events: {},
|
||||
on: function(name, callback) {
|
||||
this.events[name] = callback;
|
||||
},
|
||||
off: function() {
|
||||
this.events = {};
|
||||
},
|
||||
trigger: function(name) {
|
||||
var fn = this.events[name];
|
||||
if (fn) fn();
|
||||
}
|
||||
};
|
||||
|
||||
obj.listenTo(other, 'test', function() { ok(false); });
|
||||
obj.stopListening(other);
|
||||
other.trigger('test');
|
||||
equal(_.size(obj._listeningTo), 0);
|
||||
});
|
||||
})();
|
||||
|
||||
Reference in New Issue
Block a user