Add tests for corner cases
This commit is contained in:
@@ -130,6 +130,23 @@ describe('ol.events.EventTarget', function() {
|
|||||||
expect(called).to.eql([3]);
|
expect(called).to.eql([3]);
|
||||||
expect(eventTarget.getListeners('foo')).to.have.length(1);
|
expect(eventTarget.getListeners('foo')).to.have.length(1);
|
||||||
});
|
});
|
||||||
|
it('is safe to do weird things in listeners', function() {
|
||||||
|
eventTarget.addEventListener('foo', spy2);
|
||||||
|
eventTarget.addEventListener('foo', function weird(evt) {
|
||||||
|
eventTarget.removeEventListener('foo', weird);
|
||||||
|
eventTarget.removeEventListener('foo', spy1);
|
||||||
|
eventTarget.dispatchEvent('foo');
|
||||||
|
eventTarget.removeEventListener('foo', spy2);
|
||||||
|
eventTarget.dispatchEvent('foo');
|
||||||
|
evt.preventDefault();
|
||||||
|
});
|
||||||
|
eventTarget.addEventListener('foo', spy1);
|
||||||
|
expect(function() {
|
||||||
|
eventTarget.dispatchEvent('foo');
|
||||||
|
}).not.to.throwException();
|
||||||
|
expect(called).to.eql([2, 2]);
|
||||||
|
expect(eventTarget.getListeners('foo')).to.be(undefined);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('#dispose()', function() {
|
describe('#dispose()', function() {
|
||||||
|
|||||||
Reference in New Issue
Block a user