Skip to content

Commit bb93f01

Browse files
committed
【ut】add
1 parent 804d1a3 commit bb93f01

File tree

1 file changed

+102
-1
lines changed

1 file changed

+102
-1
lines changed

test/openlayers/mapping/WebMapSpec.js

Lines changed: 102 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ import {
1515
import {
1616
StyleUtils
1717
} from "../../../src/openlayers/core/StyleUtils";
18-
18+
import { DataFlowService } from '../../../src/openlayers/services';
19+
import { Server } from 'mock-socket';
1920
import { Object as obj } from 'ol';
2021
import Overlay from 'ol/Overlay';
2122
import * as olControl from 'ol/control';
@@ -1631,5 +1632,105 @@ describe('openlayers_WebMap', () => {
16311632
function errorCallback(error) {
16321633
console.log(error);
16331634
}
1635+
});
1636+
it('createThemeLayer_SUPERMAP_MAP_datasource', (done) => {
1637+
let options = {
1638+
server: server
1639+
};
1640+
spyOn(FetchRequest, 'get').and.callFake((url) => {
1641+
if (url.indexOf('web/config/portal.json') > -1) {
1642+
return Promise.resolve(new Response(JSON.stringify(iportal_serviceProxy)));
1643+
}
1644+
if (url.indexOf('map.json') > -1) {
1645+
var mapJson = datavizWebMap_RestMap1;
1646+
return Promise.resolve(new Response(mapJson));
1647+
}
1648+
return Promise.resolve();
1649+
});
1650+
spyOn(FetchRequest, 'post').and.callFake((url) => {
1651+
if (url.indexOf('queryResults') > -1) {
1652+
return Promise.resolve(new Response(supermapRestData));
1653+
}
1654+
return Promise.resolve();
1655+
});
1656+
var datavizWebmap = new WebMap(id, {successCallback, errorCallback, server: defaultServer });
1657+
function successCallback(map, mapInfo, layers, baseLayer){
1658+
expect(map.getLayers().getArray()[1].getSource().graphics[0].getGeometry().getCoordinates()[0]).toBeCloseTo(12961495.051608399,0.00001)
1659+
done();
1660+
}
1661+
function errorCallback(error) {
1662+
console.log(error);
1663+
}
1664+
});
1665+
it('graticuleLayer', (done) => {
1666+
spyOn(FetchRequest, 'get').and.callFake((url) => {
1667+
if (url.indexOf('web/datas/1171594968/content.json') > -1) {
1668+
return Promise.resolve(new Response(layerData_CSV));
1669+
}
1670+
if (url.indexOf('map.json') > -1) {
1671+
return Promise.resolve(new Response(JSON.stringify(rangeLayer)));
1672+
}
1673+
return Promise.resolve();
1674+
});
1675+
var datavizWebmap = new WebMap(id, {successCallback, errorCallback, server: defaultServer });
1676+
function successCallback(map, mapInfo, layers, baseLayer){
1677+
expect(map.getLayers().getArray()[1].get('layerID')).toBe('graticule_layer')
1678+
done();
1679+
}
1680+
function errorCallback(error) {
1681+
console.log(error);
1682+
}
1683+
});
1684+
it('add dataflow and update', (done) => {
1685+
var urlDataFlow = 'ws://localhost:8004/dataflow';
1686+
var urlDataFlow1 = 'ws://localhost:8004/dataflow/broadcast';
1687+
var urlDataFlow2 = 'ws://localhost:8004/dataflow/subscribe';
1688+
var mockServer = new Server(urlDataFlow);
1689+
var mockServer1 = new Server(urlDataFlow1);
1690+
var mockServer2 = new Server(urlDataFlow2);
1691+
mockServer.on('connection', (socket) => {
1692+
socket.on('close', () => {});
1693+
});
1694+
let socket2;
1695+
mockServer1.on('connection', (socket) => {
1696+
socket.on('message', (e) => {
1697+
socket2 && socket2.send(e);
1698+
});
1699+
socket.on('close', () => {});
1700+
});
1701+
mockServer2.on('connection', (socket) => {
1702+
socket2 = socket;
1703+
});
1704+
spyOn(FetchRequest, 'get').and.callFake((url) => {
1705+
if (url.indexOf('web/datas/676516522/content.json') > -1) {
1706+
return Promise.resolve(new Response(layerData_CSV));
1707+
} else if (url.indexOf('dataflow.json') > -1) {
1708+
dataflowLayerData.dataflow.urls[0].url = urlDataFlow;
1709+
return Promise.resolve(new Response(JSON.stringify(dataflowLayerData.dataflow)));
1710+
} else if (url.indexOf('broadcast') > -1) {
1711+
return Promise.resolve(new Response(JSON.stringify(dataflowLayerData.broadcast)));
1712+
} else if (url.indexOf('subscribe') > -1) {
1713+
return Promise.resolve(new Response(JSON.stringify(dataflowLayerData.subscribe)));
1714+
} else if (url.indexOf('map.json') > -1) {
1715+
dataflowLayer.layers[0].url = urlDataFlow;
1716+
dataflowLayer.layers[1].url = urlDataFlow;
1717+
dataflowLayer.layers[2].url = urlDataFlow;
1718+
dataflowLayer.layers[3].url = urlDataFlow;
1719+
return Promise.resolve(new Response(JSON.stringify(dataflowLayer)));
1720+
}
1721+
return Promise.resolve();
1722+
});
1723+
var datavizWebmap = new WebMap(id, { successCallback, errorCallback, server: defaultServer });
1724+
function successCallback(map, mapInfo, layers, baseLayer) {
1725+
expect(map.getLayers().getArray().length).toBe(7);
1726+
mockServer.stop();
1727+
mockServer1.stop();
1728+
mockServer2.stop();
1729+
done();
1730+
}
1731+
function errorCallback(error) {
1732+
console.log(error);
1733+
}
16341734
});
1735+
16351736
});

0 commit comments

Comments
 (0)