Add tests for emulated clicks

This commit is contained in:
Éric Lemoine
2013-10-30 10:47:36 +01:00
parent 0fa66cc7e7
commit 6ab88aad72

View File

@@ -0,0 +1,58 @@
goog.provide('ol.test.MapBrowserEventHandler');
describe('ol.MapBrowserEventHandler', function() {
describe('#emulateClick_', function() {
var clock;
var handler;
var clickSpy;
var dblclickSpy;
beforeEach(function() {
clock = sinon.useFakeTimers();
handler = new ol.MapBrowserEventHandler(new ol.Map({}));
clickSpy = sinon.spy();
goog.events.listen(handler, 'click', clickSpy);
dblclickSpy = sinon.spy();
goog.events.listen(handler, 'dblclick', dblclickSpy);
});
afterEach(function() {
clock.restore();
});
it('emulates click', function() {
handler.emulateClick_();
expect(clickSpy.called).to.not.be.ok();
expect(dblclickSpy.called).to.not.be.ok();
clock.tick(250);
expect(clickSpy.calledOnce).to.be.ok();
expect(dblclickSpy.called).to.not.be.ok();
handler.emulateClick_();
expect(clickSpy.calledOnce).to.be.ok();
expect(dblclickSpy.called).to.not.be.ok();
});
it('emulates dblclick', function() {
handler.emulateClick_();
expect(clickSpy.called).to.not.be.ok();
expect(dblclickSpy.called).to.not.be.ok();
handler.emulateClick_();
expect(clickSpy.called).to.not.be.ok();
expect(dblclickSpy.calledOnce).to.be.ok();
clock.tick(250);
expect(clickSpy.called).to.not.be.ok();
expect(dblclickSpy.calledOnce).to.be.ok();
});
});
});
goog.require('goog.events');
goog.require('ol.Map');
goog.require('ol.MapBrowserEventHandler');