strona-czynna/src/back/test_utils/browser-creator.ts
Kuba Orlik f7538a362d Working tests in ESM mode.
Summary: scss

Reviewers: #reviewers, kuba-orlik

Reviewed By: #reviewers, kuba-orlik

Subscribers: jenkins-user

Differential Revision: https://hub.sealcode.org/D1358
2023-12-30 21:48:57 +01:00

28 lines
717 B
TypeScript

import { Browser, BrowserContext, firefox, Page } from "@playwright/test";
let browser: Browser;
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export async function getBrowser(): Promise<Browser> {
if (!browser) browser = await firefox.launch();
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
return browser;
}
export async function closeBrowser() {
if (browser) {
await browser.close();
}
}
export async function getPage(): Promise<{
page: Page;
browser: Browser;
context: BrowserContext;
}> {
const browser = await getBrowser();
const context = await browser.newContext();
const page = await context.newPage();
return { browser, context, page };
}