Switch map and layer constructor in tests

The webgl tests do not run currently (which is why these have not been failing).
This commit is contained in:
Tim Schaub
2018-11-04 20:29:54 -07:00
parent ca5b0c63a5
commit a69eeceeba
14 changed files with 122 additions and 89 deletions

View File

@@ -1,8 +1,10 @@
import Map from '../../../../src/ol/Map.js';
import WebGLMap from '../../../../src/ol/WebGLMap.js';
import View from '../../../../src/ol/View.js';
import {getSize} from '../../../../src/ol/extent.js';
import Point from '../../../../src/ol/geom/Point.js';
import TileLayer from '../../../../src/ol/layer/Tile.js';
import WebGLTileLayer from '../../../../src/ol/layer/WebGLTile.js';
import {assign} from '../../../../src/ol/obj.js';
import {transform} from '../../../../src/ol/proj.js';
import TileImage from '../../../../src/ol/source/TileImage.js';
@@ -18,12 +20,12 @@ describe('ol.rendering.layer.Tile', function() {
let map;
function createMap(renderer, opt_center, opt_size, opt_pixelRatio, opt_resolutions) {
const MapConstructor = renderer === 'webgl' ? WebGLMap : Map;
const size = opt_size !== undefined ? opt_size : [50, 50];
map = new Map({
map = new MapConstructor({
pixelRatio: opt_pixelRatio || 1,
target: createMapDiv(size[0], size[1]),
renderer: renderer,
view: new View({
center: opt_center !== undefined ? opt_center : transform(
[-122.416667, 37.783333], 'EPSG:4326', 'EPSG:3857'),
@@ -40,7 +42,8 @@ describe('ol.rendering.layer.Tile', function() {
map = null;
});
function waitForTiles(sources, layerOptions, onTileLoaded) {
function waitForTiles(renderer, sources, layerOptions, onTileLoaded) {
const LayerConstructor = renderer === 'webgl' ? WebGLTileLayer : TileLayer;
let tilesLoading = 0;
let tileLoaded = 0;
@@ -66,7 +69,7 @@ describe('ol.rendering.layer.Tile', function() {
source: source
};
assign(options, layerOptions[i] || layerOptions);
map.addLayer(new TileLayer(options));
map.addLayer(new LayerConstructor(options));
});
}
@@ -76,7 +79,7 @@ describe('ol.rendering.layer.Tile', function() {
const source = new XYZ({
url: 'rendering/ol/data/tiles/osm/{z}/{x}/{y}.png'
});
waitForTiles([source], {}, function() {
waitForTiles('canvas', [source], {}, function() {
setTimeout(function() {
expectResemble(map, 'rendering/ol/layer/expected/osm-canvas.png',
IMAGE_TOLERANCE, done);
@@ -97,7 +100,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests the canvas renderer', function(done) {
createMap('canvas');
waitForTiles([source], {}, function() {
waitForTiles('canvas', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/osm-canvas.png',
IMAGE_TOLERANCE, done);
});
@@ -106,7 +109,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
createMap('webgl');
waitForTiles([source], {}, function() {
waitForTiles('webgl', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/osm-webgl.png',
IMAGE_TOLERANCE, done);
});
@@ -130,7 +133,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
createMap('webgl');
waitForTiles([source1, source2], {}, function() {
waitForTiles('webgl', [source1, source2], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-webgl.png',
IMAGE_TOLERANCE, done);
});
@@ -145,7 +148,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests canvas layer extent clipping', function(done) {
createMap('canvas');
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
waitForTiles('canvas', [source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent.png',
IMAGE_TOLERANCE, done);
});
@@ -154,7 +157,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests canvas layer extent clipping with rotation', function(done) {
createMap('canvas');
map.getView().setRotation(Math.PI / 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
waitForTiles('canvas', [source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-rotate.png',
IMAGE_TOLERANCE, done);
});
@@ -162,7 +165,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests canvas layer extent clipping (HiDPI)', function(done) {
createMap('canvas', undefined, undefined, 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
waitForTiles('canvas', [source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-hidpi.png',
IMAGE_TOLERANCE, done);
});
@@ -171,7 +174,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests canvas layer extent clipping with rotation (HiDPI)', function(done) {
createMap('canvas', undefined, undefined, 2);
map.getView().setRotation(Math.PI / 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
waitForTiles('canvas', [source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-rotate-hidpi.png',
IMAGE_TOLERANCE, done);
});
@@ -191,7 +194,7 @@ describe('ol.rendering.layer.Tile', function() {
it('tests the canvas renderer', function(done) {
createMap('canvas');
waitForTiles([source], {opacity: 0.2}, function() {
waitForTiles('canvas', [source], {opacity: 0.2}, function() {
expectResemble(map, 'rendering/ol/layer/expected/opacity-canvas.png',
IMAGE_TOLERANCE, done);
});
@@ -200,7 +203,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
createMap('webgl');
waitForTiles([source], {opacity: 0.2}, function() {
waitForTiles('webgl', [source], {opacity: 0.2}, function() {
expectResemble(map, 'rendering/ol/layer/expected/opacity-webgl.png',
IMAGE_TOLERANCE, done);
});
@@ -222,7 +225,7 @@ describe('ol.rendering.layer.Tile', function() {
it('512x256 renders correcly using the canvas renderer', function(done) {
const source = createSource('512x256');
createMap('canvas', [-10997148, 4569099]);
waitForTiles([source], {}, function() {
waitForTiles('canvas', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/512x256-canvas.png',
IMAGE_TOLERANCE, done);
});
@@ -232,7 +235,7 @@ describe('ol.rendering.layer.Tile', function() {
assertWebGL();
const source = createSource('512x256');
createMap('webgl', [-10997148, 4569099]);
waitForTiles([source], {}, function() {
waitForTiles('webgl', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/512x256-webgl.png',
IMAGE_TOLERANCE, done);
});
@@ -242,7 +245,7 @@ describe('ol.rendering.layer.Tile', function() {
const source = createSource('192x256');
createMap('canvas', [-11271098, 3747248], [100, 100], undefined,
source.getTileGrid().getResolutions());
waitForTiles([source], {}, function() {
waitForTiles('canvas', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/192x256-canvas.png',
IMAGE_TOLERANCE, done);
});
@@ -253,7 +256,7 @@ describe('ol.rendering.layer.Tile', function() {
const source = createSource('192x256');
createMap('webgl', [-11271098, 3747248], [100, 100], undefined,
source.getTileGrid().getResolutions());
waitForTiles([source], {}, function() {
waitForTiles('webgl', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/192x256-webgl.png',
IMAGE_TOLERANCE, done);
});
@@ -284,7 +287,7 @@ describe('ol.rendering.layer.Tile', function() {
it('works with the canvas renderer', function(done) {
createMap('canvas', undefined, [100, 100]);
map.getLayers().on('add', onAddLayer);
waitForTiles([source], {}, function() {
waitForTiles('canvas', [source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/render-canvas.png',
IMAGE_TOLERANCE, done);
});