fix: allow relative userDataDir
This commit is contained in:
parent
703e077f4b
commit
f944809c4a
|
|
@ -188,6 +188,8 @@ export abstract class BrowserType extends SdkObject {
|
||||||
tempDirectories.push(artifactsDir);
|
tempDirectories.push(artifactsDir);
|
||||||
|
|
||||||
if (userDataDir) {
|
if (userDataDir) {
|
||||||
|
if (!path.isAbsolute(userDataDir))
|
||||||
|
userDataDir = path.resolve(userDataDir);
|
||||||
// Firefox bails if the profile directory does not exist, Chrome creates it. We ensure consistent behavior here.
|
// Firefox bails if the profile directory does not exist, Chrome creates it. We ensure consistent behavior here.
|
||||||
if (!await existsAsync(userDataDir))
|
if (!await existsAsync(userDataDir))
|
||||||
await fs.promises.mkdir(userDataDir, { recursive: true, mode: 0o700 });
|
await fs.promises.mkdir(userDataDir, { recursive: true, mode: 0o700 });
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,20 @@ it('should accept userDataDir', async ({ createUserDataDir, browserType }) => {
|
||||||
expect(fs.readdirSync(userDataDir).length).toBeGreaterThan(0);
|
expect(fs.readdirSync(userDataDir).length).toBeGreaterThan(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should accept relative userDataDir', async ({ createUserDataDir, browserType }) => {
|
||||||
|
const userDataDir = await createUserDataDir();
|
||||||
|
const cwd = process.cwd();
|
||||||
|
try {
|
||||||
|
console.log(userDataDir);
|
||||||
|
process.chdir(userDataDir);
|
||||||
|
const context = await browserType.launchPersistentContext('foobar');
|
||||||
|
expect(fs.readdirSync(path.join(userDataDir, 'foobar')).length).toBeGreaterThan(0);
|
||||||
|
await context.close();
|
||||||
|
} finally {
|
||||||
|
process.chdir(cwd);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
it('should restore state from userDataDir', async ({ browserType, server, createUserDataDir, isMac, browserName }) => {
|
it('should restore state from userDataDir', async ({ browserType, server, createUserDataDir, isMac, browserName }) => {
|
||||||
it.slow();
|
it.slow();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue