Ticket #964: requestAbort.2.patch
| File requestAbort.2.patch, 3.2 kB (added by euzuro, 10 months ago) |
|---|
-
tests/Tile/test_WFS.html
old new 27 27 } 28 28 29 29 function test_Tile_WFS_requestSuccess(t) { 30 t.plan(1); 30 t.plan(2); 31 32 var tile = { 33 'request': {} 34 }; 35 36 OpenLayers.Tile.WFS.prototype.requestSuccess.apply(tile, []); 37 38 t.ok(tile.request == null, "request property on tile set to null"); 39 31 40 var layer = {}; // bogus layer 32 41 var position = new OpenLayers.Pixel(10,20); 33 42 var bounds = new OpenLayers.Bounds(1,2,3,4); … … 41 50 42 51 } 43 52 53 function test_Tile_WFS_loadFeaturesForRegion(t) { 54 t.plan(9); 55 56 var tile = { 57 'url': {} 58 }; 59 60 var g_Success = {}; 61 62 var tLoadURL = OpenLayers.loadURL; 63 OpenLayers.loadURL = function(url, params, caller, onComplete) { 64 t.ok(url == tile.url, "tile's url correctly passed as 1st param to loadURL"); 65 t.ok(params == null, "null passed as 2nd param to loadURL"); 66 t.ok(caller == tile, "tile passed as 3rd param to loadURL"); 67 t.ok(onComplete == g_Success, "success param from loadFeaturesForRegion() passed as 4th param to loadURL"); 68 }; 69 70 //no running request -- 4 tests 71 OpenLayers.Tile.WFS.prototype.loadFeaturesForRegion.apply(tile, [g_Success]); 72 73 //running request (cancelled) -- 4 tests + 1 test (for request abort) 74 tile.request = { 75 'transport': { 76 'abort': function() { 77 t.ok(true, "request aborted"); 78 } 79 } 80 }; 81 OpenLayers.Tile.WFS.prototype.loadFeaturesForRegion.apply(tile, [g_Success]); 82 83 OpenLayers.loadURL = tLoadURL; 84 } 85 44 86 function test_Tile_WFS_destroy(t) { 45 t.plan( 8);87 t.plan(9); 46 88 47 89 var layer = {}; // bogus layer 48 90 var position = new OpenLayers.Pixel(10,20); … … 73 115 t.ok(tile.size == null, "tile.size set to null"); 74 116 t.ok(tile.position == null, "tile.position set to null"); 75 117 t.ok(_gAbort, "request transport is aborted"); 118 t.ok(tile.request == null, "tile.request set to null"); 76 119 77 120 t.ok(tile.events == null, "tile.events set to null"); 78 121 -
lib/OpenLayers/Tile/WFS.js
old new 67 67 this.url = null; 68 68 if(this.request) { 69 69 this.request.transport.abort(); 70 //this.request.destroy(); 71 this.request = null; 70 72 } 71 73 }, 72 74 … … 108 110 * failure - {function} 109 111 */ 110 112 loadFeaturesForRegion:function(success, failure) { 113 if(this.request) { 114 this.request.transport.abort(); 115 //this.request.destroy(); 116 } 111 117 this.request = OpenLayers.loadURL(this.url, null, this, success); 112 118 }, 113 119 … … 141 147 if (this.events) { 142 148 this.events.triggerEvent("loadend"); 143 149 } 150 151 //request produced with success, we can delete the request object. 152 //this.request.destroy(); 153 this.request = null; 144 154 }, 145 155 146 156 /**
