New events: loaderror for Tile, tileerror for Layer.Grid.
This commit is contained in:
+13
-1
@@ -506,7 +506,7 @@
|
||||
}
|
||||
|
||||
function test_Layer_Grid_addTileMonitoringHooks(t) {
|
||||
t.plan(15);
|
||||
t.plan(17);
|
||||
|
||||
layer = new OpenLayers.Layer.Grid();
|
||||
layer.events = {
|
||||
@@ -519,6 +519,13 @@
|
||||
events: {
|
||||
register: function(name, obj, func) {
|
||||
g_registered[name] = [obj, func];
|
||||
},
|
||||
on: function(obj) {
|
||||
for (var o in obj) {
|
||||
if (obj.hasOwnProperty(o)) {
|
||||
tile.events.register(o, obj.scope, obj[o]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -551,6 +558,11 @@
|
||||
entry = g_registered["loadend"];
|
||||
t.ok( entry && entry[0] == layer && entry[1] == tile.onLoadEnd, "loadend correctly registered");
|
||||
|
||||
g_events = [];
|
||||
tile.onLoadError.apply(layer);
|
||||
t.eq(g_events[0][0], "tileerror", "tileerror triggered");
|
||||
t.ok(g_events[0][1].tile === tile, "tile passed as tile property to event object");
|
||||
|
||||
layer.numLoadingTiles = 2;
|
||||
g_events = [];
|
||||
tile.onLoadEnd.apply(layer);
|
||||
|
||||
+17
-2
@@ -375,7 +375,7 @@
|
||||
// test for https://github.com/openlayers/openlayers/pull/36
|
||||
// (more an integration test than a unit test)
|
||||
function test_olImageLoadError(t) {
|
||||
t.plan(2);
|
||||
t.plan(6);
|
||||
|
||||
var map = new OpenLayers.Map('map');
|
||||
var layer = new OpenLayers.Layer.WMS("invalid", "", {layers: 'basic'});
|
||||
@@ -386,10 +386,25 @@
|
||||
var bounds = new OpenLayers.Bounds(1, 2, 3, 4);
|
||||
|
||||
var tile = new OpenLayers.Tile.Image(layer, position, bounds, null, size);
|
||||
var log = [];
|
||||
tile.events.register("loaderror", this, function(e) {
|
||||
log.push([
|
||||
e.object.imgDiv.style.visibility,
|
||||
OpenLayers.Element.hasClass(e.object.imgDiv, 'olImageLoadError')
|
||||
]);
|
||||
});
|
||||
tile.events.register("loadend", this, function(e) {
|
||||
log.push(e);
|
||||
})
|
||||
tile.draw();
|
||||
|
||||
t.delay_call(0.1, function() {
|
||||
|
||||
|
||||
t.eq(log.length, 2, "loaderror and loadend events triggered");
|
||||
t.eq(log[0][0], "hidden", "tile still hidden when loaderror is triggered");
|
||||
t.eq(log[0][1], true, "tile has olImageLoadError class already when loaderror is triggered");
|
||||
t.ok(log[1].object === tile, "loadend event triggered after loaderror");
|
||||
|
||||
// check initial state
|
||||
t.ok(OpenLayers.Element.hasClass(tile.imgDiv, 'olImageLoadError'),
|
||||
'tile image has the olImageLoadError class (init state)');
|
||||
|
||||
Reference in New Issue
Block a user