Add message to assertions.

This commit is contained in:
Marc Jansen
2015-03-30 22:50:15 +02:00
parent 2c40d74a15
commit fb9ba22c30
45 changed files with 394 additions and 221 deletions

View File

@@ -156,7 +156,8 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
var image;
var imageLayer = this.getLayer();
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image);
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image,
'layer is an instance of ol.layer.Image');
var imageSource = imageLayer.getSource();
var hints = frameState.viewHints;
@@ -172,7 +173,8 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
var projection = viewState.projection;
var sourceProjection = imageSource.getProjection();
if (!goog.isNull(sourceProjection)) {
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection),
'projection and sourceProjection are equivalent');
projection = sourceProjection;
}
image = imageSource.getImage(

View File

@@ -50,7 +50,8 @@ ol.renderer.canvas.Layer.prototype.composeFrame =
var extent = layerState.extent;
var clipped = goog.isDef(extent);
if (clipped) {
goog.asserts.assert(goog.isDef(extent));
goog.asserts.assert(goog.isDef(extent),
'layerState extent is defined');
var pixelRatio = frameState.pixelRatio;
var topLeft = ol.extent.getTopLeft(extent);
var topRight = ol.extent.getTopRight(extent);

View File

@@ -83,7 +83,7 @@ ol.renderer.canvas.Map.prototype.createLayerRenderer = function(layer) {
} else if (ol.ENABLE_VECTOR && layer instanceof ol.layer.Vector) {
return new ol.renderer.canvas.VectorLayer(layer);
} else {
goog.asserts.fail();
goog.asserts.fail('unexpected layer configuration');
return null;
}
};
@@ -138,7 +138,8 @@ ol.renderer.canvas.Map.prototype.dispatchComposeEvent_ =
*/
ol.renderer.canvas.Map.prototype.getCanvasLayerRenderer = function(layer) {
var layerRenderer = this.getLayerRenderer(layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.canvas.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.canvas.Layer,
'layerRenderer is an instance of ol.renderer.canvas.Layer');
return /** @type {ol.renderer.canvas.Layer} */ (layerRenderer);
};
@@ -185,7 +186,8 @@ ol.renderer.canvas.Map.prototype.renderFrame = function(frameState) {
layerState = layerStatesArray[i];
layer = layerState.layer;
layerRenderer = this.getLayerRenderer(layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.canvas.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.canvas.Layer,
'layerRenderer is an instance of ol.renderer.canvas.Layer');
if (!ol.layer.Layer.visibleAtResolution(layerState, viewResolution) ||
layerState.sourceState != ol.source.State.READY) {
continue;

View File

@@ -182,7 +182,8 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
var projection = viewState.projection;
var tileLayer = this.getLayer();
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile);
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile,
'layer is an instance of ol.layer.Tile');
var tileSource = tileLayer.getSource();
var tileGrid = tileSource.getTileGridForProjection(projection);
var tileGutter = tileSource.getGutter();
@@ -218,9 +219,12 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
var canvas, context;
if (goog.isNull(this.canvas_)) {
goog.asserts.assert(goog.isNull(this.canvasSize_));
goog.asserts.assert(goog.isNull(this.context_));
goog.asserts.assert(goog.isNull(this.renderedCanvasTileRange_));
goog.asserts.assert(goog.isNull(this.canvasSize_),
'canvasSize is null (because canvas is null)');
goog.asserts.assert(goog.isNull(this.context_),
'context is null (because canvas is null)');
goog.asserts.assert(goog.isNull(this.renderedCanvasTileRange_),
'renderedCanvasTileRange is null (because canvas is null)');
context = ol.dom.createCanvasContext2D(canvasWidth, canvasHeight);
this.canvas_ = context.canvas;
this.canvasSize_ = [canvasWidth, canvasHeight];
@@ -228,8 +232,10 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
this.canvasTooBig_ =
!ol.renderer.canvas.Layer.testCanvasSize(this.canvasSize_);
} else {
goog.asserts.assert(!goog.isNull(this.canvasSize_));
goog.asserts.assert(!goog.isNull(this.context_));
goog.asserts.assert(!goog.isNull(this.canvasSize_),
'non-null canvasSize (because canvas is not null)');
goog.asserts.assert(!goog.isNull(this.context_),
'non-null context (because canvas is not null)');
canvas = this.canvas_;
context = this.context_;
if (this.canvasSize_[0] < canvasWidth ||
@@ -277,7 +283,8 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
canvasTileRangeWidth = canvasTileRange.getWidth();
}
goog.asserts.assert(canvasTileRange.containsTileRange(tileRange));
goog.asserts.assert(canvasTileRange.containsTileRange(tileRange),
'tileRange is contained in canvasTileRange');
/**
* @type {Object.<number, Object.<string, ol.Tile>>}

View File

@@ -132,7 +132,7 @@ ol.renderer.canvas.VectorLayer.prototype.forEachFeatureAtCoordinate =
* @return {?} Callback result.
*/
function(feature) {
goog.asserts.assert(goog.isDef(feature));
goog.asserts.assert(goog.isDef(feature), 'received a feature');
var key = goog.getUid(feature).toString();
if (!(key in features)) {
features[key] = true;
@@ -161,7 +161,8 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
function(frameState, layerState) {
var vectorLayer = /** @type {ol.layer.Vector} */ (this.getLayer());
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector);
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector,
'layer is an instance of ol.layer.Vector');
var vectorSource = vectorLayer.getSource();
this.updateAttributions(

View File

@@ -87,7 +87,8 @@ ol.renderer.dom.ImageLayer.prototype.prepareFrame =
var image = this.image_;
var imageLayer = this.getLayer();
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image);
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image,
'layer is an instance of ol.layer.Image');
var imageSource = imageLayer.getSource();
var hints = frameState.viewHints;
@@ -103,7 +104,8 @@ ol.renderer.dom.ImageLayer.prototype.prepareFrame =
var projection = viewState.projection;
var sourceProjection = imageSource.getProjection();
if (!goog.isNull(sourceProjection)) {
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection),
'projection and sourceProjection are equivalent');
projection = sourceProjection;
}
var image_ = imageSource.getImage(renderedExtent, viewResolution,

View File

@@ -119,7 +119,7 @@ ol.renderer.dom.Map.prototype.createLayerRenderer = function(layer) {
ol.ENABLE_VECTOR && layer instanceof ol.layer.Vector) {
layerRenderer = new ol.renderer.dom.VectorLayer(layer);
} else {
goog.asserts.fail();
goog.asserts.fail('unexpected layer configuration');
return null;
}
return layerRenderer;
@@ -238,7 +238,8 @@ ol.renderer.dom.Map.prototype.renderFrame = function(frameState) {
layer = layerState.layer;
layerRenderer = /** @type {ol.renderer.dom.Layer} */ (
this.getLayerRenderer(layer));
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.dom.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.dom.Layer,
'renderer is an instance of ol.renderer.dom.Layer');
addChild.call(this, layerRenderer.getTarget(), i);
if (layerState.sourceState == ol.source.State.READY) {
if (layerRenderer.prepareFrame(frameState, layerState)) {
@@ -254,7 +255,8 @@ ol.renderer.dom.Map.prototype.renderFrame = function(frameState) {
for (layerKey in this.getLayerRenderers()) {
if (!(layerKey in layerStates)) {
layerRenderer = this.getLayerRendererByKey(layerKey);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.dom.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.dom.Layer,
'renderer is an instance of ol.renderer.dom.Layer');
goog.dom.removeNode(layerRenderer.getTarget());
}
}

View File

@@ -101,7 +101,8 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame =
var projection = viewState.projection;
var tileLayer = this.getLayer();
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile);
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile,
'layer is an instance of ol.layer.Tile');
var tileSource = tileLayer.getSource();
var tileGrid = tileSource.getTileGridForProjection(projection);
var tileGutter = tileSource.getGutter();
@@ -353,7 +354,8 @@ ol.renderer.dom.TileLayerZ_.prototype.addTile = function(tile, tileGutter) {
var tileCoordZ = tileCoord[0];
var tileCoordX = tileCoord[1];
var tileCoordY = tileCoord[2];
goog.asserts.assert(tileCoordZ == this.tileCoordOrigin_[0]);
goog.asserts.assert(tileCoordZ == this.tileCoordOrigin_[0],
'tileCoordZ matches z of tileCoordOrigin');
var tileCoordKey = ol.tilecoord.toString(tileCoord);
if (tileCoordKey in this.tiles_) {
return;

View File

@@ -99,7 +99,8 @@ ol.renderer.dom.VectorLayer.prototype.composeFrame =
function(frameState, layerState) {
var vectorLayer = /** @type {ol.layer.Vector} */ (this.getLayer());
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector);
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector,
'layer is an instance of ol.layer.Vector');
var viewState = frameState.viewState;
var viewCenter = viewState.center;
@@ -192,7 +193,7 @@ ol.renderer.dom.VectorLayer.prototype.forEachFeatureAtCoordinate =
* @return {?} Callback result.
*/
function(feature) {
goog.asserts.assert(goog.isDef(feature));
goog.asserts.assert(goog.isDef(feature), 'received a feature');
var key = goog.getUid(feature).toString();
if (!(key in features)) {
features[key] = true;
@@ -221,7 +222,8 @@ ol.renderer.dom.VectorLayer.prototype.prepareFrame =
function(frameState, layerState) {
var vectorLayer = /** @type {ol.layer.Vector} */ (this.getLayer());
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector);
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector,
'layer is an instance of ol.layer.Vector');
var vectorSource = vectorLayer.getSource();
this.updateAttributions(

View File

@@ -149,14 +149,16 @@ ol.renderer.Layer.prototype.loadImage = function(image) {
// the image is either "idle" or "loading", register the change
// listener (a noop if the listener was already registered)
goog.asserts.assert(imageState == ol.ImageState.IDLE ||
imageState == ol.ImageState.LOADING);
imageState == ol.ImageState.LOADING,
'imageState is "idle" or "loading"');
goog.events.listen(image, goog.events.EventType.CHANGE,
this.handleImageChange_, false, this);
}
if (imageState == ol.ImageState.IDLE) {
image.load();
imageState = image.getState();
goog.asserts.assert(imageState == ol.ImageState.LOADING);
goog.asserts.assert(imageState == ol.ImageState.LOADING,
'imageState is "loading"');
}
return imageState == ol.ImageState.LOADED;
};
@@ -225,8 +227,8 @@ ol.renderer.Layer.prototype.updateLogos = function(frameState, source) {
if (goog.isString(logo)) {
frameState.logos[logo] = '';
} else if (goog.isObject(logo)) {
goog.asserts.assertString(logo.href);
goog.asserts.assertString(logo.src);
goog.asserts.assertString(logo.href, 'logo.href is a string');
goog.asserts.assertString(logo.src, 'logo.src is a string');
frameState.logos[logo.src] = logo.href;
}
}

View File

@@ -75,7 +75,8 @@ goog.inherits(ol.renderer.Map, goog.Disposable);
ol.renderer.Map.prototype.calculateMatrices2D = function(frameState) {
var viewState = frameState.viewState;
var coordinateToPixelMatrix = frameState.coordinateToPixelMatrix;
goog.asserts.assert(!goog.isNull(coordinateToPixelMatrix));
goog.asserts.assert(!goog.isNull(coordinateToPixelMatrix),
'frameState has non-null coordinateToPixelMatrix');
ol.vec.Mat4.makeTransform2D(coordinateToPixelMatrix,
frameState.size[0] / 2, frameState.size[1] / 2,
1 / viewState.resolution, -1 / viewState.resolution,
@@ -83,7 +84,7 @@ ol.renderer.Map.prototype.calculateMatrices2D = function(frameState) {
-viewState.center[0], -viewState.center[1]);
var inverted = goog.vec.Mat4.invert(
coordinateToPixelMatrix, frameState.pixelToCoordinateMatrix);
goog.asserts.assert(inverted);
goog.asserts.assert(inverted, 'matrix could be inverted');
};
@@ -145,7 +146,7 @@ ol.renderer.Map.prototype.forEachFeatureAtCoordinate =
* @return {?} Callback result.
*/
function(feature) {
goog.asserts.assert(goog.isDef(feature));
goog.asserts.assert(goog.isDef(feature), 'received a feature');
var key = goog.getUid(feature).toString();
if (!(key in features)) {
features[key] = true;
@@ -277,7 +278,8 @@ ol.renderer.Map.prototype.getLayerRenderer = function(layer) {
* @return {ol.renderer.Layer} Layer renderer.
*/
ol.renderer.Map.prototype.getLayerRendererByKey = function(layerKey) {
goog.asserts.assert(layerKey in this.layerRenderers_);
goog.asserts.assert(layerKey in this.layerRenderers_,
'given layerKey (%s) exists in layerRenderers', layerKey);
return this.layerRenderers_[layerKey];
};
@@ -320,11 +322,13 @@ ol.renderer.Map.prototype.handleLayerRendererChange_ = function() {
* @private
*/
ol.renderer.Map.prototype.removeLayerRendererByKey_ = function(layerKey) {
goog.asserts.assert(layerKey in this.layerRenderers_);
goog.asserts.assert(layerKey in this.layerRenderers_,
'given layerKey (%s) exists in layerRenderers', layerKey);
var layerRenderer = this.layerRenderers_[layerKey];
delete this.layerRenderers_[layerKey];
goog.asserts.assert(layerKey in this.layerRendererListeners_);
goog.asserts.assert(layerKey in this.layerRendererListeners_,
'given layerKey (%s) exists in layerRendererListeners', layerKey);
goog.events.unlistenByKey(this.layerRendererListeners_[layerKey]);
delete this.layerRendererListeners_[layerKey];

View File

@@ -110,7 +110,8 @@ ol.renderer.webgl.ImageLayer.prototype.prepareFrame =
var image = this.image_;
var texture = this.texture;
var imageLayer = this.getLayer();
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image);
goog.asserts.assertInstanceof(imageLayer, ol.layer.Image,
'layer is an instance of ol.layer.Image');
var imageSource = imageLayer.getSource();
var hints = frameState.viewHints;
@@ -125,7 +126,8 @@ ol.renderer.webgl.ImageLayer.prototype.prepareFrame =
var projection = viewState.projection;
var sourceProjection = imageSource.getProjection();
if (!goog.isNull(sourceProjection)) {
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection),
'projection and sourceProjection are equivalent');
projection = sourceProjection;
}
var image_ = imageSource.getImage(renderedExtent, viewResolution,
@@ -153,7 +155,7 @@ ol.renderer.webgl.ImageLayer.prototype.prepareFrame =
}
if (!goog.isNull(image)) {
goog.asserts.assert(!goog.isNull(texture));
goog.asserts.assert(!goog.isNull(texture), 'texture is not null');
var canvas = this.mapRenderer.getContext().getCanvas();

View File

@@ -96,7 +96,7 @@ ol.renderer.webgl.Map = function(container, map) {
preserveDrawingBuffer: false,
stencil: true
});
goog.asserts.assert(!goog.isNull(this.gl_));
goog.asserts.assert(!goog.isNull(this.gl_), 'got a WebGLRenderingContext');
/**
* @private
@@ -190,7 +190,8 @@ ol.renderer.webgl.Map.prototype.bindTileTexture =
var tileKey = tile.getKey();
if (this.textureCache_.containsKey(tileKey)) {
var textureCacheEntry = this.textureCache_.get(tileKey);
goog.asserts.assert(!goog.isNull(textureCacheEntry));
goog.asserts.assert(!goog.isNull(textureCacheEntry),
'a texture cache entry exists for key %s', tileKey);
gl.bindTexture(goog.webgl.TEXTURE_2D, textureCacheEntry.texture);
if (textureCacheEntry.magFilter != magFilter) {
gl.texParameteri(
@@ -253,7 +254,7 @@ ol.renderer.webgl.Map.prototype.createLayerRenderer = function(layer) {
} else if (ol.ENABLE_VECTOR && layer instanceof ol.layer.Vector) {
return new ol.renderer.webgl.VectorLayer(this, layer);
} else {
goog.asserts.fail();
goog.asserts.fail('unexpected layer configuration');
return null;
}
};
@@ -397,7 +398,8 @@ ol.renderer.webgl.Map.prototype.handleWebGLContextLost = function(event) {
* @param {Object.<string, ol.renderer.Layer>} object Object.
*/
function(layerRenderer, key, object) {
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer,
'renderer is an instance of ol.renderer.webgl.Layer');
var webGLLayerRenderer = /** @type {ol.renderer.webgl.Layer} */
(layerRenderer);
webGLLayerRenderer.handleWebGLContextLost();
@@ -482,7 +484,8 @@ ol.renderer.webgl.Map.prototype.renderFrame = function(frameState) {
if (ol.layer.Layer.visibleAtResolution(layerState, viewResolution) &&
layerState.sourceState == ol.source.State.READY) {
layerRenderer = this.getLayerRenderer(layerState.layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer,
'renderer is an instance of ol.renderer.webgl.Layer');
if (layerRenderer.prepareFrame(frameState, layerState, context)) {
layerStatesToDraw.push(layerState);
}
@@ -508,7 +511,8 @@ ol.renderer.webgl.Map.prototype.renderFrame = function(frameState) {
for (i = 0, ii = layerStatesToDraw.length; i < ii; ++i) {
layerState = layerStatesToDraw[i];
layerRenderer = this.getLayerRenderer(layerState.layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer);
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.webgl.Layer,
'renderer is an instance of ol.renderer.webgl.Layer');
layerRenderer.composeFrame(frameState, layerState, context);
}
@@ -569,7 +573,7 @@ ol.renderer.webgl.Map.prototype.forEachFeatureAtCoordinate =
* @return {?} Callback result.
*/
function(feature) {
goog.asserts.assert(goog.isDef(feature));
goog.asserts.assert(goog.isDef(feature), 'received a feature');
var key = goog.getUid(feature).toString();
if (!(key in features)) {
features[key] = true;

View File

@@ -151,7 +151,8 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
var projection = viewState.projection;
var tileLayer = this.getLayer();
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile);
goog.asserts.assertInstanceof(tileLayer, ol.layer.Tile,
'layer is an instance of ol.layer.Tile');
var tileSource = tileLayer.getSource();
var tileGrid = tileSource.getTileGridForProjection(projection);
var z = tileGrid.getZForResolution(viewState.resolution);

View File

@@ -127,7 +127,7 @@ ol.renderer.webgl.VectorLayer.prototype.forEachFeatureAtCoordinate =
* @return {?} Callback result.
*/
function(feature) {
goog.asserts.assert(goog.isDef(feature));
goog.asserts.assert(goog.isDef(feature), 'received a feature');
var key = goog.getUid(feature).toString();
if (!(key in features)) {
features[key] = true;
@@ -194,7 +194,8 @@ ol.renderer.webgl.VectorLayer.prototype.prepareFrame =
function(frameState, layerState, context) {
var vectorLayer = /** @type {ol.layer.Vector} */ (this.getLayer());
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector);
goog.asserts.assertInstanceof(vectorLayer, ol.layer.Vector,
'layer is an instance of ol.layer.Vector');
var vectorSource = vectorLayer.getSource();
this.updateAttributions(