Add prerender and postrender events for Image layer
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import Map from '../../../../../src/ol/Map.js';
|
||||
import View from '../../../../../src/ol/View.js';
|
||||
import {get as getProj} from '../../../../../src/ol/proj.js';
|
||||
import ImageLayer from '../../../../../src/ol/layer/Image.js';
|
||||
import VectorImageLayer from '../../../../../src/ol/layer/VectorImage.js';
|
||||
import Feature from '../../../../../src/ol/Feature.js';
|
||||
@@ -66,6 +67,59 @@ describe('ol.renderer.canvas.ImageLayer', function() {
|
||||
});
|
||||
});
|
||||
|
||||
describe('Image rendering', function() {
|
||||
let map, div, layer;
|
||||
|
||||
beforeEach(function(done) {
|
||||
const projection = getProj('EPSG:3857');
|
||||
layer = new ImageLayer({
|
||||
source: new Static({
|
||||
url: 'spec/ol/data/osm-0-0-0.png',
|
||||
imageExtent: projection.getExtent(),
|
||||
projection: projection
|
||||
})
|
||||
});
|
||||
|
||||
div = document.createElement('div');
|
||||
div.style.width = div.style.height = '100px';
|
||||
document.body.appendChild(div);
|
||||
map = new Map({
|
||||
target: div,
|
||||
layers: [layer],
|
||||
view: new View({
|
||||
center: [0, 0],
|
||||
zoom: 2
|
||||
})
|
||||
});
|
||||
layer.getSource().on('imageloadend', function() {
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
map.setTarget(null);
|
||||
document.body.removeChild(div);
|
||||
map.dispose();
|
||||
});
|
||||
|
||||
it('dispatches prerender and postrender events on the image layer', function(done) {
|
||||
let prerender = 0;
|
||||
let postrender = 0;
|
||||
layer.on('prerender', function() {
|
||||
++prerender;
|
||||
});
|
||||
layer.on('postrender', function() {
|
||||
++postrender;
|
||||
});
|
||||
map.on('postrender', function() {
|
||||
expect(prerender).to.be(1);
|
||||
expect(postrender).to.be(1);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
describe('Vector image rendering', function() {
|
||||
let map, div, layer;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user