const OPTIONS_PAGE_PATH = '/pages/error/throw-error/throw-error-options' const COMPOSITION_PAGE_PATH = '/pages/error/throw-error/throw-error-composition' const HOME_PAGE_PATH = '/pages/index/index' describe('throw error', () => { let page let lifeCycleNum const initLifecycle = async () => { page = await program.reLaunch(HOME_PAGE_PATH) await page.waitFor('view') await page.callMethod('setLifeCycleNum', 0) lifeCycleNum = await page.callMethod('getLifeCycleNum') expect(lifeCycleNum).toBe(0) } const test = async (pagePath) => { await initLifecycle() page = await program.reLaunch(pagePath) await page.waitFor('view') expect(page.path).toBe(pagePath.substring(1)) lifeCycleNum = await page.callMethod('getLifeCycleNum') expect(lifeCycleNum).toBe(100) const triggerErrorBtn = await page.$('#trigger-error') await triggerErrorBtn.tap() lifeCycleNum = await page.callMethod('getLifeCycleNum') expect(lifeCycleNum).toBe(200) page = await program.navigateTo(HOME_PAGE_PATH) await page.waitFor('view') expect(page.path).toBe(HOME_PAGE_PATH.substring(1)) } it('onError options API', async () => { await test(OPTIONS_PAGE_PATH) }) it('onError composition API', async () => { await test(COMPOSITION_PAGE_PATH) }) afterAll(async () => { const resetLifecycleNum = 1100 await page.callMethod('setLifeCycleNum', resetLifecycleNum) lifeCycleNum = await page.callMethod('getLifeCycleNum') expect(lifeCycleNum).toBe(resetLifecycleNum) }) })