From 454c3971f9be665816fb6ad07bc8b9cbc48a50bf Mon Sep 17 00:00:00 2001 From: zhenyuWang <13641039885@163.com> Date: Thu, 3 Aug 2023 16:49:59 +0800 Subject: [PATCH] test(API): navigator --- pages/API/navigator/navigator.test.js | 16 ++++++++++++++++ pages/API/navigator/navigator.uvue | 9 ++++++++- pages/API/navigator/new-page/new-page-1.uvue | 14 ++++++++++++++ pages/API/navigator/new-page/new-page-2.test.js | 2 +- pages/API/navigator/new-page/new-page-2.uvue | 12 ++++++------ 5 files changed, 45 insertions(+), 8 deletions(-) diff --git a/pages/API/navigator/navigator.test.js b/pages/API/navigator/navigator.test.js index fec3fec3..248c527d 100644 --- a/pages/API/navigator/navigator.test.js +++ b/pages/API/navigator/navigator.test.js @@ -1,5 +1,7 @@ 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) diff --git a/pages/API/navigator/navigator.uvue b/pages/API/navigator/navigator.uvue index 3a2125ad..82622fe3 100644 --- a/pages/API/navigator/navigator.uvue +++ b/pages/API/navigator/navigator.uvue @@ -1,7 +1,7 @@ @@ -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}`) + }, + }) + }, }, } diff --git a/pages/API/navigator/new-page/new-page-2.test.js b/pages/API/navigator/new-page/new-page-2.test.js index da4339ec..45cff1a3 100644 --- a/pages/API/navigator/new-page/new-page-2.test.js +++ b/pages/API/navigator/new-page/new-page-2.test.js @@ -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') diff --git a/pages/API/navigator/new-page/new-page-2.uvue b/pages/API/navigator/new-page/new-page-2.uvue index dca4fb6e..02fb0b48 100644 --- a/pages/API/navigator/new-page/new-page-2.uvue +++ b/pages/API/navigator/new-page/new-page-2.uvue @@ -1,7 +1,7 @@ @@ -70,11 +70,11 @@ export default { }, }) }, - pageScrollTo(){ - uni.pageScrollTo({ - scrollTop: 1200 - }) - } + pageScrollTo() { + uni.pageScrollTo({ + scrollTop: 2000, + }) + }, }, } -- GitLab