fix mousewheel handler tests
This commit is contained in:
@@ -30,7 +30,12 @@ goog.require('goog.events.MouseWheelHandler.EventType');
|
|||||||
ol.handler.MouseWheel = function(map, states) {
|
ol.handler.MouseWheel = function(map, states) {
|
||||||
goog.base(this, map, states);
|
goog.base(this, map, states);
|
||||||
|
|
||||||
var handler = new goog.events.MouseWheelHandler(this.element_);
|
/**
|
||||||
|
* @type {goog.events.MouseWheelHandler}
|
||||||
|
*/
|
||||||
|
this.handler_ = new goog.events.MouseWheelHandler(this.element_);
|
||||||
|
|
||||||
|
var handler = this.handler_;
|
||||||
this.registerDisposable(handler);
|
this.registerDisposable(handler);
|
||||||
|
|
||||||
goog.events.listen(handler,
|
goog.events.listen(handler,
|
||||||
|
|||||||
@@ -1,12 +1,10 @@
|
|||||||
describe('ol.handler.MouseWheel', function() {
|
describe('ol.handler.MouseWheel', function() {
|
||||||
var map, elt;
|
var map;
|
||||||
|
|
||||||
beforeEach(function() {
|
beforeEach(function() {
|
||||||
map = new ol.Map();
|
map = new ol.Map();
|
||||||
elt = new goog.events.EventTarget();
|
var elt = new goog.events.EventTarget();
|
||||||
map.viewport_ = elt;
|
map.viewport_ = elt;
|
||||||
listener = {fn: function() {}};
|
|
||||||
spyOn(listener, 'fn');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('create a mouse wheel handler', function() {
|
describe('create a mouse wheel handler', function() {
|
||||||
@@ -20,25 +18,31 @@ describe('ol.handler.MouseWheel', function() {
|
|||||||
|
|
||||||
describe('dispatching events', function() {
|
describe('dispatching events', function() {
|
||||||
|
|
||||||
it('dispatches a mousewheel event', function() {
|
var handler;
|
||||||
var handler = new ol.handler.MouseWheel(map, {});
|
|
||||||
goog.events.listen(map, 'mousewheel', listener.fn);
|
|
||||||
|
|
||||||
var evt = new goog.events.MouseWheelEvent(1, 'foo', 0, 1);
|
beforeEach(function() {
|
||||||
handler.handleMouseWheel(evt);
|
handler = new ol.handler.MouseWheel(map, {});
|
||||||
|
|
||||||
expect(listener.fn.calls[0].args[0].type).toBe('mousewheel');
|
|
||||||
expect(listener.fn.calls[0].args[0].originalEvent).toBe(evt);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('calls the default action on the default control', function() {
|
it('dispatches a mousewheel event', function() {
|
||||||
var control = new ol.control.DefaultControl();
|
var spy = spyOn(goog.events.Event, 'preventDefault').andCallThrough();
|
||||||
spyOn(control, 'defaultMouseWheel');
|
goog.events.listen(map, ol.events.MapEventType.MOUSEWHEEL, spy);
|
||||||
map.setDefaultControl(control);
|
|
||||||
var handler = new ol.handler.MouseWheel(map, {});
|
|
||||||
|
|
||||||
handler.handleMouseWheel(new goog.events.MouseWheelEvent(1, 'foo', 0, 1));
|
var evt = new goog.events.MouseWheelEvent(1, 'foo', 0, 1);
|
||||||
expect(control.defaultMouseWheel).toHaveBeenCalled();
|
handler.handler_.dispatchEvent(evt);
|
||||||
|
|
||||||
|
expect(spy).toHaveBeenCalled();
|
||||||
|
expect(spy.argsForCall[0][0].type).toEqual(ol.events.MapEventType.MOUSEWHEEL);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('calls the default action', function() {
|
||||||
|
var handler = new ol.handler.MouseWheel(map, {});
|
||||||
|
spyOn(handler, 'defaultMouseWheel');
|
||||||
|
|
||||||
|
var evt = new goog.events.MouseWheelEvent(1, 'foo', 0, 1);
|
||||||
|
handler.handler_.dispatchEvent(evt);
|
||||||
|
|
||||||
|
expect(handler.defaultMouseWheel).toHaveBeenCalled();
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user