From c23d59e3a81d8b6631cc585bac40984bc3c8c1c2 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Thu, 31 Oct 2019 15:47:25 +0100 Subject: [PATCH 1/2] Remove extra argument passed to RenderEvent constructor --- test/spec/ol/layer/layer.test.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/test/spec/ol/layer/layer.test.js b/test/spec/ol/layer/layer.test.js index 50f494dc18..3fe42a337d 100644 --- a/test/spec/ol/layer/layer.test.js +++ b/test/spec/ol/layer/layer.test.js @@ -592,7 +592,7 @@ describe('ol.layer.Layer', function() { const frameState = { layerStatesArray: [] }; - map.dispatchEvent(new RenderEvent('precompose', null, frameState, null, null)); + map.dispatchEvent(new RenderEvent('precompose', null, frameState, null)); expect(frameState.layerStatesArray.length).to.be(1); const layerState = frameState.layerStatesArray[0]; expect(layerState.layer).to.equal(layer); @@ -644,16 +644,14 @@ describe('ol.layer.Layer', function() { }); it('has Infinity as zIndex when not configured otherwise', function() { - map.dispatchEvent(new RenderEvent('precompose', null, - frameState, null, null)); + map.dispatchEvent(new RenderEvent('precompose', null, frameState, null)); const layerState = frameState.layerStatesArray[0]; expect(layerState.zIndex).to.be(Infinity); }); it('respects the configured zIndex', function() { layer.setZIndex(42); - map.dispatchEvent(new RenderEvent('precompose', null, - frameState, null, null)); + map.dispatchEvent(new RenderEvent('precompose', null, frameState, null)); const layerState = frameState.layerStatesArray[0]; expect(layerState.zIndex).to.be(42); }); From b8c70bcbe7c034c61701517b58cb355c16ef7c6b Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Thu, 31 Oct 2019 15:58:35 +0100 Subject: [PATCH 2/2] Fix layer zIndex test with falsy values --- src/ol/layer/Base.js | 3 ++- test/spec/ol/layer/layer.test.js | 10 ++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/ol/layer/Base.js b/src/ol/layer/Base.js index 7b646c01dd..de2122ef14 100644 --- a/src/ol/layer/Base.js +++ b/src/ol/layer/Base.js @@ -108,11 +108,12 @@ class BaseLayer extends BaseObject { managed: opt_managed === undefined ? true : opt_managed, hasOverlay: false }); + const zIndex = this.getZIndex(); state.opacity = clamp(Math.round(this.getOpacity() * 100) / 100, 0, 1); state.sourceState = this.getSourceState(); state.visible = this.getVisible(); state.extent = this.getExtent(); - state.zIndex = this.getZIndex() || (state.managed === false ? Infinity : 0); + state.zIndex = zIndex !== undefined ? zIndex : (state.managed === false ? Infinity : 0); state.maxResolution = this.getMaxResolution(); state.minResolution = Math.max(this.getMinResolution(), 0); state.minZoom = this.getMinZoom(); diff --git a/test/spec/ol/layer/layer.test.js b/test/spec/ol/layer/layer.test.js index 3fe42a337d..4aa45692ae 100644 --- a/test/spec/ol/layer/layer.test.js +++ b/test/spec/ol/layer/layer.test.js @@ -650,10 +650,12 @@ describe('ol.layer.Layer', function() { }); it('respects the configured zIndex', function() { - layer.setZIndex(42); - map.dispatchEvent(new RenderEvent('precompose', null, frameState, null)); - const layerState = frameState.layerStatesArray[0]; - expect(layerState.zIndex).to.be(42); + [-5, 0, 42].forEach(index => { + layer.setZIndex(index); + map.dispatchEvent(new RenderEvent('precompose', null, frameState, null)); + const layerState = frameState.layerStatesArray[0]; + expect(layerState.zIndex).to.be(index); + }); }); });