diff --git a/src/ol/layer/layerbase.js b/src/ol/layer/layerbase.js index 3d28f84a90..341a18e592 100644 --- a/src/ol/layer/layerbase.js +++ b/src/ol/layer/layerbase.js @@ -71,11 +71,6 @@ ol.layer.Base = function(options) { values.minResolution : 0; this.setValues(values); - - goog.events.listen(this, - ol.Object.getChangeEventType(ol.layer.LayerProperty.VISIBLE), - this.handleLayerVisibleChange, false, this); - }; goog.inherits(ol.layer.Base, ol.Object); diff --git a/test/spec/ol/layer/layer.test.js b/test/spec/ol/layer/layer.test.js index 36d93a6e6d..8fd23001e3 100644 --- a/test/spec/ol/layer/layer.test.js +++ b/test/spec/ol/layer/layer.test.js @@ -370,20 +370,36 @@ describe('ol.layer.Layer', function() { describe('#setVisible', function() { - it('sets visible property', function() { - var layer = new ol.layer.Layer({ + var layer; + beforeEach(function() { + layer = new ol.layer.Layer({ source: new ol.source.Source({ projection: ol.proj.get('EPSG:4326') }) }); + }); + afterEach(function() { + goog.dispose(layer); + }); + + it('sets visible property', function() { layer.setVisible(false); expect(layer.getVisible()).to.be(false); layer.setVisible(true); expect(layer.getVisible()).to.be(true); + }); - goog.dispose(layer); + it('fires a change event', function() { + var listener = sinon.spy(); + layer.on(ol.ObjectEventType.CHANGE, listener); + + layer.setVisible(false); + expect(listener.callCount).to.be(1); + + layer.setVisible(true); + expect(listener.callCount).to.be(2); }); });