提交 454c3971 编写于 作者: DCloud-WZF's avatar DCloud-WZF 💬

test(API): navigator

上级 c0c31c9d
jest.setTimeout(40000)
const CURRENT_PAGE_PATH = '/pages/API/navigator/navigator'
const CHILD1_PAGE_PATH = '/pages/API/navigator/new-page/new-page-1'
const CHILD2_PAGE_PATH = '/pages/API/navigator/new-page/new-page-2'
describe('navigator', () => {
let page
......@@ -102,6 +104,20 @@ describe('navigator', () => {
expect(lifeCycleNum).toBe(2)
})
it('navigateBackWithDelta2', async () => {
await page.callMethod('setLifeCycleNum', 0)
await program.navigateTo(CHILD2_PAGE_PATH)
await page.waitFor(500)
page = await program.navigateTo(CHILD1_PAGE_PATH)
await page.waitFor(500)
await page.callMethod('navigateBackWithDelta2')
await page.waitFor(500)
page = await program.currentPage()
expect(`/${page.path}`).toBe(CURRENT_PAGE_PATH)
lifeCycleNum = await page.callMethod('getLifeCycleNum')
expect(lifeCycleNum).toBe(10)
})
it('navigateBackWithDelta100', async () => {
page = await program.reLaunch(CURRENT_PAGE_PATH)
await page.callMethod('setLifeCycleNum', 0)
......
<template>
<view>
<page-head title="navigate"></page-head>
<view class="uni-padding-wrap uni-common-mt">
<view class="uni-padding-wrap uni-common-mt uni-common-mb">
<view class="direction-row">
<text class="label">onLoad触发时间戳:</text>
<text>{{ onLoadTime }}</text>
......@@ -37,6 +37,9 @@
<button @tap="customAnimation" class="uni-btn">
使用自定义动画打开页面
</button>
<button @tap="navigateToErrorPage" class="uni-btn">
打开不存在的页面
</button>
</view>
</view>
</view>
......@@ -128,6 +131,10 @@ export default {
},
fail(error) {
console.log('navigateTo fail', error.errMsg)
uni.showToast({
title: error.errMsg,
icon: 'none',
})
// 自动化测试
setLifeCycleNum(state.lifeCycleNum + 1)
},
......
......@@ -3,6 +3,9 @@
<page-head title="new-page-1" />
<text>onLoad 接收到参数</text>
<text>data: {{ data }}</text>
<button @tap="navigateBackWithDelta2" class="uni-btn">
回退到上上层页面
</button>
</view>
</template>
......@@ -24,6 +27,17 @@ export default {
getLifeCycleNum(): number {
return state.lifeCycleNum
},
navigateBackWithDelta2() {
uni.navigateBack({
delta: 2,
success() {
console.log('回退上上层页面成功')
},
fail(error) {
console.warn(`回退上上层页面失败: ${error.errMsg}`)
},
})
},
},
}
</script>
......@@ -37,7 +37,7 @@ describe('page-lifecycle', () => {
})
// TODO: pageScrollTo 无法触发 onReachBottom, 待修复后调整 lifeCycleNum
it('onPageScroll onReachBottom', async () => {
await program.pageScrollTo(1200)
await program.pageScrollTo(2000)
const data = await page.data()
expect(data.isScrolled).toBe(true)
lifeCycleNum = await page.callMethod('getLifeCycleNum')
......
<template>
<view class="uni-padding-wrap container">
<page-head title="new-page-2" />
<button @click="pageScrollTo">scrollToBottom</button>
<button @click="pageScrollTo">scrollToBottom</button>
</view>
</template>
......@@ -70,11 +70,11 @@ export default {
},
})
},
pageScrollTo(){
uni.pageScrollTo({
scrollTop: 1200
})
}
pageScrollTo() {
uni.pageScrollTo({
scrollTop: 2000,
})
},
},
}
</script>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册