1
- import mapboxglMock from '../../tool/mock_mapboxgl_map' ;
2
1
import mapboxgl from 'mapbox-gl' ;
2
+ import mapboxglMock from '../../tool/mock_mapboxgl_map' ;
3
3
import { FetchRequest } from '../../../src/common/util/FetchRequest' ;
4
4
import cipher from 'node-forge/lib/cipher' ;
5
5
import { MapExtend } from '../../../src/mapboxgl/core/MapExtend' ;
@@ -223,7 +223,7 @@ describe('MapExtend mapboxgl', () => {
223
223
try {
224
224
const source = {
225
225
tiles : [
226
- 'http://172.16.13.234 :8090/iserver/services/map-China107/rest/maps/A/tileFeature.mvt?returnAttributes=true&width=512&height=512&z={z}&x={x}&y={y}'
226
+ 'http://fake :8090/iserver/services/map-China107/rest/maps/A/tileFeature.mvt?returnAttributes=true&width=512&height=512&z={z}&x={x}&y={y}'
227
227
] ,
228
228
bounds : [ - 180 , - 90 , 180 , 90 ] ,
229
229
type : 'vector'
@@ -240,16 +240,21 @@ describe('MapExtend mapboxgl', () => {
240
240
expect ( error ) . toEqual ( new Error ( 'mapbox-gl cannot support plane coordinate system.' ) ) ;
241
241
}
242
242
} ) ;
243
-
243
+
244
244
it ( 'overlayLayersManager' , ( done ) => {
245
- const map1 = new mapboxgl . Map ( {
246
- container : 'map' ,
245
+ const originRemoveLayer = mapboxgl . Map . prototype . removeLayer ;
246
+ spyOn ( mapboxgl , 'Map' ) . and . callFake ( mapboxglMock ) ;
247
+ const testDiv2 = window . document . createElement ( 'div' ) ;
248
+ testDiv2 . setAttribute ( 'id' , 'map2' ) ;
249
+ window . document . body . appendChild ( testDiv2 ) ;
250
+ const map2 = new mapboxgl . Map ( {
251
+ container : 'map2' ,
247
252
style : {
248
253
version : 8 ,
249
254
sources : {
250
255
'raster-tiles' : {
251
256
type : 'raster' ,
252
- tiles : [ 'https://maptiles.supermapol.com/iserver/services/map_China/rest/maps/China_Dark ' ] ,
257
+ tiles : [ 'base/resources/img/baiduTileTest.png ' ] ,
253
258
tileSize : 256
254
259
}
255
260
} ,
@@ -266,22 +271,15 @@ describe('MapExtend mapboxgl', () => {
266
271
center : [ 116.4 , 39.79 ] ,
267
272
zoom : 3
268
273
} ) ;
269
- expect ( map1 . overlayLayersManager ) . toEqual ( { } ) ;
270
- map1 . overlayLayersManager = { l7_layer_1 : { id : 'l7_layer_1' , type : 'custom' } , heatmap_1 : { id : 'heatmap_1' , removeFromMap : function ( ) { } } } ;
271
- spyOn ( map1 . overlayLayersManager . heatmap_1 , 'removeFromMap' ) . and . callThrough ( ) ;
272
- spyOn ( map1 . style , 'removeLayer' ) . and . callThrough ( ) ;
273
- const removeFromMap = map1 . overlayLayersManager . heatmap_1 . removeFromMap ;
274
- const testDiv2 = window . document . createElement ( 'div' ) ;
275
- testDiv2 . setAttribute ( 'id' , 'map2' ) ;
276
- window . document . body . appendChild ( testDiv2 ) ;
277
- const map2 = new mapboxgl . Map ( {
278
- container : 'map2' ,
274
+ expect ( map2 . overlayLayersManager ) . toEqual ( { } ) ;
275
+ const map1 = new mapboxgl . Map ( {
276
+ container : 'map' ,
279
277
style : {
280
278
version : 8 ,
281
279
sources : {
282
280
'raster-tiles' : {
283
281
type : 'raster' ,
284
- tiles : [ 'https://maptiles.supermapol.com/iserver/services/map_China/rest/maps/China_Dark ' ] ,
282
+ tiles : [ 'base/resources/img/baiduTileTest.png ' ] ,
285
283
tileSize : 256
286
284
}
287
285
} ,
@@ -298,16 +296,26 @@ describe('MapExtend mapboxgl', () => {
298
296
center : [ 116.4 , 39.79 ] ,
299
297
zoom : 3
300
298
} ) ;
301
- expect ( map2 . overlayLayersManager ) . toEqual ( { } ) ;
299
+
302
300
map1 . on ( 'load' , ( ) => {
303
- map1 . removeLayer ( 'heatmap_1' )
301
+ map1 . removeLayer = originRemoveLayer ;
302
+ expect ( map1 . overlayLayersManager ) . toEqual ( { } ) ;
303
+ map1 . style . removeLayer = ( ) => { } ;
304
+ map1 . overlayLayersManager = {
305
+ l7_layer_1 : { id : 'l7_layer_1' , type : 'custom' } ,
306
+ heatmap_1 : { id : 'heatmap_1' , removeFromMap : function ( ) { } }
307
+ } ;
308
+ spyOn ( map1 . overlayLayersManager . heatmap_1 , 'removeFromMap' ) . and . callThrough ( ) ;
309
+ spyOn ( map1 . style , 'removeLayer' ) . and . callThrough ( ) ;
310
+ const removeFromMap = map1 . overlayLayersManager . heatmap_1 . removeFromMap ;
311
+ map1 . removeLayer ( 'heatmap_1' ) ;
304
312
expect ( removeFromMap . calls . count ( ) ) . toEqual ( 1 ) ;
305
313
map1 . removeLayer ( 'l7_layer_1' ) ;
306
314
expect ( map1 . style . removeLayer . calls . count ( ) ) . toEqual ( 1 ) ;
307
315
map1 . remove ( ) ;
308
316
map2 . remove ( ) ;
309
317
document . body . removeChild ( testDiv2 ) ;
310
318
done ( ) ;
311
- } )
319
+ } ) ;
312
320
} ) ;
313
321
} ) ;
0 commit comments