chore: follow up to exposing playwright config options (#289)

This commit is contained in:
Pavel Feldman 2025-04-29 08:53:03 -07:00 committed by GitHub
parent 4147e21a3a
commit 69703cc882
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 5 additions and 2 deletions

1
config.d.ts vendored
View File

@ -30,6 +30,7 @@ export type Config = {
/**
* Path to a user data directory for browser profile persistence.
* Temporary directory is created by default.
*/
userDataDir?: string;

View File

@ -87,6 +87,7 @@ export async function configFromCLIOptions(cliOptions: CLIOptions): Promise<Conf
const launchOptions: LaunchOptions = {
channel,
executablePath: cliOptions.executablePath,
headless: cliOptions.headless,
};
if (browserName === 'chromium')
@ -126,7 +127,7 @@ async function loadConfig(configFile: string | undefined): Promise<Config> {
try {
return JSON.parse(await fs.promises.readFile(configFile, 'utf8'));
} catch (error) {
throw new Error(`Failed to load config file: ${configFile}`);
throw new Error(`Failed to load config file: ${configFile}, ${error}`);
}
}

View File

@ -29,7 +29,7 @@ const install = defineTool({
},
handle: async context => {
const channel = context.config.browser?.launchOptions?.channel ?? context.config.browser?.launchOptions.channel ?? context.config.browser?.launchOptions.browserName ?? 'chrome';
const channel = context.config.browser?.launchOptions?.channel ?? context.config.browser?.launchOptions.browserName ?? 'chrome';
const cli = path.join(require.resolve('playwright/package.json'), '..', 'cli.js');
const child = fork(cli, ['install', channel], {
stdio: 'pipe',

View File

@ -97,6 +97,7 @@ export const test = baseTest.extend<TestFixtures, WorkerFixtures>({
`--no-first-run`,
`--no-sandbox`,
`--headless`,
'--use-mock-keychain',
`data:text/html,hello world`,
], {
stdio: 'pipe',