diff --git a/pages/error/throw-error/throw-error-composition.uvue b/pages/error/throw-error/throw-error-composition.uvue index 090d2865c2fa6bbfb1da385cf9caf1328b0f3f41..89b5d045bac700c44674c495d3a1ce248b495784 100644 --- a/pages/error/throw-error/throw-error-composition.uvue +++ b/pages/error/throw-error/throw-error-composition.uvue @@ -1,18 +1,24 @@ + + + \ No newline at end of file diff --git a/pages/error/throw-error/throw-error.test.js b/pages/error/throw-error/throw-error.test.js index 3d13236dfe9b620bccc3746280359f409dac3718..20abea780147e9f4d13647d920d270a8a5cb02f3 100644 --- a/pages/error/throw-error/throw-error.test.js +++ b/pages/error/throw-error/throw-error.test.js @@ -1,47 +1,59 @@ -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 = 1110 - await page.callMethod('setLifeCycleNum', resetLifecycleNum) - lifeCycleNum = await page.callMethod('getLifeCycleNum') - expect(lifeCycleNum).toBe(resetLifecycleNum) - }) -}) +const platformInfo = process.env.uniTestPlatformInfo.toLocaleLowerCase() +const isAndroid = platformInfo.includes('android') +const isIos = platformInfo.includes('ios') +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) + + if (isAndroid || isIos) { + const triggerTimeoutErrorBtn = await page.$('#trigger-timeout-error') + await triggerTimeoutErrorBtn.tap() + await page.waitFor(500) + + lifeCycleNum = await page.callMethod('getLifeCycleNum') + expect(lifeCycleNum).toBe(300) + } + + 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 = 1110 + await page.callMethod('setLifeCycleNum', resetLifecycleNum) + lifeCycleNum = await page.callMethod('getLifeCycleNum') + expect(lifeCycleNum).toBe(resetLifecycleNum) + }) +}) \ No newline at end of file