From 2d0919c0f64b19eab53a2f0889e09e8a43f9b510 Mon Sep 17 00:00:00 2001 From: Simon Knott Date: Mon, 16 Sep 2024 10:27:21 +0200 Subject: [PATCH] add test for redirects --- tests/library/har.spec.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/library/har.spec.ts b/tests/library/har.spec.ts index 1423ec4a1b..5f2865226f 100644 --- a/tests/library/har.spec.ts +++ b/tests/library/har.spec.ts @@ -833,6 +833,23 @@ it('should include API request', async ({ contextFactory, server }, testInfo) => })); }); +it('should include redirects from API request', async ({ contextFactory, server }, testInfo) => { + server.setRedirect('/redirect-me', '/simple.json'); + const { page, getLog } = await pageWithHar(contextFactory, testInfo); + await page.request.post(server.PREFIX + '/redirect-me', { + headers: { cookie: 'a=b; c=d' }, + data: { foo: 'bar' } + }); + const log = await getLog(); + expect(log.entries.length).toBe(2); + const [redirect, json] = log.entries; + expect(redirect.request.url).toBe(server.PREFIX + '/redirect-me'); + expect(json.request.url).toBe(server.PREFIX + '/simple.json'); + + expect(redirect.timings).toBeDefined(); + expect(json.timings).toBeDefined(); +}); + it('should not hang on resources served from cache', async ({ contextFactory, server, browserName }, testInfo) => { it.info().annotations.push({ type: 'issue', description: 'https://github.com/microsoft/playwright/issues/11435' }); server.setRoute('/one-style.css', (req, res) => {