From 6ab88aad72970885629b65b8d6e57a096f493067 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Lemoine?= Date: Wed, 30 Oct 2013 10:47:36 +0100 Subject: [PATCH] Add tests for emulated clicks --- test/spec/ol/mapbrowserevent.test.js | 58 ++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 test/spec/ol/mapbrowserevent.test.js diff --git a/test/spec/ol/mapbrowserevent.test.js b/test/spec/ol/mapbrowserevent.test.js new file mode 100644 index 0000000000..42ae60fe78 --- /dev/null +++ b/test/spec/ol/mapbrowserevent.test.js @@ -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');