From 37f117b78227d71185e8bf055fc10ef8a2a3826b Mon Sep 17 00:00:00 2001 From: mike-000 <49240900+mike-000@users.noreply.github.com> Date: Wed, 29 Dec 2021 23:55:50 +0000 Subject: [PATCH] Test scalebar text in EPSG:4326 --- .../browser/spec/ol/control/scaleline.test.js | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/test/browser/spec/ol/control/scaleline.test.js b/test/browser/spec/ol/control/scaleline.test.js index 2de14aadcc..076f83ff36 100644 --- a/test/browser/spec/ol/control/scaleline.test.js +++ b/test/browser/spec/ol/control/scaleline.test.js @@ -640,5 +640,49 @@ describe('ol.control.ScaleLine', function () { expect(text.slice(0, 4)).to.be('1 : '); expect(text.replace(/^1|\D/g, '')).to.eql(69885283); }); + it('it corresponds to the resolution in EPSG:4326', function () { + const ctrl = new ScaleLine({ + bar: true, + text: true, + }); + ctrl.setMap(map); + map.setView( + new View({ + center: [0, 0], + zoom: 2, + multiWorld: true, + projection: 'EPSG:4326', + }) + ); + map.renderSync(); + const element = document.querySelector('.ol-scale-text', map.getTarget()); + expect(element).to.not.be(null); + expect(element).to.be.a(HTMLDivElement); + const text = element.innerText; + expect(text.slice(0, 4)).to.be('1 : '); + expect(text.replace(/^1|\D/g, '')).to.eql(139614359); + }); + it('it changes with latitude in EPSG:4326', function () { + const ctrl = new ScaleLine({ + bar: true, + text: true, + }); + ctrl.setMap(map); + map.setView( + new View({ + center: [0, 60], + zoom: 2, + multiWorld: true, + projection: 'EPSG:4326', + }) + ); + map.renderSync(); + const element = document.querySelector('.ol-scale-text', map.getTarget()); + expect(element).to.not.be(null); + expect(element).to.be.a(HTMLDivElement); + const text = element.innerText; + expect(text.slice(0, 4)).to.be('1 : '); + expect(text.replace(/^1|\D/g, '')).to.eql(104710728); + }); }); });