Skip to content

Commit 6e60dd4

Browse files
committed
补充UT。review by chenmy
1 parent af384c5 commit 6e60dd4

File tree

9 files changed

+410
-1
lines changed

9 files changed

+410
-1
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
require('../../../src/common/iPortal/iPortalMapsQueryParam');
2+
3+
describe('iPortalMapsQueryParam', function () {
4+
it('constructor', function () {
5+
var param = new SuperMap.iPortalMapsQueryParam({userNames:'test'});
6+
expect(param).not.toBeNull();
7+
expect(param.userNames).toEqual('test');
8+
});
9+
});
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
require('../../../src/common/iPortal/iPortalServicesQueryParam');
2+
3+
describe('iPortalMapsQueryParam', function () {
4+
it('constructor', function () {
5+
var param = new SuperMap.iPortalServicesQueryParam({userNames:'test'});
6+
expect(param).not.toBeNull();
7+
expect(param.userNames).toEqual('test');
8+
});
9+
});
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
require('../../../src/common/iServer/TransferLine');
2+
3+
describe('TransferLine', function () {
4+
it('constructor, destroy', function () {
5+
var transferLine = new SuperMap.TransferLine({lineName: 'testLine'});
6+
expect(transferLine).not.toBeNull();
7+
expect(transferLine.CLASS_NAME).toEqual("SuperMap.TransferLine");
8+
expect(transferLine.lineName).toEqual('testLine');
9+
transferLine.destroy();
10+
expect(transferLine.CLASS_NAME).toBeNull();
11+
expect(transferLine.lineName).toBeNull();
12+
});
13+
14+
it('fromJson', function () {
15+
var transferLine = new SuperMap.TransferLine({lineName: 'testLine'});
16+
var result1 = new SuperMap.TransferLine.fromJson();
17+
expect(result1).not.toBeNull();
18+
var result2 = new SuperMap.TransferLine.fromJson(transferLine);
19+
expect(result2.lineName).toEqual('testLine');
20+
transferLine.destroy();
21+
});
22+
});

test/leaflet/overlay/TileVectorLayerSpec.js

