test: send cookies via an embedded iframe (#17036)
This commit is contained in:
parent
3548f3f898
commit
8f1f4946bf
|
|
@ -320,3 +320,32 @@ it('should add cookies with an expiration', async ({ context }) => {
|
||||||
expires: -42,
|
expires: -42,
|
||||||
}])).rejects.toThrow(/Cookie should have a valid expires/);
|
}])).rejects.toThrow(/Cookie should have a valid expires/);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should be able to send third party cookies via an iframe', async ({ browser, httpsServer, browserName }) => {
|
||||||
|
it.fixme(browserName === 'firefox' || browserName === 'webkit');
|
||||||
|
it.info().annotations.push({ type: 'issue', description: 'https://github.com/microsoft/playwright/issues/16937' });
|
||||||
|
|
||||||
|
const context = await browser.newContext({
|
||||||
|
ignoreHTTPSErrors: true,
|
||||||
|
});
|
||||||
|
try {
|
||||||
|
const page = await context.newPage();
|
||||||
|
await page.goto(httpsServer.EMPTY_PAGE);
|
||||||
|
await context.addCookies([{
|
||||||
|
domain: new URL(httpsServer.CROSS_PROCESS_PREFIX).hostname,
|
||||||
|
path: '/',
|
||||||
|
name: 'cookie1',
|
||||||
|
value: 'yes',
|
||||||
|
httpOnly: true,
|
||||||
|
secure: true,
|
||||||
|
sameSite: 'None'
|
||||||
|
}]);
|
||||||
|
const [response] = await Promise.all([
|
||||||
|
httpsServer.waitForRequest('/grid.html'),
|
||||||
|
page.setContent(`<iframe src="${httpsServer.CROSS_PROCESS_PREFIX}/grid.html"></iframe>`)
|
||||||
|
]);
|
||||||
|
expect(response.headers['cookie']).toBe('cookie1=yes');
|
||||||
|
} finally {
|
||||||
|
await context.close();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue