Skip to content

Commit b22e955

Browse files
committed
【update】修复webmap的测试 (reviewed by songym)
1 parent 987ab94 commit b22e955

File tree

3 files changed

+81
-66
lines changed

3 files changed

+81
-66
lines changed

test/openlayers/mapping/WebMapSpec.js

Lines changed: 75 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ import '../../resources/WebMapV5.js';
99
import {
1010
ArrayStatistic
1111
} from "../../../src/common/util/ArrayStatistic";
12+
import {
13+
Util
14+
} from '../../../src/openlayers/core/Util';
1215

1316
describe('openlayers_WebMap', () => {
1417
var originalTimeout, testDiv, webMap;
@@ -56,6 +59,7 @@ describe('openlayers_WebMap', () => {
5659
done();
5760
}, 1000)
5861
});
62+
5963
it('initialize_TIANDITU_IMAGE', (done) => {
6064
spyOn(FetchRequest, 'get').and.callFake((url) => {
6165
if (url.indexOf('map.json')>-1) {
@@ -413,7 +417,7 @@ describe('openlayers_WebMap', () => {
413417
if (url.indexOf('map.json')>-1) {
414418
var mapJson = datavizWebMap_SVG;
415419
return Promise.resolve(new Response(mapJson));
416-
} else if (url === `${rootUrl}web/datas/675746998/content.json?pageSize=9999999&currentPage=1`) {
420+
} else if (url === `${rootUrl}web/datas/1782454383/content.json?pageSize=9999999&currentPage=1`) {
417421
return Promise.resolve(new Response(geojsonData));
418422
}
419423
return Promise.resolve();
@@ -427,11 +431,11 @@ describe('openlayers_WebMap', () => {
427431
expect(datavizWebmap.credentialKey).toBeUndefined();
428432
expect(datavizWebmap.credentialValue).toBeUndefined();
429433

430-
expect(datavizWebmap.mapParams.title).toBe('Image');
434+
expect(datavizWebmap.mapParams.title).toBe("无标题");
431435
expect(datavizWebmap.mapParams.description).toBe('');
432436
expect(options.successCallback).toHaveBeenCalled();
433437
expect(datavizWebmap.map.getLayers().getArray()[0].getProperties().name).toBe('高德地图');
434-
expect(datavizWebmap.map.getLayers().getArray()[1].getProperties().name).toBe('浙江省高等院校(3)');
438+
expect(datavizWebmap.map.getLayers().getArray()[1].getProperties().name).toBe('浙江省高等院校(1)');
435439
done();
436440
}, 1000)
437441
});
@@ -592,6 +596,8 @@ describe('openlayers_WebMap', () => {
592596
if (url.indexOf('map.json')>-1) {
593597
var mapJson = datavizWebMap_RestMap;
594598
return Promise.resolve(new Response(mapJson));
599+
} else {
600+
return Promise.resolve(new Response(jinJingMap))
595601
}
596602
return Promise.resolve();
597603
});
@@ -616,8 +622,7 @@ describe('openlayers_WebMap', () => {
616622
done();
617623
}, 1000)
618624
});
619-
620-
625+
621626
it('createThemeLayer_SUPERMAPREST_DATA', (done) => {
622627
let options = {
623628
server: server,
@@ -628,16 +633,11 @@ describe('openlayers_WebMap', () => {
628633
if (url.indexOf('map.json')>-1) {
629634
var mapJson = datavizWebMap_RestData;
630635
return Promise.resolve(new Response(mapJson));
631-
} else if (url === 'http://support.supermap.com:8090/iserver/services/data-jingjin/rest/data/featureResults.json?returnContent=true&fromIndex=0&toIndex=100000') {
632-
return Promise.resolve(new Response(supermapData));
633636
}
634637
return Promise.resolve();
635638
});
636639
spyOn(FetchRequest, 'post').and.callFake((url) => {
637-
if (url === 'http://192.168.12.27:8091/iserver/services/data-jingjin/rest/data/featureResults.json?returnContent=true&fromIndex=0&toIndex=100000') {
638-
return Promise.resolve(new Response(supermapData));
639-
}
640-
return Promise.resolve();
640+
return Promise.resolve(new Response(supermapData));
641641
});
642642
spyOn(options, 'successCallback');
643643
var datavizWebmap = new WebMap(id, options);
@@ -658,6 +658,8 @@ describe('openlayers_WebMap', () => {
658658
expect(datavizWebmap.map.getLayers().getArray()[1].getProperties().name).toBe('Jingjin:BaseMap_P');
659659
expect(datavizWebmap.map.getLayers().getArray().length).toBe(2);
660660
done();
661+
datavizWebmap.map = null;
662+
datavizWebmap = null;
661663
}, 1000)
662664
});
663665

@@ -668,10 +670,14 @@ describe('openlayers_WebMap', () => {
668670
successCallback: function () {},
669671
errorCallback: function () {}
670672
};
673+
let wmtsData ='<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:gml="http://www.opengis.net/gml" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://support.supermap.com:8090/iserver/services/map-world/wmts100/wmts,1.0,wmtsGetCapabilities_response.xsd"><<ows:OperationsMetadata><<ows:Operation name="GetCapabilities"></ows:Operation></ows:OperationsMetadata></Capabilities>';
674+
671675
spyOn(FetchRequest, 'get').and.callFake((url) => {
672676
if (url.indexOf('map.json')>-1) {
673677
var mapJson = datavizWebMap_WMS;
674678
return Promise.resolve(new Response(mapJson));
679+
} else if(url === "http://support.supermap.com:8090/iserver/services/map-world/wms130/World?MAP=World&&SERVICE=WMS&REQUEST=GetCapabilities") {
680+
return Promise.resolve(new Response(wmtsData));
675681
}
676682
return Promise.resolve();
677683
});
@@ -697,11 +703,13 @@ describe('openlayers_WebMap', () => {
697703
}, 1000)
698704
});
699705

700-
/*it('WMTS', (done) => {
706+
/* it('WMTS', (done) => {
701707
//第二次请求wmts参数值太大
702708
let options = {
703-
callback: function () {},
704-
errorCallback: function () {}
709+
target:'map',
710+
server: server,
711+
errorCallback: function () {},
712+
callback: function () {}
705713
};
706714
let wmtsData ='<Capabilities xmlns="http://www.opengis.net/wmts/1.0" xmlns:gml="http://www.opengis.net/gml" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://support.supermap.com:8090/iserver/services/map-world/wmts100/wmts,1.0,wmtsGetCapabilities_response.xsd"><<ows:OperationsMetadata><<ows:Operation name="GetCapabilities"></ows:Operation></ows:OperationsMetadata></Capabilities>';
707715
@@ -715,7 +723,7 @@ describe('openlayers_WebMap', () => {
715723
return Promise.resolve();
716724
});
717725
spyOn(options, 'callback');
718-
var datavizWebmap = new WebMap('map', server, options);
726+
var datavizWebmap = new WebMap(id, options);
719727
720728
setTimeout(() => {
721729
expect(datavizWebmap.server).toBe(server);
@@ -747,6 +755,7 @@ describe('openlayers_WebMap', () => {
747755
});
748756
var datavizWebmap = new WebMap(id, {});
749757
var layerInfo = JSON.parse(wmtsInfo);
758+
datavizWebmap.baseProjection = "EPSG:4326";
750759
datavizWebmap.createWMTSSource(layerInfo);
751760

752761
setTimeout(() => {
@@ -766,6 +775,7 @@ describe('openlayers_WebMap', () => {
766775
});
767776
var datavizWebmap = new WebMap(id, {});
768777
var layerInfo = JSON.parse(wmtsInfo1);
778+
datavizWebmap.baseProjection = "EPSG:4326";
769779
datavizWebmap.createWMTSSource(layerInfo);
770780

771781
setTimeout(() => {
@@ -774,51 +784,52 @@ describe('openlayers_WebMap', () => {
774784
}, 1000)
775785
});
776786

777-
it('setColorToCanvas', (done) => {
778-
spyOn(FetchRequest, 'get').and.callFake((url) => {
779-
if (url.indexOf('map.json')>-1) {
780-
var mapJson = datavizWebMap_WMTS;
781-
return Promise.resolve(new Response(mapJson));
782-
}
783-
return Promise.resolve();
784-
});
785-
var datavizWebmap = new WebMap(id, {});
786-
var canvas = document.createElement('canvas');
787-
var params = {
788-
fillColor: '#0083cb',
789-
fillOpacity: '1',
790-
strokeColor: '#56b781',
791-
strokeOpacity: '0.2',
792-
strokeWidth: '6'
793-
};
794-
setTimeout(() => {
795-
expect(datavizWebmap.setColorToCanvas(canvas, params)).toBeDefined();
796-
done();
797-
}, 1000)
798-
});
799-
800-
it('getSymbolStyle', (done) => {
801-
spyOn(FetchRequest, 'get').and.callFake((url) => {
802-
if (url.indexOf('map.json')>-1) {
803-
var mapJson = datavizWebMap_WMTS;
804-
return Promise.resolve(new Response(mapJson));
805-
}
806-
return Promise.resolve();
807-
});
808-
var datavizWebmap = new WebMap(id, {});
809-
var params = {
810-
unicode: "&#xe694",
811-
fillColor: '#ffffff',
812-
fillOpacity: '1',
813-
strokeColor: '#56b781',
814-
strokeOpacity: '0.2',
815-
strokeWidth: '6'
816-
};
817-
setTimeout(() => {
818-
expect(datavizWebmap.getSymbolStyle(params)).toBeDefined();
819-
done();
820-
}, 1000)
821-
});
787+
// 被写在styleUtils
788+
// it('setColorToCanvas', (done) => {
789+
// spyOn(FetchRequest, 'get').and.callFake((url) => {
790+
// if (url.indexOf('map.json')>-1) {
791+
// var mapJson = datavizWebMap_WMTS;
792+
// return Promise.resolve(new Response(mapJson));
793+
// }
794+
// return Promise.resolve();
795+
// });
796+
// var datavizWebmap = new WebMap(id, {});
797+
// var canvas = document.createElement('canvas');
798+
// var params = {
799+
// fillColor: '#0083cb',
800+
// fillOpacity: '1',
801+
// strokeColor: '#56b781',
802+
// strokeOpacity: '0.2',
803+
// strokeWidth: '6'
804+
// };
805+
// setTimeout(() => {
806+
// expect(datavizWebmap.setColorToCanvas(canvas, params)).toBeDefined();
807+
// done();
808+
// }, 1000)
809+
// });
810+
811+
// it('getSymbolStyle', (done) => {
812+
// spyOn(FetchRequest, 'get').and.callFake((url) => {
813+
// if (url.indexOf('map.json')>-1) {
814+
// var mapJson = datavizWebMap_WMTS;
815+
// return Promise.resolve(new Response(mapJson));
816+
// }
817+
// return Promise.resolve();
818+
// });
819+
// var datavizWebmap = new WebMap(id, {});
820+
// var params = {
821+
// unicode: "&#xe694",
822+
// fillColor: '#ffffff',
823+
// fillOpacity: '1',
824+
// strokeColor: '#56b781',
825+
// strokeOpacity: '0.2',
826+
// strokeWidth: '6'
827+
// };
828+
// setTimeout(() => {
829+
// expect(datavizWebmap.getSymbolStyle(params)).toBeDefined();
830+
// done();
831+
// }, 1000)
832+
// });
822833

823834
it('changeWeight', (done) => {
824835
spyOn(FetchRequest, 'get').and.callFake((url) => {
@@ -850,6 +861,8 @@ describe('openlayers_WebMap', () => {
850861
if (url.indexOf('map.json')>-1) {
851862
var mapJson = datavizWebMap_WMTS;
852863
return Promise.resolve(new Response(mapJson));
864+
} else if(url === "http://support.supermap.com:8090/iserver/services/maps/wmts100?") {
865+
return Promise.resolve(new Response(wmtsInfo2));
853866
}
854867
return Promise.resolve();
855868
});
@@ -863,9 +876,9 @@ describe('openlayers_WebMap', () => {
863876
projection: 'EPSG:3857'
864877
}
865878
};
866-
spyOn(datavizWebmap, "createWMTSSource");
879+
spyOn(datavizWebmap, "getWmtsInfo");
867880
datavizWebmap.createBaseLayer(mapInfo);
868-
expect(datavizWebmap.createWMTSSource).toHaveBeenCalled();
881+
expect(datavizWebmap.getWmtsInfo).toHaveBeenCalled();
869882
done();
870883
}, 1000)
871884
});

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy