Skip to content

Commit 2b5fc5b

Browse files
committed
【fix】优化测试
1 parent d58dea0 commit 2b5fc5b

File tree

6 files changed

+37
-4
lines changed

6 files changed

+37
-4
lines changed

test/common/util/FetchRequestSpec.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ describe('FetchRequest', () => {
1212
var url = 'http://test.supermap.io/examples/leaflet/editor.html#addressMatchService';
1313
var params;
1414
var options;
15-
spyOn(SuperMap.Util.RequestJSONPPromise, 'issue').and.callThrough();
16-
setCORS(defaltCors);
15+
spyOn(SuperMap.Util.RequestJSONPPromise, 'issue').and.callFake(() => {});
16+
setCORS(false);
1717
FetchRequest.get(url, params, options);
1818
expect(SuperMap.Util.RequestJSONPPromise.issue).toHaveBeenCalled();
1919
var paramsde = {
@@ -30,10 +30,10 @@ describe('FetchRequest', () => {
3030
expect(SuperMap.Util.RequestJSONPPromise.issue.calls.count()).toBe(3);
3131

3232
SuperMap.Util.RequestJSONPPromise.limitLength = 180;
33-
spyOn(FetchRequest, '_fetchJsonp').and.callFake(() => {});
33+
3434
FetchRequest.put(deleteUri, paramsde, options);
3535
expect(SuperMap.Util.RequestJSONPPromise.issue.calls.count()).toBe(4);
36-
setCORS(true);
36+
setCORS(defaltCors);
3737
});
3838

3939
it('Get_arrayObject', () => {

test/leaflet/components/dataservicequery/DataServiceQueryViewSpec.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import { tiledMapLayer } from '../../../../src/leaflet/mapping/TiledMapLayer';
33
import { dataServiceQueryView } from '../../../../src/leaflet/components/dataservicequery/DataServiceQueryView'
44
import { FetchRequest } from '../../../../src/common/util/FetchRequest';
5+
import { mockCreateTile } from '../../tool/mock_leaflet';
56
import '@geoman-io/leaflet-geoman-free';
67
import '@geoman-io/leaflet-geoman-free/dist/leaflet-geoman.css';
78
var map, url = GlobeParameter.WorldURL, testDiv, dataServiceQuery;
@@ -16,6 +17,7 @@ describe('leaflet_DataServiceQuery_DataServiceQueryView', () => {
1617
testDiv.style.width = "800px";
1718
testDiv.style.height = "800px";
1819
document.body.appendChild(testDiv);
20+
mockCreateTile();
1921
map = L.map('map', {
2022
preferCanvas: true,
2123
crs: L.CRS.EPSG4326,

test/leaflet/mapping/ImageMapLayerSpec.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {imageMapLayer} from '../../../src/leaflet/mapping/ImageMapLayer';
22
import {NDVIParameter} from '../../../src/common/iServer/NDVIParameter';
33
import {HillshadeParameter} from '../../../src/common/iServer/HillshadeParameter';
44
import {getQueryValue} from '../../tool/utils';
5+
import {mockInitImage} from '../../tool/mock_leaflet';
56

67
var url = GlobeParameter.WorldURL;
78
describe('leaflet_ImageMapLayer', () => {
@@ -16,6 +17,7 @@ describe('leaflet_ImageMapLayer', () => {
1617
testDiv.style.width = "500px";
1718
testDiv.style.height = "500px";
1819
document.body.appendChild(testDiv);
20+
mockInitImage();
1921
map = L.map('map', {
2022
center: [0, 0],
2123
maxZoom: 18,

test/leaflet/mapping/TiledMapLayerSpec.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {tiledMapLayer} from '../../../src/leaflet/mapping/TiledMapLayer';
22
import {NDVIParameter} from '../../../src/common/iServer/NDVIParameter';
33
import {HillshadeParameter} from '../../../src/common/iServer/HillshadeParameter';
44
import {getQueryValue} from '../../tool/utils';
5+
import {mockCreateTile} from '../../tool/mock_leaflet';
56

67
var url = GlobeParameter.ChinaURL;
78
describe('leaflet_TiledMapLayer', () => {
@@ -15,6 +16,7 @@ describe('leaflet_TiledMapLayer', () => {
1516
testDiv.style.marginTop = "50px";
1617
testDiv.style.width = "500px";
1718
testDiv.style.height = "500px";
19+
mockCreateTile();
1820
document.body.appendChild(testDiv);
1921
map = L.map('map', {
2022
center: [0, 0],

test/leaflet/mapping/WebMapSpec.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import {webMap} from '../../../src/leaflet/mapping/WebMap';
22
import {FetchRequest} from '../../../src/common/util/FetchRequest';
3+
import {mockCreateTile} from '../../tool/mock_leaflet';
34

45
describe('leaflet_WebMap', () => {
56
var originalTimeout;
@@ -15,6 +16,7 @@ describe('leaflet_WebMap', () => {
1516
testDiv.style.width = "500px";
1617
testDiv.style.height = "500px";
1718
window.document.body.appendChild(testDiv);
19+
mockCreateTile();
1820
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
1921
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
2022
});

test/tool/mock_leaflet.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
export function mockCreateTile() {
2+
spyOn(L.TileLayer.prototype, 'createTile').and.callFake(function (coords, done) {
3+
var tile = document.createElement('img');
4+
5+
L.DomEvent.on(tile, 'load', L.Util.bind(this._tileOnLoad, this, done, tile));
6+
L.DomEvent.on(tile, 'error', L.Util.bind(this._tileOnError, this, done, tile));
7+
8+
if (this.options.crossOrigin || this.options.crossOrigin === '') {
9+
tile.crossOrigin = this.options.crossOrigin === true ? '' : this.options.crossOrigin;
10+
}
11+
tile.alt = '';
12+
tile.setAttribute('role', 'presentation');
13+
this.getTileUrl(coords);
14+
return tile;
15+
});
16+
}
17+
export function mockInitImage() {
18+
spyOn(L.ImageOverlay.prototype, '_initImage').and.callFake(function () {
19+
this._image = L.DomUtil.create('img');
20+
var me = this;
21+
setTimeout(function () {
22+
me.fire('load', {});
23+
}, 1000);
24+
});
25+
}

0 commit comments

Comments
 (0)