Update tests for ol-mapbox-style's new background rendering technique
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
|
import Map from '../../../../../src/ol/Map.js';
|
||||||
import MapboxVectorLayer from '../../../../../src/ol/layer/MapboxVector.js';
|
import MapboxVectorLayer from '../../../../../src/ol/layer/MapboxVector.js';
|
||||||
import {asString} from '../../../../../src/ol/color.js';
|
import View from '../../../../../src/ol/View.js';
|
||||||
import {unByKey} from '../../../../../src/ol/Observable.js';
|
import {unByKey} from '../../../../../src/ol/Observable.js';
|
||||||
|
|
||||||
describe('ol/layer/MapboxVector', () => {
|
describe('ol/layer/MapboxVector', () => {
|
||||||
@@ -90,6 +91,19 @@ describe('ol/layer/MapboxVector', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
describe('background', function () {
|
describe('background', function () {
|
||||||
|
let map;
|
||||||
|
beforeEach(function () {
|
||||||
|
map = new Map({
|
||||||
|
target: createMapDiv(20, 20),
|
||||||
|
view: new View({
|
||||||
|
zoom: 2,
|
||||||
|
center: [0, 0],
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
this.afterEach(function () {
|
||||||
|
disposeMap(map);
|
||||||
|
});
|
||||||
it('configures the layer with a background function', function (done) {
|
it('configures the layer with a background function', function (done) {
|
||||||
const layer = new MapboxVectorLayer({
|
const layer = new MapboxVectorLayer({
|
||||||
styleUrl:
|
styleUrl:
|
||||||
@@ -116,13 +130,13 @@ describe('ol/layer/MapboxVector', () => {
|
|||||||
})
|
})
|
||||||
),
|
),
|
||||||
});
|
});
|
||||||
const source = layer.getSource();
|
map.addLayer(layer);
|
||||||
const key = source.on('change', function () {
|
layer.getSource().once('change', () => {
|
||||||
if (source.getState() === 'ready') {
|
layer.once('prerender', (e) => {
|
||||||
unByKey(key);
|
const pixel = Array.from(e.context.getImageData(0, 0, 1, 1).data);
|
||||||
expect(layer.getBackground()(1)).to.eql(asString([255, 0, 0, 0.8]));
|
expect(pixel).to.eql([255, 0, 0, 0.8 * 255]);
|
||||||
done();
|
done();
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -153,13 +167,13 @@ describe('ol/layer/MapboxVector', () => {
|
|||||||
),
|
),
|
||||||
background: false,
|
background: false,
|
||||||
});
|
});
|
||||||
const source = layer.getSource();
|
map.addLayer(layer);
|
||||||
const key = source.on('change', function () {
|
layer.getSource().once('change', () => {
|
||||||
if (source.getState() === 'ready') {
|
layer.once('prerender', (e) => {
|
||||||
unByKey(key);
|
const pixel = Array.from(e.context.getImageData(0, 0, 1, 1).data);
|
||||||
expect(layer.getBackground()).to.be(false);
|
expect(pixel).to.eql([0, 0, 0, 0]);
|
||||||
done();
|
done();
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -191,13 +205,13 @@ describe('ol/layer/MapboxVector', () => {
|
|||||||
})
|
})
|
||||||
),
|
),
|
||||||
});
|
});
|
||||||
const source = layer.getSource();
|
map.addLayer(layer);
|
||||||
const key = source.on('change', function () {
|
layer.getSource().once('change', () => {
|
||||||
if (source.getState() === 'ready') {
|
layer.once('prerender', (e) => {
|
||||||
unByKey(key);
|
const pixel = Array.from(e.context.getImageData(0, 0, 1, 1).data);
|
||||||
expect(layer.getBackground()).to.be(undefined);
|
expect(pixel).to.eql([0, 0, 0, 0]);
|
||||||
done();
|
done();
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user