Sha256: dbb3da89b929f3650be3d485890a9a7a0454355f7e3ebe243b5360d68e479e11
Contents?: true
Size: 1.58 KB
Versions: 13
Compression:
Stored size: 1.58 KB
Contents
describe("Jax.Events.Methods", function() { var emitter, evt, listenerID; beforeEach(function() { emitter = Jax.Class.create({ }); emitter.addMethods(Jax.Events.Methods); emitter = new emitter(); listenerID = emitter.addEventListener('evt', function(obj) { evt = obj; }); }); // don't taint other tests afterEach(function() { evt = undefined; }); it("should work with no event at all", function() { emitter.fireEvent('evt'); expect(evt).toBeUndefined(); }); it("should set a default +type+ property on events", function() { emitter.fireEvent('evt', { }); expect(evt.type).toEqual('evt'); }); it("should not override a +type+ property on events", function() { emitter.fireEvent('evt', { type: 'one' }); expect(evt.type).toEqual('one'); }); it("should be un-listenenable", function() { emitter.removeEventListener('evt', listenerID); emitter.fireEvent('evt', {}); expect(evt).toBeUndefined(); // because the original listener never was fired }); it("should be un-listenable out of order", function() { // add a second listener. Its index is 1. If we remove index 0, we should still // be able to remove index 1. At that point no listeners should exist. var second = false, secondID; secondID = emitter.addEventListener('evt', function() { second = true; }); emitter.removeEventListener('evt', listenerID); emitter.removeEventListener('evt', secondID); emitter.fireEvent('evt', {}); // neither should have fired expect(second).toBeFalsy(); expect(evt).toBeUndefined(); }); });
Version data entries
13 entries across 13 versions & 1 rubygems