提交 54277325 编写于 作者: Anne_LXM's avatar Anne_LXM

test(map.test.js):补充map测试例

上级 078c3e7a
...@@ -17,7 +17,7 @@ describe('web-map', () => { ...@@ -17,7 +17,7 @@ describe('web-map', () => {
}); });
it('Check MapMethods', async () => { it('Check MapMethods', async () => {
const mapMethods = ['addControls', 'addMarkers', 'addMarkersLabel','addPolyline', 'addPolygons', 'addCircles','includePoint'] const mapMethods = ['addControls', 'addMarkers', 'addMarkersLabel','removeMarker','addPolyline','removePolyline', 'addPolygons','removePolygon', 'addCircles','removeCircle','includePoint']
for (var i = 0; i < mapMethods.length; i++) { for (var i = 0; i < mapMethods.length; i++) {
await page.callMethod(mapMethods[i]) await page.callMethod(mapMethods[i])
await page.waitFor(500); await page.waitFor(500);
......
...@@ -16,12 +16,17 @@ ...@@ -16,12 +16,17 @@
@confirm="confirm_scale_input"></input-data> @confirm="confirm_scale_input"></input-data>
<boolean-data :defaultValue="showLocation" title="开启显示带有方向的当前定位点" @change="change_show_location"></boolean-data> <boolean-data :defaultValue="showLocation" title="开启显示带有方向的当前定位点" @change="change_show_location"></boolean-data>
<button class="button" @click="addControls">控件</button> <button class="button" @click="addControls">控件</button>
<button class="button" @click="addMarkers">标记点</button> <button class="button" @click="addMarkers">添加标记点</button>
<button class="button" @click="addMarkersLabel">为标记点旁边增加标签</button> <button class="button" @click="addMarkersLabel">为标记点旁边增加标签</button>
<button class="button" @click="addPolyline">路线</button> <button class="button" @click="deleteMarker">移除ID为4的标记点和标签</button>
<button class="button" @click="addPolygons">多边形</button> <button class="button" @click="addPolyline">添加路线</button>
<button class="button" @click="addCircles">圆</button> <button class="button" @click="removePolyline">移除一条路线</button>
<button class="button" @click="addPolygons">添加多边形</button>
<button class="button" @click="removePolygon">移除一个多边形</button>
<button class="button" @click="addCircles">添加圆</button>
<button class="button" @click="removeCircle">移除一个圆</button>
<button class="button" @click="includePoint">缩放视野以包含所有给定的坐标点</button> <button class="button" @click="includePoint">缩放视野以包含所有给定的坐标点</button>
<view class="uni-title"> <view class="uni-title">
<text class="uni-title-text">方法示例</text> <text class="uni-title-text">方法示例</text>
...@@ -38,104 +43,104 @@ ...@@ -38,104 +43,104 @@
<script setup lang="uts"> <script setup lang="uts">
type Anchor = { type Anchor = {
x: number, x : number,
y: number y : number
} }
type Callout = { type Callout = {
content: string, content : string,
color: string, color : string,
fontSize: number, fontSize : number,
borderRadius: number, borderRadius : number,
borderWidth: number, borderWidth : number,
borderColor: string, borderColor : string,
bgColor: string, bgColor : string,
padding: number, padding : number,
display: string display : string
} }
type Label = { type Label = {
content: string, content : string,
color: string, color : string,
fontSize: number, fontSize : number,
x: number, x : number,
y: number, y : number,
borderColor: string borderColor : string
borderWidth: number, borderWidth : number,
borderRadius: number, borderRadius : number,
bgColor: string, bgColor : string,
padding: number padding : number
} }
type Markers = { type Markers = {
id: number, id : number,
latitude: number, latitude : number,
longitude: number, longitude : number,
title?: string, title ?: string,
iconPath: string, iconPath : string,
zIndex?: string, zIndex ?: string,
rotate?: number, rotate ?: number,
width?: number, width ?: number,
height?: number, height ?: number,
label?: Label, label ?: Label,
anchor?: Anchor, anchor ?: Anchor,
callout?: Callout callout ?: Callout
} }
type Points = { type Points = {
latitude: number, latitude : number,
longitude: number longitude : number
} }
type Polyline = { type Polyline = {
points: Points[], points : Points[],
color: string, color : string,
width: number, width : number,
dottedLine: boolean, dottedLine : boolean,
arrowLine: boolean, arrowLine : boolean,
borderColor: string, borderColor : string,
borderWidth: number borderWidth : number
} }
type Polygons = { type Polygons = {
points: Points[]; points : Points[];
fillColor: string; fillColor : string;
strokeWidth: number; strokeWidth : number;
strokeColor: string; strokeColor : string;
zIndex: number; zIndex : number;
} }
type Circles = { type Circles = {
latitude: number; latitude : number;
longitude: number; longitude : number;
radius: number; radius : number;
strokeWidth: number; strokeWidth : number;
color: string; color : string;
fillColor: string; fillColor : string;
} }
type PositionType = { type PositionType = {
left: number, left : number,
top: number, top : number,
width: number, width : number,
height: number height : number
} }
type ControlsType = { type ControlsType = {
id?: number; id ?: number;
position: PositionType; position : PositionType;
iconPath: string; iconPath : string;
clickable?: boolean; clickable ?: boolean;
} }
type TypeJestResult = { type TypeJestResult = {
translateMarkerMsg: string, translateMarkerMsg : string,
animationEnd: boolean, animationEnd : boolean,
centerPoints: Points, centerPoints : Points,
southwest: Points, southwest : Points,
northeast: Points, northeast : Points,
moveToLocationMsg: string, moveToLocationMsg : string,
scale: number scale : number
} }
const testMarkers = [{ const testMarkers = [{
...@@ -188,7 +193,82 @@ ...@@ -188,7 +193,82 @@
padding: 5, padding: 5,
display: 'ALWAYS' display: 'ALWAYS'
} }
} },
{
id: 2,
latitude: 39.894793,
longitude: 116.321592,
title: '北京西站',
zIndex: '1',
iconPath: '../../../static/location.png',
width: 40,
height: 40,
anchor: {
x: 0.5,
y: 1
},
callout: {
content: '北京西站',
color: '#ffffff',
fontSize: 12,
borderRadius: 10,
borderWidth: 2,
borderColor: '#333300',
bgColor: '#ff5500',
padding: 5,
display: 'ALWAYS'
}
},
{
id: 3,
latitude: 39.902344,
longitude: 116.484822,
title: '北京东站',
zIndex: '1',
iconPath: '../../../static/location.png',
width: 20,
height: 20,
anchor: {
x: 0.5,
y: 1
},
callout: {
content: '北京东站',
color: '#ffffff',
fontSize: 12,
borderRadius: 10,
borderWidth: 2,
borderColor: '#333300',
bgColor: '#ff5500',
padding: 5,
display: 'ALWAYS'
}
},
{
id: 4,
latitude: 39.865011,
longitude: 116.379007,
title: '北京南站',
zIndex: '1',
iconPath: '../../../static/location.png',
width: 40,
height: 40,
anchor: {
x: 0.5,
y: 1
},
callout: {
content: '北京南站',
color: '#ffffff',
fontSize: 12,
borderRadius: 10,
borderWidth: 2,
borderColor: '#333300',
bgColor: '#00aa00',
padding: 5,
display: 'ALWAYS'
}
},
]; ];
...@@ -328,7 +408,7 @@ ...@@ -328,7 +408,7 @@
const skew = ref(0); const skew = ref(0);
// 自动化测试 // 自动化测试
const autoTest = ref(false); const autoTest = ref(false);
const updateAutoTest = (value: boolean) => { const updateAutoTest = (value : boolean) => {
autoTest.value = value autoTest.value = value
} }
...@@ -358,7 +438,7 @@ ...@@ -358,7 +438,7 @@
}); });
const scale = ref(13); const scale = ref(13);
const confirm_scale_input = (value: number) => { const confirm_scale_input = (value : number) => {
scale.value = value scale.value = value
}; };
...@@ -378,7 +458,7 @@ ...@@ -378,7 +458,7 @@
} }
const showLocation = ref(false); const showLocation = ref(false);
const change_show_location = (checked: boolean) => { const change_show_location = (checked : boolean) => {
showLocation.value = checked showLocation.value = checked
} }
...@@ -390,9 +470,23 @@ ...@@ -390,9 +470,23 @@
const markers = reactive([] as Markers[]); const markers = reactive([] as Markers[]);
const addMarkers = () => { const addMarkers = () => {
scale.value = 11
markers.push(...testMarkers); markers.push(...testMarkers);
}; };
const removeMarker = () => {
const index = markers.findIndex(marker => marker.id === 4);
if (index !== -1) {
delete markers[index].label;
markers.splice(index, 1);
}else{
uni.showToast({
title: '未找到该标记点',
icon: 'none'
});
}
};
const addMarkersLabel = () => { const addMarkersLabel = () => {
markers.forEach((marker, index) => { markers.forEach((marker, index) => {
marker.label = { marker.label = {
...@@ -413,9 +507,14 @@ ...@@ -413,9 +507,14 @@
const polyline = ref([] as Polyline[]); const polyline = ref([] as Polyline[]);
const addPolyline = () => { const addPolyline = () => {
scale.value = 12; scale.value = 11;
polyline.value = testPolyline; polyline.value = testPolyline;
}; };
const removePolyline = () => {
if (polyline.value.length > 1) {
polyline.value.splice(0, 1);
}
};
const polygons = ref([] as Polygons[]); const polygons = ref([] as Polygons[]);
...@@ -423,6 +522,11 @@ ...@@ -423,6 +522,11 @@
scale.value = 10; scale.value = 10;
polygons.value = testPolygons; polygons.value = testPolygons;
}; };
const removePolygon = () => {
if (polygons.value.length > 1) {
polygons.value.splice(0, 1);
}
};
const circles = ref([] as Circles[]); const circles = ref([] as Circles[]);
...@@ -430,6 +534,12 @@ ...@@ -430,6 +534,12 @@
scale.value = 10; scale.value = 10;
circles.value = testCircles; circles.value = testCircles;
}; };
const removeCircle = () => {
if (circles.value.length > 1) {
circles.value.splice(0, 1);
}
};
const showCompass = ref(true); const showCompass = ref(true);
const enable3D = ref(true); const enable3D = ref(true);
...@@ -528,6 +638,22 @@ ...@@ -528,6 +638,22 @@
console.log(error) console.log(error)
} }
}); });
map.value.translateMarker({
markerId: 2,
destination: {
latitude: 39.902344,
longitude: 116.484822,
},
autoRotate: true,
rotate: 0,
duration: 2000,
success: ret => {
console.log('handleTranslateMarker',JSON.stringify(ret));
},
fail: error => {
console.log(error)
}
});
} }
}; };
...@@ -573,43 +699,43 @@ ...@@ -573,43 +699,43 @@
} }
}; };
const maptap = (e: UniEvent) => { const maptap = (e : UniEvent) => {
// console.log('点击地图时触发',e) // console.log('点击地图时触发',e)
uni.showModal({ uni.showModal({
content: JSON.stringify(e) content: JSON.stringify(e)
}); });
}; };
const onmarkertap = (e: UniEvent) => { const onmarkertap = (e : UniEvent) => {
// console.log('点击标记点时触发',e) // console.log('点击标记点时触发',e)
uni.showModal({ uni.showModal({
content: JSON.stringify(e) content: JSON.stringify(e)
}); });
}; };
const oncontroltap = (e: UniEvent) => { const oncontroltap = (e : UniEvent) => {
// console.log('点击控件时触发',e) // console.log('点击控件时触发',e)
uni.showModal({ uni.showModal({
content: JSON.stringify(e) content: JSON.stringify(e)
}); });
}; };
const oncallouttap = (e: UniEvent) => { const oncallouttap = (e : UniEvent) => {
// console.log('点击标记点对应的气泡时触发',e) // console.log('点击标记点对应的气泡时触发',e)
uni.showModal({ uni.showModal({
content: JSON.stringify(e) content: JSON.stringify(e)
}); });
}; };
const onupdated = (e: UniEvent) => { const onupdated = (e : UniEvent) => {
console.log('在地图渲染更新完成时触发', e) console.log('在地图渲染更新完成时触发', e)
}; };
const onregionchange = (e: UniEvent) => { const onregionchange = (e : UniEvent) => {
console.log('视野发生变化时触发', e) console.log('视野发生变化时触发', e)
}; };
const onpoitap = (e: UniEvent) => { const onpoitap = (e : UniEvent) => {
// console.log('点击地图poi点时触发',e) // console.log('点击地图poi点时触发',e)
uni.showModal({ uni.showModal({
content: JSON.stringify(e) content: JSON.stringify(e)
...@@ -623,9 +749,13 @@ ...@@ -623,9 +749,13 @@
addControls, addControls,
addMarkers, addMarkers,
addMarkersLabel, addMarkersLabel,
removeMarker,
addPolyline, addPolyline,
removePolyline,
addPolygons, addPolygons,
removePolygon,
addCircles, addCircles,
removeCircle,
includePoint, includePoint,
handleGetCenterLocation, handleGetCenterLocation,
handleGetRegion, handleGetRegion,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册