In addition to using const and let, this also upgrades our linter config and removes lint (mostly whitespace).
103 lines
2.6 KiB
JavaScript
103 lines
2.6 KiB
JavaScript
import Map from '../../../../src/ol/Map.js';
|
|
import View from '../../../../src/ol/View.js';
|
|
import Control from '../../../../src/ol/control/Control.js';
|
|
import OverviewMap from '../../../../src/ol/control/OverviewMap.js';
|
|
|
|
describe('ol.control.OverviewMap', function() {
|
|
let map, target;
|
|
|
|
beforeEach(function() {
|
|
target = document.createElement('div');
|
|
document.body.appendChild(target);
|
|
map = new Map({
|
|
target: target
|
|
});
|
|
});
|
|
|
|
afterEach(function() {
|
|
map.dispose();
|
|
document.body.removeChild(target);
|
|
map = null;
|
|
target = null;
|
|
});
|
|
|
|
describe('constructor', function() {
|
|
it('creates an overview map with the default options', function() {
|
|
const control = new OverviewMap();
|
|
expect(control).to.be.a(OverviewMap);
|
|
expect(control).to.be.a(Control);
|
|
});
|
|
});
|
|
|
|
describe('setMap()', function() {
|
|
|
|
it('keeps ovmap view rotation in sync with map view rotation', function() {
|
|
const view = new View({
|
|
center: [0, 0],
|
|
zoom: 0,
|
|
rotation: 0
|
|
});
|
|
map.setView(view);
|
|
|
|
const control = new OverviewMap();
|
|
map.addControl(control);
|
|
const ovView = control.ovmap_.getView();
|
|
expect(ovView.getRotation()).to.be(0);
|
|
|
|
view.setRotation(Math.PI / 4);
|
|
expect(ovView.getRotation()).to.be(Math.PI / 4);
|
|
});
|
|
|
|
it('maintains rotation in sync if view added later', function() {
|
|
const control = new OverviewMap();
|
|
map.addControl(control);
|
|
const ovView = control.ovmap_.getView();
|
|
expect(ovView.getRotation()).to.be(0);
|
|
|
|
const view = new View({
|
|
center: [0, 0],
|
|
zoom: 0,
|
|
rotation: 0
|
|
});
|
|
map.setView(view);
|
|
view.setRotation(Math.PI / 4);
|
|
expect(ovView.getRotation()).to.be(Math.PI / 4);
|
|
});
|
|
|
|
it('stops listening to old maps', function() {
|
|
const control = new OverviewMap();
|
|
const ovView = control.ovmap_.getView();
|
|
|
|
const view = new View({
|
|
center: [0, 0],
|
|
zoom: 0,
|
|
rotation: 0
|
|
});
|
|
map.setView(view);
|
|
map.addControl(control);
|
|
|
|
view.setRotation(Math.PI / 8);
|
|
expect(ovView.getRotation()).to.be(Math.PI / 8);
|
|
|
|
map.removeControl(control);
|
|
|
|
view.setRotation(Math.PI / 4);
|
|
expect(ovView.getRotation()).to.be(Math.PI / 8);
|
|
});
|
|
|
|
it('set target to null', function() {
|
|
const control = new OverviewMap();
|
|
|
|
map.addControl(control);
|
|
|
|
expect(control.ovmap_.getTarget()).not.to.be(null);
|
|
|
|
map.removeControl(control);
|
|
|
|
expect(control.ovmap_.getTarget()).to.be(null);
|
|
});
|
|
|
|
});
|
|
|
|
});
|