More test cleanup

This commit is contained in:
Tim Schaub
2017-07-03 15:39:02 -06:00
parent a2c043d1b4
commit 3bdddeac1d
14 changed files with 219 additions and 285 deletions

View File

@@ -11,13 +11,11 @@ goog.require('ol.tilegrid');
describe('ol.rendering.layer.Image', function() {
var target, map;
var map;
function createMap(renderer) {
target = createMapDiv(50, 50);
map = new ol.Map({
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
view: new ol.View({
center: ol.proj.transform(
@@ -25,9 +23,15 @@ describe('ol.rendering.layer.Image', function() {
zoom: 5
})
});
return map;
}
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
function waitForImages(sources, layerOptions, onImagesLoaded) {
var imagesLoading = 0;
var imagesLoaded = 0;
@@ -70,12 +74,8 @@ describe('ol.rendering.layer.Image', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForImages([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/image-canvas.png',
IMAGE_TOLERANCE, done);
@@ -84,7 +84,7 @@ describe('ol.rendering.layer.Image', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
waitForImages([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/image-webgl.png',
IMAGE_TOLERANCE, done);
@@ -103,12 +103,8 @@ describe('ol.rendering.layer.Image', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('renders correctly', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForImages([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/image-scaled.png',
IMAGE_TOLERANCE, done);

View File

@@ -17,15 +17,14 @@ goog.require('ol.tilegrid');
describe('ol.rendering.layer.Tile', function() {
var target, map;
var map;
function createMap(renderer, opt_center, opt_size, opt_pixelRatio, opt_resolutions) {
var size = opt_size !== undefined ? opt_size : [50, 50];
target = createMapDiv(size[0], size[1]);
map = new ol.Map({
pixelRatio: opt_pixelRatio || 1,
target: target,
target: createMapDiv(size[0], size[1]),
renderer: renderer,
view: new ol.View({
center: opt_center !== undefined ? opt_center : ol.proj.transform(
@@ -34,9 +33,15 @@ describe('ol.rendering.layer.Tile', function() {
zoom: 5
})
});
return map;
}
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
function waitForTiles(sources, layerOptions, onTileLoaded) {
var tilesLoading = 0;
var tileLoaded = 0;
@@ -76,12 +81,8 @@ describe('ol.rendering.layer.Tile', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/osm-canvas.png',
IMAGE_TOLERANCE, done);
@@ -90,7 +91,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/osm-webgl.png',
IMAGE_TOLERANCE, done);
@@ -110,12 +111,8 @@ describe('ol.rendering.layer.Tile', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForTiles([source1, source2], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas.png',
IMAGE_TOLERANCE, done);
@@ -124,7 +121,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
waitForTiles([source1, source2], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-webgl.png',
IMAGE_TOLERANCE, done);
@@ -139,7 +136,7 @@ describe('ol.rendering.layer.Tile', function() {
}
it('tests canvas layer extent clipping', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent.png',
IMAGE_TOLERANCE, done);
@@ -147,7 +144,7 @@ describe('ol.rendering.layer.Tile', function() {
});
it('tests canvas layer extent clipping with rotation', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setRotation(Math.PI / 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-rotate.png',
@@ -156,7 +153,7 @@ describe('ol.rendering.layer.Tile', function() {
});
it('tests canvas layer extent clipping (HiDPI)', function(done) {
map = createMap('canvas', undefined, undefined, 2);
createMap('canvas', undefined, undefined, 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-hidpi.png',
IMAGE_TOLERANCE, done);
@@ -164,7 +161,7 @@ describe('ol.rendering.layer.Tile', function() {
});
it('tests canvas layer extent clipping with rotation (HiDPI)', function(done) {
map = createMap('canvas', undefined, undefined, 2);
createMap('canvas', undefined, undefined, 2);
map.getView().setRotation(Math.PI / 2);
waitForTiles([source1, source2], [{}, {extent: centerExtent(map)}], function() {
expectResemble(map, 'rendering/ol/layer/expected/2-layers-canvas-extent-rotate-hidpi.png',
@@ -183,12 +180,8 @@ describe('ol.rendering.layer.Tile', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForTiles([source], {opacity: 0.2}, function() {
expectResemble(map, 'rendering/ol/layer/expected/opacity-canvas.png',
IMAGE_TOLERANCE, done);
@@ -197,7 +190,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
waitForTiles([source], {opacity: 0.2}, function() {
expectResemble(map, 'rendering/ol/layer/expected/opacity-webgl.png',
IMAGE_TOLERANCE, done);
@@ -216,13 +209,9 @@ describe('ol.rendering.layer.Tile', function() {
});
}
afterEach(function() {
disposeMap(map);
});
it('512x256 renders correcly using the canvas renderer', function(done) {
var source = createSource('512x256');
map = createMap('canvas', [-10997148, 4569099]);
createMap('canvas', [-10997148, 4569099]);
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/512x256-canvas.png',
IMAGE_TOLERANCE, done);
@@ -232,7 +221,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('512x256 renders correcly using the webgl renderer', function(done) {
assertWebGL();
var source = createSource('512x256');
map = createMap('webgl', [-10997148, 4569099]);
createMap('webgl', [-10997148, 4569099]);
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/512x256-webgl.png',
IMAGE_TOLERANCE, done);
@@ -241,7 +230,7 @@ describe('ol.rendering.layer.Tile', function() {
it('192x256 renders correcly using the canvas renderer', function(done) {
var source = createSource('192x256');
map = createMap('canvas', [-11271098, 3747248], [100, 100], undefined,
createMap('canvas', [-11271098, 3747248], [100, 100], undefined,
source.getTileGrid().getResolutions());
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/192x256-canvas.png',
@@ -252,7 +241,7 @@ describe('ol.rendering.layer.Tile', function() {
where('WebGL').it('192x256 renders correcly using the webgl renderer', function(done) {
assertWebGL();
var source = createSource('192x256');
map = createMap('webgl', [-11271098, 3747248], [100, 100], undefined,
createMap('webgl', [-11271098, 3747248], [100, 100], undefined,
source.getTileGrid().getResolutions());
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/192x256-webgl.png',
@@ -282,12 +271,8 @@ describe('ol.rendering.layer.Tile', function() {
};
});
afterEach(function() {
disposeMap(map);
});
it('works with the canvas renderer', function(done) {
map = createMap('canvas', undefined, [100, 100]);
createMap('canvas', undefined, [100, 100]);
map.getLayers().on('add', onAddLayer);
waitForTiles([source], {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/render-canvas.png',

View File

@@ -16,23 +16,27 @@ goog.require('ol.style.Style');
describe('ol.rendering.layer.Vector', function() {
var center, target, map;
var center = [1825927.7316762917, 6143091.089223046];
var map;
function createMap(renderer) {
target = createMapDiv(80, 80);
center = [1825927.7316762917, 6143091.089223046];
map = new ol.Map({
target: target,
target: createMapDiv(80, 80),
renderer: renderer,
view: new ol.View({
center: center,
zoom: 13
})
});
return map;
}
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
var source;
function addCircle(r) {
@@ -67,12 +71,8 @@ describe('ol.rendering.layer.Vector', function() {
source = new ol.source.Vector();
});
afterEach(function() {
disposeMap(map);
});
it('renders opacity correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
var smallLine = new ol.Feature(new ol.geom.LineString([
[center[0], center[1] - 1],
[center[0], center[1] + 1]
@@ -137,7 +137,7 @@ describe('ol.rendering.layer.Vector', function() {
});
it('renders rotation correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setRotation(Math.PI + Math.PI / 4);
addPolygon(300);
addCircle(500);
@@ -157,7 +157,7 @@ describe('ol.rendering.layer.Vector', function() {
});
it('renders fill/stroke batches correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
source = new ol.source.Vector({
overlaps: false
});
@@ -183,7 +183,7 @@ describe('ol.rendering.layer.Vector', function() {
});
it('renders stroke batches correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
source = new ol.source.Vector({
overlaps: false
});
@@ -207,7 +207,7 @@ describe('ol.rendering.layer.Vector', function() {
});
it('interrupts fill/stroke batches correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
var color;
function createSource(overlaps) {
color = '#3399CC';
@@ -260,7 +260,7 @@ describe('ol.rendering.layer.Vector', function() {
});
it('interrupts stroke batches correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
var color;
function createSource(overlaps) {
color = '#3399CC';
@@ -313,9 +313,9 @@ describe('ol.rendering.layer.Vector', function() {
describe('polygon rendering', function() {
var map;
var map2;
beforeEach(function() {
map = new ol.Map({
map2 = new ol.Map({
target: createMapDiv(128, 128),
view: new ol.View({
center: [0, 0],
@@ -325,7 +325,8 @@ describe('ol.rendering.layer.Vector', function() {
});
afterEach(function() {
disposeMap(map);
disposeMap(map2);
map2 = null;
});
it('renders a feature that spans the world', function(done) {
@@ -359,10 +360,10 @@ describe('ol.rendering.layer.Vector', function() {
})
});
map.addLayer(layer);
map2.addLayer(layer);
map.once('postrender', function() {
expectResemble(map, 'rendering/ol/layer/expected/inverted-star.png', 1, done);
map2.once('postrender', function() {
expectResemble(map2, 'rendering/ol/layer/expected/inverted-star.png', 1, done);
});
});
@@ -371,7 +372,7 @@ describe('ol.rendering.layer.Vector', function() {
describe('Polygon simplification', function() {
var layer, map;
var layer, map3;
beforeEach(function() {
var src = new ol.source.Vector({
@@ -402,7 +403,7 @@ describe('ol.rendering.layer.Vector', function() {
projection: 'EPSG:4326'
});
map = new ol.Map({
map3 = new ol.Map({
layers: [layer],
target: createMapDiv(100, 100),
view: view
@@ -410,7 +411,8 @@ describe('ol.rendering.layer.Vector', function() {
});
afterEach(function() {
disposeMap(map);
disposeMap(map3);
map3 = null;
});
it('renders partially out-of-view polygons with a fill and stroke', function(done) {
@@ -423,8 +425,8 @@ describe('ol.rendering.layer.Vector', function() {
color: [255, 0, 0, 1]
})
}));
map.once('postrender', function() {
expectResemble(map, 'rendering/ol/layer/expected/vector-canvas-simplified.png',
map3.once('postrender', function() {
expectResemble(map3, 'rendering/ol/layer/expected/vector-canvas-simplified.png',
IMAGE_TOLERANCE, done);
});
});
@@ -435,8 +437,8 @@ describe('ol.rendering.layer.Vector', function() {
color: [0, 0, 0, 1]
})
}));
map.once('postrender', function() {
expectResemble(map, 'rendering/ol/layer/expected/vector-canvas-simplified-fill.png',
map3.once('postrender', function() {
expectResemble(map3, 'rendering/ol/layer/expected/vector-canvas-simplified-fill.png',
IMAGE_TOLERANCE, done);
});
});
@@ -448,8 +450,8 @@ describe('ol.rendering.layer.Vector', function() {
width: 2
})
}));
map.once('postrender', function() {
expectResemble(map, 'rendering/ol/layer/expected/vector-canvas-simplified-stroke.png',
map3.once('postrender', function() {
expectResemble(map3, 'rendering/ol/layer/expected/vector-canvas-simplified-stroke.png',
IMAGE_TOLERANCE, done);
});
});

View File

@@ -11,23 +11,25 @@ goog.require('ol.tilegrid');
describe('ol.rendering.layer.VectorTile', function() {
var target, map;
var map;
function createMap(renderer, opt_pixelRatio) {
target = createMapDiv(50, 50);
map = new ol.Map({
pixelRatio: opt_pixelRatio,
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
view: new ol.View({
center: [1825927.7316762917, 6143091.089223046],
zoom: 14
})
});
return map;
}
afterEach(function() {
disposeMap(map);
map = null;
});
function waitForTiles(source, layerOptions, onTileLoaded) {
var tilesLoading = 0;
var tileLoaded = 0;
@@ -68,29 +70,25 @@ describe('ol.rendering.layer.VectorTile', function() {
});
});
afterEach(function() {
disposeMap(map);
});
it('renders correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
waitForTiles(source, {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/vectortile-canvas.png',
11.7, done);
22, done);
});
});
it('renders rotated view correctly with the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setRotation(Math.PI / 4);
waitForTiles(source, {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/vectortile-canvas-rotated.png',
13.4, done);
14, done);
});
});
it('renders correctly with the canvas renderer (HiDPI)', function(done) {
map = createMap('canvas', 2);
createMap('canvas', 2);
waitForTiles(source, {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/vectortile-canvas-hidpi.png',
11.3, done);
@@ -98,7 +96,7 @@ describe('ol.rendering.layer.VectorTile', function() {
});
it('renders rotated view correctly with the canvas renderer (HiDPI)', function(done) {
map = createMap('canvas', 2);
createMap('canvas', 2);
map.getView().setRotation(Math.PI / 4);
waitForTiles(source, {}, function() {
expectResemble(map, 'rendering/ol/layer/expected/vectortile-canvas-rotated-hidpi.png',

View File

@@ -10,11 +10,8 @@ goog.require('ol.source.Vector');
describe('ol.rendering.Map', function() {
var target, map;
var map;
function createMap(renderer) {
target = createMapDiv(50, 50);
var vectorLayer = new ol.layer.Vector({
source: new ol.source.Vector({
features: [new ol.Feature({
@@ -24,7 +21,7 @@ describe('ol.rendering.Map', function() {
});
map = new ol.Map({
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -33,34 +30,19 @@ describe('ol.rendering.Map', function() {
resolution: 1
})
});
return map;
}
describe('#updateSize()', function() {
var map, target;
function createMap(renderer) {
target = document.createElement('div');
document.body.appendChild(target);
map = new ol.Map({
renderer: renderer,
controls: [],
target: target,
view: new ol.View({
center: [0, 0],
zoom: 2
})
});
return map;
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
afterEach(function() {
map.setTarget(null);
document.body.removeChild(target);
});
describe('#updateSize()', function() {
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.once('postrender', function() {
var initialSize = map.getSize();
map.updateSize();
@@ -71,7 +53,7 @@ describe('ol.rendering.Map', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
map.once('postrender', function() {
var initialSize = map.getSize();
map.updateSize();
@@ -82,31 +64,25 @@ describe('ol.rendering.Map', function() {
});
describe('#render()', function() {
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
expectResemble(
map, 'rendering/ol/expected/render-canvas.png', IMAGE_TOLERANCE, done);
});
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
expectResemble(
map, 'rendering/ol/expected/render-webgl.png', IMAGE_TOLERANCE, done);
});
});
describe('#pan()', function() {
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setCenter([10, 10]);
expectResemble(
map, 'rendering/ol/expected/pan-canvas.png', IMAGE_TOLERANCE, done);
@@ -114,7 +90,7 @@ describe('ol.rendering.Map', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
map.getView().setCenter([10, 10]);
expectResemble(
map, 'rendering/ol/expected/pan-webgl.png', IMAGE_TOLERANCE, done);
@@ -122,12 +98,9 @@ describe('ol.rendering.Map', function() {
});
describe('#rotate()', function() {
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setRotation(90);
map.getView().setCenter([10, 10]);
expectResemble(
@@ -136,7 +109,7 @@ describe('ol.rendering.Map', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
map.getView().setRotation(90);
map.getView().setCenter([10, 10]);
expectResemble(
@@ -145,12 +118,9 @@ describe('ol.rendering.Map', function() {
});
describe('#zoom()', function() {
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
map.getView().setCenter([10, 10]);
map.getView().setResolution(2);
expectResemble(
@@ -159,7 +129,7 @@ describe('ol.rendering.Map', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
map.getView().setCenter([10, 10]);
map.getView().setResolution(2);
expectResemble(

View File

@@ -25,8 +25,9 @@ describe('ol.rendering.source.TileWMS', function() {
}
var map;
function createMap(renderer, pixelRatio) {
return new ol.Map({
map = new ol.Map({
target: createMapDiv(200, 200),
pixelRatio: pixelRatio,
renderer: renderer,
@@ -37,6 +38,13 @@ describe('ol.rendering.source.TileWMS', function() {
});
}
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
function createSource(gutter) {
return new ol.source.TileWMS({
params: {
@@ -47,17 +55,10 @@ describe('ol.rendering.source.TileWMS', function() {
});
}
var map;
afterEach(function() {
if (map) {
disposeMap(map);
}
map = null;
});
describe('0px gutter, 1 pixel ratio', function() {
it('tests the canvas renderer', function(done) {
map = createMap('canvas', 1);
createMap('canvas', 1);
var source = createSource(0);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/0_1.canvas.png', IMAGE_TOLERANCE, done);
@@ -69,7 +70,7 @@ describe('ol.rendering.source.TileWMS', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl', 1);
createMap('webgl', 1);
var source = createSource(0);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/0_1.webgl.png', IMAGE_TOLERANCE, done);
@@ -82,7 +83,7 @@ describe('ol.rendering.source.TileWMS', function() {
describe('0px gutter, 2 pixel ratio', function() {
it('tests the canvas renderer', function(done) {
map = createMap('canvas', 2);
createMap('canvas', 2);
var source = createSource(0);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/0_2.canvas.png', IMAGE_TOLERANCE, done);
@@ -94,7 +95,7 @@ describe('ol.rendering.source.TileWMS', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl', 2);
createMap('webgl', 2);
var source = createSource(0);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/0_2.webgl.png', IMAGE_TOLERANCE, done);
@@ -108,7 +109,7 @@ describe('ol.rendering.source.TileWMS', function() {
describe('20px gutter, 1 pixel ratio', function() {
it('tests the canvas renderer', function(done) {
map = createMap('canvas', 1);
createMap('canvas', 1);
var source = createSource(20);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/20_1.canvas.png', IMAGE_TOLERANCE, done);
@@ -120,7 +121,7 @@ describe('ol.rendering.source.TileWMS', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl', 1);
createMap('webgl', 1);
var source = createSource(20);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/20_1.webgl.png', IMAGE_TOLERANCE, done);
@@ -133,7 +134,7 @@ describe('ol.rendering.source.TileWMS', function() {
describe('20px gutter, 2 pixel ratio', function() {
it('tests the canvas renderer', function(done) {
map = createMap('canvas', 2);
createMap('canvas', 2);
var source = createSource(20);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/20_2.canvas.png', IMAGE_TOLERANCE, done);
@@ -145,7 +146,7 @@ describe('ol.rendering.source.TileWMS', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl', 2);
createMap('webgl', 2);
var source = createSource(20);
tilesLoaded(source, function() {
expectResemble(map, 'rendering/ol/source/expected/20_2.webgl.png', IMAGE_TOLERANCE, done);

View File

@@ -14,18 +14,16 @@ goog.require('ol.style.Stroke');
describe('ol.rendering.style.Circle', function() {
var target, map, vectorSource;
var map, vectorSource;
function createMap(renderer) {
target = createMapDiv(50, 50);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
map = new ol.Map({
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -34,13 +32,16 @@ describe('ol.rendering.style.Circle', function() {
resolution: 1
})
});
return map;
}
describe('#render', function() {
afterEach(function() {
afterEach(function() {
if (map) {
disposeMap(map);
});
map = null;
}
});
describe('#render', function() {
function createFeatures() {
var feature;
@@ -184,7 +185,7 @@ describe('ol.rendering.style.Circle', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/circle-canvas.png',
8.0, done);
@@ -192,7 +193,7 @@ describe('ol.rendering.style.Circle', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/circle-webgl.png',
8.0, done);

View File

@@ -12,7 +12,7 @@ goog.require('ol.style.Style');
describe('ol.rendering.style.Icon', function() {
var target, map, vectorSource;
var map, vectorSource;
var imgInfo = {
anchor: [0.5, 46],
@@ -24,15 +24,13 @@ describe('ol.rendering.style.Icon', function() {
};
function createMap(renderer, width, height) {
target = createMapDiv(width ? width : 50, height ? height : 50);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
map = new ol.Map({
target: target,
target: createMapDiv(width ? width : 50, height ? height : 50),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -41,13 +39,16 @@ describe('ol.rendering.style.Icon', function() {
resolution: 1
})
});
return map;
}
describe('#render', function() {
afterEach(function() {
afterEach(function() {
if (map) {
disposeMap(map);
});
map = null;
}
});
describe('#render', function() {
function createFeatures(src, imgInfo, callback) {
var feature;
@@ -68,7 +69,7 @@ describe('ol.rendering.style.Icon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures('rendering/ol/data/icon.png', imgInfo, function() {
expectResemble(map, 'rendering/ol/style/expected/icon-canvas.png',
IMAGE_TOLERANCE, done);
@@ -76,7 +77,7 @@ describe('ol.rendering.style.Icon', function() {
});
it('scales svg correctly in the canvas renderer', function(done) {
map = createMap('canvas', 512, 512);
createMap('canvas', 512, 512);
createFeatures('rendering/ol/data/me0.svg', {
scale: 96 / 512,
imgSize: [512, 512]
@@ -87,7 +88,7 @@ describe('ol.rendering.style.Icon', function() {
});
it('uses offset correctly in the canvas renderer', function(done) {
map = createMap('canvas', 256, 512);
createMap('canvas', 256, 512);
createFeatures('rendering/ol/data/me0.svg', {
offset: [0, 256],
size: [256, 256],
@@ -99,7 +100,7 @@ describe('ol.rendering.style.Icon', function() {
});
it('uses offset correctly if it is larger than size in the canvas renderer', function(done) {
map = createMap('canvas', 256, 512);
createMap('canvas', 256, 512);
createFeatures('rendering/ol/data/me0.svg', {
offset: [0, 374],
size: [256, 256],
@@ -112,7 +113,7 @@ describe('ol.rendering.style.Icon', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
createFeatures('rendering/ol/data/icon.png', imgInfo, function() {
expectResemble(map, 'rendering/ol/style/expected/icon-webgl.png',
2.0, done);

View File

@@ -12,11 +12,9 @@ goog.require('ol.style.Stroke');
describe('ol.rendering.style.LineString', function() {
var target, map, vectorSource;
var map, vectorSource;
function createMap(renderer, opt_pixelRatio) {
target = createMapDiv(50, 50);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
source: vectorSource
@@ -24,7 +22,7 @@ describe('ol.rendering.style.LineString', function() {
map = new ol.Map({
pixelRatio: opt_pixelRatio || 1,
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -33,13 +31,16 @@ describe('ol.rendering.style.LineString', function() {
resolution: 1
})
});
return map;
}
describe('different strokes', function() {
afterEach(function() {
afterEach(function() {
if (map) {
disposeMap(map);
});
map = null;
}
});
describe('different strokes', function() {
function createFeatures() {
var feature;
@@ -111,7 +112,7 @@ describe('ol.rendering.style.LineString', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(
map, 'rendering/ol/style/expected/linestring-strokes-canvas.png',
@@ -119,14 +120,14 @@ describe('ol.rendering.style.LineString', function() {
});
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/linestring-strokes-webgl.png',
14.6, done);
});
it('tests the canvas renderer (HiDPI)', function(done) {
map = createMap('canvas', 2);
createMap('canvas', 2);
createFeatures();
expectResemble(
map, 'rendering/ol/style/expected/linestring-strokes-canvas-hidpi.png',

View File

@@ -13,11 +13,10 @@ goog.require('ol.style.Stroke');
describe('ol.rendering.style.Polygon', function() {
var target, map, vectorSource;
var map, vectorSource;
function createMap(renderer, opt_size) {
var size = opt_size || 50;
target = createMapDiv(size, size);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
@@ -25,7 +24,7 @@ describe('ol.rendering.style.Polygon', function() {
});
map = new ol.Map({
target: target,
target: createMapDiv(size, size),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -34,13 +33,16 @@ describe('ol.rendering.style.Polygon', function() {
resolution: 1
})
});
return map;
}
describe('different types', function() {
afterEach(function() {
afterEach(function() {
if (map) {
disposeMap(map);
});
map = null;
}
});
describe('different types', function() {
function createFeatures() {
var fill = new ol.style.Fill({color: 'red'});
@@ -86,14 +88,14 @@ describe('ol.rendering.style.Polygon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-types-canvas.png',
IMAGE_TOLERANCE, done);
});
where('WebGL').it('tests the webgl renderer', function(done) {
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-types-webgl.png',
IMAGE_TOLERANCE, done);
@@ -101,9 +103,6 @@ describe('ol.rendering.style.Polygon', function() {
});
describe('different types with stroke', function() {
afterEach(function() {
disposeMap(map);
});
function createFeatures() {
var stroke = new ol.style.Stroke({
@@ -154,7 +153,7 @@ describe('ol.rendering.style.Polygon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas', 100);
createMap('canvas', 100);
map.getView().setResolution(0.5);
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-types-canvas-stroke.png',
@@ -162,7 +161,7 @@ describe('ol.rendering.style.Polygon', function() {
});
where('WebGL').it('tests the webgl renderer', function(done) {
map = createMap('webgl', 100);
createMap('webgl', 100);
map.getView().setResolution(0.5);
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-types-webgl-stroke.png',
@@ -171,9 +170,6 @@ describe('ol.rendering.style.Polygon', function() {
});
describe('z-index', function() {
afterEach(function() {
disposeMap(map);
});
function createFeatures() {
var feature;
@@ -216,14 +212,14 @@ describe('ol.rendering.style.Polygon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-zindex-canvas.png',
IMAGE_TOLERANCE, done);
});
where('WebGL').it('tests the webgl renderer', function(done) {
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/polygon-zindex-webgl.png',
IMAGE_TOLERANCE, done);
@@ -231,9 +227,6 @@ describe('ol.rendering.style.Polygon', function() {
});
describe('different fills and strokes', function() {
afterEach(function() {
disposeMap(map);
});
function createFeatures() {
var feature;
@@ -275,7 +268,7 @@ describe('ol.rendering.style.Polygon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(
map, 'rendering/ol/style/expected/polygon-fill-and-strokes-canvas.png',
@@ -283,7 +276,7 @@ describe('ol.rendering.style.Polygon', function() {
});
where('WebGL').it('tests the webgl renderer', function(done) {
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(
map, 'rendering/ol/style/expected/polygon-fill-and-strokes-webgl.png',
@@ -292,9 +285,6 @@ describe('ol.rendering.style.Polygon', function() {
});
describe('CanvasPattern and LinearGradient as fills and strokes', function() {
afterEach(function() {
disposeMap(map);
});
function createRainbowGradient() {
var canvas = document.createElement('canvas');
@@ -340,7 +330,7 @@ describe('ol.rendering.style.Polygon', function() {
}
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(
map, 'rendering/ol/style/expected/polygon-pattern-gradient-canvas.png',

View File

@@ -14,18 +14,16 @@ goog.require('ol.style.Stroke');
describe('ol.rendering.style.RegularShape', function() {
var target, map, vectorSource;
var map, vectorSource;
function createMap(renderer) {
target = createMapDiv(50, 50);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
map = new ol.Map({
target: target,
target: createMapDiv(50, 50),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -34,11 +32,16 @@ describe('ol.rendering.style.RegularShape', function() {
resolution: 1
})
});
return map;
}
function createFeatures(stroke, fill) {
afterEach(function() {
if (map) {
disposeMap(map);
map = null;
}
});
function createFeatures(stroke, fill) {
var feature;
feature = new ol.Feature({
geometry: new ol.geom.Point([-15, 15])
@@ -109,12 +112,8 @@ describe('ol.rendering.style.RegularShape', function() {
var stroke = new ol.style.Stroke({width: 2});
var fill = new ol.style.Fill({color: 'red'});
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures(stroke, fill);
expectResemble(map, 'rendering/ol/style/expected/regularshape-canvas.png', 9.4, done);
});
@@ -138,7 +137,7 @@ describe('ol.rendering.style.RegularShape', function() {
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
createFeatures(stroke, fill);
expectResemble(map, 'rendering/ol/style/expected/regularshape-webgl.png', 8.2, done);
});
@@ -148,19 +147,15 @@ describe('ol.rendering.style.RegularShape', function() {
var stroke = new ol.style.Stroke();
var fill = new ol.style.Fill();
afterEach(function() {
disposeMap(map);
});
it('tests the canvas renderer', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures(stroke, fill);
expectResemble(map, 'rendering/ol/style/expected/regularshape-canvas-default-style.png', 3.0, done);
});
where('WebGL').it('tests the WebGL renderer', function(done) {
assertWebGL();
map = createMap('webgl');
createMap('webgl');
createFeatures(stroke, fill);
expectResemble(map, 'rendering/ol/style/expected/regularshape-webgl-default-style.png', 3.0, done);
});

View File

@@ -13,18 +13,16 @@ goog.require('ol.style.Stroke');
describe('ol.rendering.style.Text', function() {
var target, map, vectorSource;
var map, vectorSource;
function createMap(renderer) {
target = createMapDiv(200, 200);
vectorSource = new ol.source.Vector();
var vectorLayer = new ol.layer.Vector({
source: vectorSource
});
map = new ol.Map({
target: target,
target: createMapDiv(200, 200),
renderer: renderer,
layers: [vectorLayer],
view: new ol.View({
@@ -33,13 +31,16 @@ describe('ol.rendering.style.Text', function() {
resolution: 1
})
});
return map;
}
describe('#render', function() {
afterEach(function() {
afterEach(function() {
if (map) {
disposeMap(map);
});
map = null;
}
});
describe('#render', function() {
function createFeatures() {
var feature;
@@ -86,30 +87,29 @@ describe('ol.rendering.style.Text', function() {
})
}));
vectorSource.addFeature(feature);
}
it('tests the canvas renderer without rotation', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/text-canvas.png', IMAGE_TOLERANCE, done);
});
it('tests the canvas renderer with rotation', function(done) {
map = createMap('canvas');
createMap('canvas');
createFeatures();
map.getView().setRotation(Math.PI / 7);
expectResemble(map, 'rendering/ol/style/expected/text-rotated-canvas.png', IMAGE_TOLERANCE, done);
});
where('WebGL').it('tests the webgl renderer without rotation', function(done) {
map = createMap('webgl');
createMap('webgl');
createFeatures();
expectResemble(map, 'rendering/ol/style/expected/text-webgl.png', 1.8, done);
});
where('WebGL').it('tests the webgl renderer with rotation', function(done) {
map = createMap('webgl');
createMap('webgl');
createFeatures();
map.getView().setRotation(Math.PI / 7);
expectResemble(map, 'rendering/ol/style/expected/text-rotated-webgl.png', 1.8, done);

View File

@@ -7,22 +7,13 @@ goog.require('ol.interaction.Extent');
goog.require('ol.pointer.PointerEvent');
describe('ol.interaction.Extent', function() {
var target, map, interaction;
var map, interaction;
var width = 360;
var height = 180;
beforeEach(function(done) {
target = document.createElement('div');
var style = target.style;
style.position = 'absolute';
style.left = '-1000px';
style.top = '-1000px';
style.width = width + 'px';
style.height = height + 'px';
document.body.appendChild(target);
beforeEach(function() {
var target = createMapDiv(width, height);
map = new ol.Map({
target: target,
@@ -33,18 +24,18 @@ describe('ol.interaction.Extent', function() {
resolution: 1
})
});
map.once('postrender', function() {
done();
});
map.renderSync();
interaction = new ol.interaction.Extent();
map.addInteraction(interaction);
});
afterEach(function() {
map.dispose();
document.body.removeChild(target);
if (map) {
disposeMap(map);
}
map = null;
interaction = null;
});
/**
@@ -92,6 +83,7 @@ describe('ol.interaction.Extent', function() {
expect(interaction.snapToVertex_([230, 40], map)).to.eql([50, 50]);
expect(interaction.snapToVertex_([231, 41], map)).to.eql([50, 50]);
});
it('snap to edge works', function() {
interaction.setExtent([-50, -50, 50, 50]);

View File

@@ -22,7 +22,7 @@ var blue = 'data:image/gif;base64,R0lGODlhAQABAPAAAAAA/////yH5BAAAAAAALAAAAA' +
where('Uint8ClampedArray').describe('ol.source.Raster', function() {
var target, map, redSource, greenSource, blueSource, raster;
var map, target, redSource, greenSource, blueSource, raster;
beforeEach(function() {
target = document.createElement('div');
@@ -79,13 +79,14 @@ where('Uint8ClampedArray').describe('ol.source.Raster', function() {
});
afterEach(function() {
map.setTarget(null);
map.dispose();
if (map) {
disposeMap(map);
}
map = null;
raster.dispose();
greenSource.dispose();
redSource.dispose();
blueSource.dispose();
document.body.removeChild(target);
});
describe('constructor', function() {
@@ -304,9 +305,10 @@ where('Uint8ClampedArray').describe('ol.source.Raster', function() {
});
describe('tile loading', function() {
beforeEach(function() {
map.setTarget(null);
map.dispose();
var map2;
afterEach(function() {
disposeMap(map2);
map2 = null;
});
it('is initiated on the underlying source', function(done) {
@@ -323,7 +325,7 @@ where('Uint8ClampedArray').describe('ol.source.Raster', function() {
}
});
map = new ol.Map({
map2 = new ol.Map({
target: target,
view: new ol.View({
center: [0, 0],
@@ -340,7 +342,7 @@ where('Uint8ClampedArray').describe('ol.source.Raster', function() {
expect(tileCache.getCount()).to.equal(0);
map.once('moveend', function() {
map2.once('moveend', function() {
expect(tileCache.getCount()).to.equal(1);
var state = tileCache.peekLast().getState();
expect(state === ol.TileState.LOADED || state === ol.TileState.LOADED).to.be(true);