From c083b2a82b325c3563574fe114e7ae9af017b3ed Mon Sep 17 00:00:00 2001 From: Romain Crestey Date: Wed, 11 Aug 2021 22:49:55 +0200 Subject: [PATCH] [test] error redirections --- .../basics/src/routes/redirect/__error.svelte | 11 ++++++++ .../apps/basics/src/routes/redirect/_tests.js | 28 +++++++++++++++++++ .../src/routes/redirect/crashing.svelte | 7 +++++ .../basics/src/routes/redirect/index.svelte | 5 +++- 4 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 packages/kit/test/apps/basics/src/routes/redirect/__error.svelte create mode 100644 packages/kit/test/apps/basics/src/routes/redirect/crashing.svelte diff --git a/packages/kit/test/apps/basics/src/routes/redirect/__error.svelte b/packages/kit/test/apps/basics/src/routes/redirect/__error.svelte new file mode 100644 index 0000000000000..26d67dafaacca --- /dev/null +++ b/packages/kit/test/apps/basics/src/routes/redirect/__error.svelte @@ -0,0 +1,11 @@ + + +

Redirecting error page

diff --git a/packages/kit/test/apps/basics/src/routes/redirect/_tests.js b/packages/kit/test/apps/basics/src/routes/redirect/_tests.js index 91691860f6745..8478025c2bd9b 100644 --- a/packages/kit/test/apps/basics/src/routes/redirect/_tests.js +++ b/packages/kit/test/apps/basics/src/routes/redirect/_tests.js @@ -47,4 +47,32 @@ export default function (test, is_dev) { 'This is your custom error page saying: ""redirect" property returned from load() must be accompanied by a 3xx status code"' ); }); + + test('serves redirection on error', '/redirect/crashing', async ({ base, page }) => { + assert.equal(await page.url(), `${base}/redirect/c`); + assert.equal(await page.textContent('h1'), 'c'); + }); + + test('navigates to redirection on error', '/redirect', async ({ base, page, clicknav }) => { + await clicknav('[href="/redirect/crashing"]'); + + assert.equal(await page.url(), `${base}/redirect/c`); + assert.equal(await page.textContent('h1'), 'c'); + }); + + test('serves redirection on missing page', '/redirect/nowhere', async ({ base, page }) => { + assert.equal(await page.url(), `${base}/redirect/c`); + assert.equal(await page.textContent('h1'), 'c'); + }); + + test( + 'navigates to redirection on missing page', + '/redirect', + async ({ base, page, clicknav }) => { + await clicknav('[href="/redirect/nowhere"]'); + + assert.equal(await page.url(), `${base}/redirect/c`); + assert.equal(await page.textContent('h1'), 'c'); + } + ); } diff --git a/packages/kit/test/apps/basics/src/routes/redirect/crashing.svelte b/packages/kit/test/apps/basics/src/routes/redirect/crashing.svelte new file mode 100644 index 0000000000000..d074ee463b72e --- /dev/null +++ b/packages/kit/test/apps/basics/src/routes/redirect/crashing.svelte @@ -0,0 +1,7 @@ + + +

Crashing page

diff --git a/packages/kit/test/apps/basics/src/routes/redirect/index.svelte b/packages/kit/test/apps/basics/src/routes/redirect/index.svelte index 856e73216a4b8..0e0e73cec3019 100644 --- a/packages/kit/test/apps/basics/src/routes/redirect/index.svelte +++ b/packages/kit/test/apps/basics/src/routes/redirect/index.svelte @@ -6,4 +6,7 @@ b (loopy) a (missing-status) -b (missing-status) \ No newline at end of file +b (missing-status) + +crashing +nowhere