Lines changed: 78 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ describe('leaflet_TileVectorLayer', function () {
7070
it('initialize_serverCartoCSSStyle:true', function (done) {
7171
var tileVectorLayer = new L.supermap.tiledVectorLayer(ChinaURL, {
7272
cacheEnabled: false,
73-
serverCartoCSSStyle: true
73+
serverCartoCSSStyle: true,
74+
renderer: "Canvas"
7475
}).addTo(map);
7576
setTimeout(function () {
7677
expect(tileVectorLayer).not.toBeNull();
@@ -150,6 +151,82 @@ describe('leaflet_TileVectorLayer', function () {
150151
}, 5000);
151152
});
152153

154+
//测试其父类
155+
it('getStyles', function (done) {
156+
var tileVectorLayer = L.supermap.tiledVectorLayer(ChinaURL, {
157+
cacheEnabled: false,
158+
serverCartoCSSStyle: false
159+
}).addTo(map);
160+
setTimeout(function () {
161+
expect(tileVectorLayer).not.toBeNull();
162+
var styles = tileVectorLayer.getStyles();
163+
expect(styles).not.toBeNull();
164+
map.removeLayer(tileVectorLayer);
165+
done();
166+
}, 5000);
167+
});
168+
169+
it('setFeatureStyle, resetFeatureStyle', function (done) {
170+
var tileVectorLayer = L.supermap.tiledVectorLayer(ChinaURL, {
171+
cacheEnabled: false,
172+
serverCartoCSSStyle: false
173+
}).addTo(map);
174+
setTimeout(function () {
175+
expect(tileVectorLayer).not.toBeNull();
176+
spyOn(tileVectorLayer, 'setFeatureStyle').and.callThrough();
177+
spyOn(tileVectorLayer, 'resetFeatureStyle').and.callThrough();
178+
spyOn(tileVectorLayer, '_getFeatureKey').and.callThrough();
179+
spyOn(tileVectorLayer, '_updateStyles').and.callThrough();
180+
var newTileVectorLayer = tileVectorLayer.setFeatureStyle(1, "World_Continent_pl@China");
181+
var newTileVectorLayer1 = tileVectorLayer.resetFeatureStyle(1, "World_Continent_pl@China");
182+
expect(newTileVectorLayer).not.toBeNull();
183+
expect(newTileVectorLayer1).not.toBeNull();
184+
expect(tileVectorLayer.setFeatureStyle).toHaveBeenCalled();
185+
expect(tileVectorLayer.resetFeatureStyle).toHaveBeenCalled();
186+
expect(tileVectorLayer._getFeatureKey).toHaveBeenCalled();
187+
expect(tileVectorLayer._updateStyles).toHaveBeenCalled();
188+
map.removeLayer(tileVectorLayer);
189+
done();
190+
}, 5000);
191+
});
192+
193+
it('getDataLayerNames', function (done) {
194+
var tileVectorLayer = L.supermap.tiledVectorLayer(ChinaURL, {
195+
cacheEnabled: false,
196+
serverCartoCSSStyle: false
197+
}).addTo(map);
198+
setTimeout(function () {
199+
expect(tileVectorLayer).not.toBeNull();
200+
var nameArray = tileVectorLayer.getDataLayerNames();
201+
expect(nameArray).not.toBeNull();
202+
expect(nameArray.length).toEqual(19);
203+
map.removeLayer(tileVectorLayer);
204+
done();
205+
}, 5000);
206+
});
207+
208+
it('_extendStyle', function (done) {
209+
var tileVectorLayer = L.supermap.tiledVectorLayer(ChinaURL, {
210+
cacheEnabled: false,
211+
serverCartoCSSStyle: false
212+
}).addTo(map);
213+
setTimeout(function () {
214+
expect(tileVectorLayer).not.toBeNull();
215+
var style = tileVectorLayer.vectorTileLayerStyles['China_Capital_pt@China'];
216+
var result1 = tileVectorLayer._extendStyle(style, "POINT");
217+
expect(result1).not.toBeNull();
218+
var result2 = tileVectorLayer._extendStyle(style, "LINE");
219+
expect(result2).not.toBeNull();
220+
var result3 = tileVectorLayer._extendStyle(style, "TEXT");
221+
expect(result3).not.toBeNull();
222+
var result4 = tileVectorLayer._extendStyle(style, "TEXT1");
223+
expect(result4).not.toBeNull();
224+
map.removeLayer(tileVectorLayer);
225+
done();
226+
}, 5000);
227+
});
228+
229+
153230
function initClientCssStr() {
154231
var cartoCss = "@waterColor:rgb(109,183,255);" +
155232
"@roadColora:rgb(100,100,100);" +
Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
var PointSymbolizer = require('../../../../src/leaflet/overlay/vectortile/PointSymbolizer').PointSymbolizer;
2+
var SVGRenderer = require('../../../../src/leaflet/overlay/vectortile/SVGRenderer').SVGRenderer;
3+
var img = require('../../../resources/img/baiduTileTest.png');
4+
5+
describe('leaflet_PointSymbolizer', function () {
6+
var testDiv, map;
7+
beforeAll(function () {
8+
testDiv = window.document.createElement("div");
9+
testDiv.setAttribute("id", "map");
10+
testDiv.style.styleFloat = "left";
11+
testDiv.style.marginLeft = "8px";
12+
testDiv.style.marginTop = "50px";
13+
testDiv.style.width = "400px";
14+
testDiv.style.height = "400px";
15+
window.document.body.appendChild(testDiv);
16+
map = L.map('map', {
17+
center: [39, 89, 116.34],
18+
zoom: 10
19+
});
20+
});
21+
afterAll(function () {
22+
window.document.body.removeChild(testDiv);
23+
});
24+
25+
it('initialize', function () {
26+
var feature1 = {
27+
geometry: [{x: 10, y: 10, type: "Point"}],
28+
id: "1",
29+
type: "Feature",
30+
properties: {
31+
CAP_POP: "2207718.0",
32+
SMLIBTILEID: "1",
33+
COUNTRY_CH: "巴西",
34+
CAPITAL_EN: "Brasilia",
35+
POP: "2207718.0",
36+
CAPITAL_CH: "巴西利亚",
37+
SMID: "1",
38+
COUNTRY: "巴西",
39+
CAPITAL_LO: "Brasília",
40+
COUNTRY_EN: "Brazil",
41+
USERID: "0",
42+
SMGEOMETRYSIZE: "16",
43+
SMY: "-15.792110943058866",
44+
CAPITAL: "巴西利亚",
45+
SMX: "-47.8977476573595",
46+
SMUSERID: "0"
47+
}
48+
};
49+
var feature2 = {
50+
geometry: [
51+
[{x: -10, y: -15, type: "Point"}],
52+
[{x: -100, y: 50, type: "Point"}]],
53+
id: "1",
54+
type: "Feature",
55+
properties: {
56+
CAP_POP: "2207718.0",
57+
SMLIBTILEID: "1",
58+
COUNTRY_CH: "巴西test",
59+
CAPITAL_EN: "Brasilia",
60+
POP: "2207718.0",
61+
CAPITAL_CH: "巴西利亚test",
62+
SMID: "1",
63+
COUNTRY: "巴西",
64+
CAPITAL_LO: "Brasília",
65+
COUNTRY_EN: "Brazil",
66+
USERID: "0",
67+
SMGEOMETRYSIZE: "16",
68+
SMY: "-15.792110943058866",
69+
CAPITAL: "巴西利亚",
70+
SMX: "-47.8977476573595",
71+
SMUSERID: "0"
72+
}
73+
};
74+
var pointSymbolizer1 = new PointSymbolizer(feature1);
75+
var pointSymbolizer2 = new PointSymbolizer(feature2);
76+
expect(pointSymbolizer1).not.toBeNull();
77+
expect(pointSymbolizer1.properties).not.toBeNull();
78+
expect(pointSymbolizer1.type).toEqual("Feature");
79+
expect(pointSymbolizer1._empty).not.toBeNull();
80+
expect(pointSymbolizer1._point.x).toEqual(10);
81+
expect(pointSymbolizer1._point.y).toEqual(10);
82+
expect(pointSymbolizer2).not.toBeNull();
83+
expect(pointSymbolizer2.properties).not.toBeNull();
84+
expect(pointSymbolizer2.type).toEqual("Feature");
85+
expect(pointSymbolizer2._empty).not.toBeNull();
86+
expect(pointSymbolizer2._point.x).toEqual(-10);
87+
expect(pointSymbolizer2._point.y).toEqual(-15);
88+
});
89+
90+
it('updateStyle_svgRenderer', function () {
91+
var svgRenderer = new SVGRenderer({x: 1686, y: 755, Z: 10}, {x: 256, y: 256});
92+
var feature = {
93+
geometry: [{x: 10, y: 10, type: "Point"}],
94+
type: "Feature",
95+
properties: {
96+
texts: ["test"]
97+
}
98+
};
99+
var style = {
100+
interactive: true,
101+
};
102+
var pointSymbolizer1 = new PointSymbolizer(feature);
103+
spyOn(pointSymbolizer1, '_updateBounds').and.callThrough();
104+
pointSymbolizer1.render(svgRenderer, style);
105+
pointSymbolizer1.updateStyle(svgRenderer, style);
106+
expect(pointSymbolizer1._updateBounds).toHaveBeenCalled();
107+
});
108+
109+
it('_getImage_Null', function () {
110+
var svgRenderer = new SVGRenderer({x: 1686, y: 755, Z: 10}, {x: 256, y: 256});
111+
var feature = {
112+
geometry: [{x: 10, y: 10, type: "Point"}],
113+
type: "Feature",
114+
properties: {
115+
texts: ["test"]
116+
}
117+
};
118+
var style1 = {
119+
interactive: true,
120+
};
121+
var pointSymbolizer = new PointSymbolizer(feature);
122+
pointSymbolizer.render(svgRenderer, style1);
123+
pointSymbolizer.updateStyle(svgRenderer, style1);
124+
var img = pointSymbolizer._getImage();
125+
expect(img).toBeNull();
126+
});
127+
128+
it('_getImage', function () {
129+
var svgRenderer = new SVGRenderer({x: 1686, y: 755, Z: 10}, {x: 256, y: 256});
130+
var feature = {
131+
geometry: [{x: 10, y: 10, type: "Point"}],
132+
type: "Feature",
133+
properties: {
134+
texts: ["test"]
135+
}
136+
};
137+
var style2 = {
138+
interactive: true,
139+
iconUrl: img.src
140+
};
141+
var pointSymbolizer = new PointSymbolizer(feature);
142+
pointSymbolizer.render(svgRenderer, style2);
143+
pointSymbolizer.updateStyle(svgRenderer, style2);
144+
var image = pointSymbolizer._getImage();
145+
expect(image).not.toBeNull();
146+
expect(image.currentSrc).toContain("data:image/png");
147+
});
148+
149+
});

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