From f91e41ef400c09fe9a0b86872a87415f652993a8 Mon Sep 17 00:00:00 2001 From: Ross Wollman Date: Tue, 23 Aug 2022 14:06:25 -0700 Subject: [PATCH] test: cannot override cookie header in continue (#16774) Repro for #16773. --- tests/page/page-route.spec.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/page/page-route.spec.ts b/tests/page/page-route.spec.ts index 95ada83008..764d24f06d 100644 --- a/tests/page/page-route.spec.ts +++ b/tests/page/page-route.spec.ts @@ -140,6 +140,28 @@ it('should properly return navigation response when URL has cookies', async ({ p expect(response.status()).toBe(200); }); +it('should override cookie header', async ({ page, server, browserName }) => { + it.info().annotations.push({ type: 'issue', description: 'https://github.com/microsoft/playwright/issues/16773' }); + it.fail(browserName !== 'firefox'); + + await page.goto(server.EMPTY_PAGE); + await page.evaluate(() => document.cookie = 'original=value'); + let cookieValueInRoute; + await page.route('**', async route => { + const headers = await route.request().allHeaders(); + cookieValueInRoute = headers['cookie']; + headers['cookie'] = 'overridden=value'; + route.continue({ headers }); + }); + const [serverReq] = await Promise.all([ + server.waitForRequest('/empty.html'), + page.goto(server.EMPTY_PAGE), + ]); + + expect(cookieValueInRoute).toBe('original=value'); + expect(serverReq.headers['cookie']).toBe('overridden=value'); +}); + it('should show custom HTTP headers', async ({ page, server }) => { await page.setExtraHTTPHeaders({ foo: 'bar'