fix(firefox): disable cookie partitioning (#17051)

This commit is contained in:
Dmitry Gozman 2022-09-02 15:46:03 -07:00 committed by GitHub
parent 1b59abb5e1
commit 54e7f44974
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 2 deletions

View file

@ -61,7 +61,7 @@ export class Firefox extends BrowserType {
throw new Error('Pass userDataDir parameter to `browserType.launchPersistentContext(userDataDir, ...)` instead of specifying --profile argument');
if (args.find(arg => arg.startsWith('-juggler')))
throw new Error('Use the port parameter instead of -juggler argument');
const firefoxUserPrefs = isPersistent ? undefined : options.firefoxUserPrefs;
const firefoxUserPrefs = isPersistent ? undefined : { ...kBandaidFirefoxUserPrefs, ...options.firefoxUserPrefs };
if (firefoxUserPrefs) {
const lines: string[] = [];
for (const [name, value] of Object.entries(firefoxUserPrefs))
@ -85,3 +85,9 @@ export class Firefox extends BrowserType {
return firefoxArguments;
}
}
// Prefs for quick fixes that didn't make it to the build.
// Should all be moved to `playwright.cfg`.
const kBandaidFirefoxUserPrefs = {
'network.cookie.cookieBehavior': 4,
};

View file

@ -322,7 +322,7 @@ it('should add cookies with an expiration', async ({ context }) => {
});
it('should be able to send third party cookies via an iframe', async ({ browser, httpsServer, browserName, isMac }) => {
it.fixme(browserName === 'firefox' || (browserName === 'webkit' && isMac));
it.fixme(browserName === 'webkit' && isMac);
it.info().annotations.push({ type: 'issue', description: 'https://github.com/microsoft/playwright/issues/16937' });
const context = await browser.newContext({