@@ -4,30 +4,27 @@ require('../../../src/common/util/FetchRequest');
44
55var setLayersFailedEventArgsSystem = null ;
66var setLayersEventArgsSystem = null ;
7- var id ;
8- var url = GlobeParameter . WorldURL ;
7+ var url = "http://supermap:8090/iserver/services/map-world/rest/maps/World" ;
98var options = {
109 eventListeners : {
1110 "processCompleted" : setLayersInfoCompleted ,
1211 'processFailed' : setLayersFailed
1312 } ,
1413 isTempLayers : false
1514} ;
16-
1715function initSetLayersInfoService ( ) {
1816 return new SuperMap . SetLayersInfoService ( url , options ) ;
1917}
20-
2118function setLayersInfoCompleted ( setLayersInfoArgs ) {
2219 setLayersEventArgsSystem = setLayersInfoArgs ;
2320}
24-
2521function setLayersFailed ( serviceFailedEventArgs ) {
2622 setLayersFailedEventArgsSystem = serviceFailedEventArgs ;
2723}
2824
2925describe ( 'SetLayersInfoService' , function ( ) {
3026 var originalTimeout ;
27+ var id ;
3128 var FetchRequest = SuperMap . FetchRequest ;
3229 beforeEach ( function ( ) {
3330 originalTimeout = jasmine . DEFAULT_TIMEOUT_INTERVAL ;
@@ -45,6 +42,15 @@ describe('SetLayersInfoService', function () {
4542 var setLayersInfoService = initSetLayersInfoService ( ) ;
4643 expect ( setLayersInfoService ) . not . toBeNull ( ) ;
4744 expect ( setLayersInfoService . url ) . toEqual ( url ) ;
45+ spyOn ( FetchRequest , 'commit' ) . and . callFake ( function ( method , testUrl , params , options ) {
46+ expect ( method ) . toBe ( 'POST' ) ;
47+ expect ( testUrl ) . toBe ( url + "/tempLayersSet.json?" ) ;
48+ var expectParams = "[{'completeLineSymbolDisplayed':false,'visible':true,'maxScale':0,'caption':null,'description':\"\",'symbolScalable':false,'subLayers':{'layers':[{'joinItems':null,'completeLineSymbolDisplayed':false,'ugcLayerType':\"VECTOR\",'displayFilter':null,'visible':true,'maxScale':1.350238165824801e-8,'fieldValuesDisplayFilter':{'fieldName':\"\",'values':[],'fieldValuesDisplayMode':\"DISABLE\"},'caption':\"continent_T@World\",'description':\"\",'symbolScalable':false,'subLayers':{},'type':\"UGC\",'datasetInfo':{'charset':null,'isReadOnly':false,'encodeType':null,'recordCount':0,'bounds':{'top':65.22103117946571,'left':-150.51082428252954,'bottom':-84.34257921576281,'leftBottom':{'x':-150.51082428252954,'y':-84.34257921576281},'right':154.27853258850513,'rightTop':{'x':154.27853258850513,'y':65.22103117946571}},'name':\"continent_T\",'isFileCache':false,'description':null,'prjCoordSys':null,'type':\"TEXT\",'dataSourceName':\"World\",'tableName':null},'queryable':false,'opaqueRate':100,'minVisibleGeometrySize':0.4,'name':\"continent_T@World\",'bounds':{'top':65.22103117946571,'left':-150.51082428252954,'bottom':-84.34257921576281,'leftBottom':{'x':-150.51082428252954,'y':-84.34257921576281},'right':154.27853258850513,'rightTop':{'x':154.27853258850513,'y':65.22103117946571}},'style':{'fillGradientOffsetRatioX':0,'markerSize':2.4,'fillForeColor':{'red':208,'green':255,'blue':240,'alpha':255},'fillGradientOffsetRatioY':0,'markerWidth':0,'markerAngle':0,'fillSymbolID':0,'lineColor':{'red':0,'green':128,'blue':0,'alpha':255},'markerSymbolID':0,'lineWidth':0.1,'markerHeight':0,'fillOpaqueRate':100,'fillBackOpaque':true,'fillBackColor':{'red':255,'green':255,'blue':255,'alpha':255},'fillGradientMode':\"NONE\",'lineSymbolID':0,'fillGradientAngle':0},'displayOrderBy':null,'symbolScale':0,'minScale':3.3755954145620026e-9,'representationField':\"\",'colorDictionary':null}]},'type':\"UGC\",'queryable':false,'opaqueRate':100,'minVisibleGeometrySize':0,'name':\"World Map\",'bounds':{'top':118.05408801141,'left':-180,'bottom':-90,'leftBottom':{'x':-180,'y':-90},'right':180,'rightTop':{'x':180,'y':118.05408801141}},'symbolScale':0,'minScale':0,'ugcLayerType':\"VECTOR\",'object':null}]" ;
49+ expect ( params ) . toBe ( expectParams ) ;
50+ expect ( options ) . not . toBeNull ( ) ;
51+ var escapedJson = "{\"postResultType\":\"CreateChild\",\"newResourceID\":\"9e195daff6974da6b366eb37c97e5ad9_a932e5360977478596dfa4cfd9936d53\",\"succeed\":true,\"newResourceLocation\":\"http://localhost:8090/iserver/services/map-world/rest/maps/World/tempLayersSet/9e195daff6974da6b366eb37c97e5ad9_a932e5360977478596dfa4cfd9936d53.json\"}" ;
52+ return Promise . resolve ( new Response ( escapedJson ) ) ;
53+ } ) ;
4854 setLayersInfoService . events . on ( { "processCompleted" : setLayersInfoCompleted } ) ;
4955 setLayersInfoService . processAsync ( layers ) ;
5056 setTimeout ( function ( ) {
@@ -58,7 +64,7 @@ describe('SetLayersInfoService', function () {
5864 id = serviceResult . newResourceID ;
5965 setLayersInfoService . destroy ( ) ;
6066 done ( ) ;
61- } , 5000 )
67+ } , 1000 )
6268 } ) ;
6369
6470 //修改临时图层的信息 isTempLayers=true
@@ -74,6 +80,16 @@ describe('SetLayersInfoService', function () {
7480 var layers = layersInfo ;
7581 layers . description = "test" ;
7682 setLayersInfoService . events . on ( { "processCompleted" : setLayersInfoCompleted } ) ;
83+ spyOn ( FetchRequest , 'commit' ) . and . callFake ( function ( method , testUrl , params , options ) {
84+ expect ( method ) . toBe ( 'PUT' ) ;
85+ expect ( testUrl ) . toBe ( url + "/tempLayersSet/" + id + ".json?" ) ;
86+ var expectParams = "[{'completeLineSymbolDisplayed':false,'visible':true,'maxScale':0,'caption':null,'description':\"test\",'symbolScalable':false,'subLayers':{'layers':[{'joinItems':null,'completeLineSymbolDisplayed':false,'ugcLayerType':\"VECTOR\",'displayFilter':null,'visible':true,'maxScale':1.350238165824801e-8,'fieldValuesDisplayFilter':{'fieldName':\"\",'values':[],'fieldValuesDisplayMode':\"DISABLE\"},'caption':\"continent_T@World\",'description':\"\",'symbolScalable':false,'subLayers':{},'type':\"UGC\",'datasetInfo':{'charset':null,'isReadOnly':false,'encodeType':null,'recordCount':0,'bounds':{'top':65.22103117946571,'left':-150.51082428252954,'bottom':-84.34257921576281,'leftBottom':{'x':-150.51082428252954,'y':-84.34257921576281},'right':154.27853258850513,'rightTop':{'x':154.27853258850513,'y':65.22103117946571}},'name':\"continent_T\",'isFileCache':false,'description':null,'prjCoordSys':null,'type':\"TEXT\",'dataSourceName':\"World\",'tableName':null},'queryable':false,'opaqueRate':100,'minVisibleGeometrySize':0.4,'name':\"continent_T@World\",'bounds':{'top':65.22103117946571,'left':-150.51082428252954,'bottom':-84.34257921576281,'leftBottom':{'x':-150.51082428252954,'y':-84.34257921576281},'right':154.27853258850513,'rightTop':{'x':154.27853258850513,'y':65.22103117946571}},'style':{'fillGradientOffsetRatioX':0,'markerSize':2.4,'fillForeColor':{'red':208,'green':255,'blue':240,'alpha':255},'fillGradientOffsetRatioY':0,'markerWidth':0,'markerAngle':0,'fillSymbolID':0,'lineColor':{'red':0,'green':128,'blue':0,'alpha':255},'markerSymbolID':0,'lineWidth':0.1,'markerHeight':0,'fillOpaqueRate':100,'fillBackOpaque':true,'fillBackColor':{'red':255,'green':255,'blue':255,'alpha':255},'fillGradientMode':\"NONE\",'lineSymbolID':0,'fillGradientAngle':0},'displayOrderBy':null,'symbolScale':0,'minScale':3.3755954145620026e-9,'representationField':\"\",'colorDictionary':null}]},'type':\"UGC\",'queryable':false,'opaqueRate':100,'minVisibleGeometrySize':0,'name':\"World Map\",'bounds':{'top':118.05408801141,'left':-180,'bottom':-90,'leftBottom':{'x':-180,'y':-90},'right':180,'rightTop':{'x':180,'y':118.05408801141}},'symbolScale':0,'minScale':0,'ugcLayerType':\"VECTOR\",'object':null}]" ;
87+ expect ( params ) . toBe ( expectParams ) ;
88+ expect ( options ) . not . toBeNull ( ) ;
89+ var escapedJson = "{\"succeed\":true}" ;
90+ return Promise . resolve ( new Response ( escapedJson ) ) ;
91+ } ) ;
92+ setLayersInfoService . events . on ( { "processCompleted" : setLayersInfoCompleted } ) ;
7793 setLayersInfoService . processAsync ( layers ) ;
7894 setTimeout ( function ( ) {
7995 expect ( setLayersEventArgsSystem . type ) . toEqual ( "processCompleted" ) ;
@@ -82,20 +98,22 @@ describe('SetLayersInfoService', function () {
8298 expect ( serviceResult . succeed ) . toBeTruthy ( ) ;
8399 setLayersInfoService . destroy ( ) ;
84100 done ( ) ;
85- } , 4000 )
101+ } , 1000 )
86102 } ) ;
87103
88104 //失败事件
89105 it ( 'failedEvent' , function ( done ) {
90- var wrongLayer = layerInfo ;
91- var testUrl = "http://supermap:8090/iserver/services/map-world/rest/maps/World" ;
92- var setLayersInfoService = new SuperMap . SetLayersInfoService ( testUrl , options ) ;
93- spyOn ( FetchRequest , 'commit' ) . and . callFake ( function ( ) {
106+ var wrongLayerInfo = layerInfo ;
107+ var setLayersInfoService = new SuperMap . SetLayersInfoService ( url , options ) ;
108+ spyOn ( FetchRequest , 'commit' ) . and . callFake ( function ( method , testUrl , params , options ) {
109+ expect ( method ) . toBe ( 'POST' ) ;
110+ expect ( testUrl ) . toBe ( url + "/tempLayersSet.json?" ) ;
111+ expect ( options ) . not . toBeNull ( ) ;
94112 var escapedJson = "{\"succeed\":false,\"error\":{\"code\":500,\"errorMsg\":\"Index:0不在(0,-1)范围之内。\"}}" ;
95113 return Promise . resolve ( new Response ( escapedJson ) ) ;
96114 } ) ;
97115 setLayersInfoService . events . on ( { "processFailed" : setLayersFailed } ) ;
98- setLayersInfoService . processAsync ( wrongLayer ) ;
116+ setLayersInfoService . processAsync ( wrongLayerInfo ) ;
99117 setTimeout ( function ( ) {
100118 expect ( setLayersEventArgsSystem ) . toBeNull ( ) ;
101119 expect ( setLayersFailedEventArgsSystem ) . not . toBeNull ( ) ;
0 commit comments