@@ -19,6 +19,7 @@ import {
1919import Overlay from 'ol/Overlay' ;
2020import * as olControl from 'ol/control' ;
2121import Feature from 'ol/Feature' ;
22+ import * as olProj from 'ol/proj' ;
2223
2324describe ( 'openlayers_WebMap' , ( ) => {
2425 var originalTimeout , testDiv , webMap ;
@@ -1032,4 +1033,53 @@ describe('openlayers_WebMap', () => {
10321033 done ( ) ;
10331034 } , 1000 )
10341035 } )
1036+
1037+ it ( 'getScales EPSG:1' , ( done ) => {
1038+ //第二次请求wmts参数值太大
1039+ spyOn ( FetchRequest , 'get' ) . and . callFake ( ( url ) => {
1040+ if ( url . indexOf ( 'map.json' ) > - 1 ) {
1041+ var mapJson = datavizWebMap_WMTS ;
1042+ return Promise . resolve ( new Response ( mapJson ) ) ;
1043+ }
1044+ return Promise . resolve ( ) ;
1045+ } ) ;
1046+ let proj = new olProj . Projection ( {
1047+ units : '' ,
1048+ code : 'EPSG:1'
1049+ } ) ;
1050+ olProj . addProjection ( proj ) ;
1051+ var datavizWebmap = new WebMap ( id , { } ) ;
1052+ var layerInfo = JSON . parse ( wmtsInfo ) ;
1053+ datavizWebmap . baseProjection = 'EPSG:1' ;
1054+ datavizWebmap . getScales ( { ...layerInfo , projection :'EPSG:1' } ) ;
1055+
1056+ setTimeout ( ( ) => {
1057+ expect ( datavizWebmap . scales [ 0 ] ) . toBe ( '1:65789415978977.37' ) ;
1058+ done ( ) ;
1059+ } , 1000 ) ;
1060+ } ) ;
1061+ it ( 'getScales EPSG:3857' , ( done ) => {
1062+ //第二次请求wmts参数值太大
1063+ spyOn ( FetchRequest , 'get' ) . and . callFake ( ( url ) => {
1064+ if ( url . indexOf ( 'map.json' ) > - 1 ) {
1065+ var mapJson = datavizWebMap_WMTS ;
1066+ return Promise . resolve ( new Response ( mapJson ) ) ;
1067+ }
1068+ return Promise . resolve ( ) ;
1069+ } ) ;
1070+ let proj = new olProj . Projection ( {
1071+ units : '' ,
1072+ code : 'EPSG:1'
1073+ } ) ;
1074+ olProj . addProjection ( proj ) ;
1075+ var datavizWebmap = new WebMap ( id , { } ) ;
1076+ var layerInfo = JSON . parse ( wmtsInfo ) ;
1077+ datavizWebmap . baseProjection = 'EPSG:3857' ;
1078+ datavizWebmap . getScales ( { ...layerInfo , projection :'EPSG:1' } ) ;
1079+
1080+ setTimeout ( ( ) => {
1081+ expect ( datavizWebmap . scales [ 0 ] ) . toBe ( '1:591658710.9091312' ) ;
1082+ done ( ) ;
1083+ } , 1000 ) ;
1084+ } ) ;
10351085} ) ;
0 commit comments