mirror of
https://github.com/MercuryWorkshop/scramjet.git
synced 2025-05-13 06:20:02 -04:00
29 lines
No EOL
930 B
TypeScript
29 lines
No EOL
930 B
TypeScript
/* eslint-disable no-async-promise-executor */
|
|
import { expect, FrameLocator, Page } from "@playwright/test";
|
|
import { registerInspect } from "./inspectConsole";
|
|
|
|
export function setupPage(page: Page, url: string): Promise<FrameLocator> {
|
|
return new Promise(async (resolve) => {
|
|
// Hack to disable HTTP cache.
|
|
await page.route("**", route => route.continue());
|
|
// Goto base url defined in config.
|
|
await page.goto("/");
|
|
await page.waitForSelector(".version > b");
|
|
const bar = page.locator(".bar");
|
|
const title = await page.locator(".version > b").textContent();
|
|
const frame = page.frameLocator("iframe");
|
|
expect(title).toBe("scramjet");
|
|
|
|
expect(bar).not.toBeNull();
|
|
|
|
await bar.fill(url);
|
|
|
|
await page.waitForTimeout(1000);
|
|
|
|
await bar.press("Enter");
|
|
|
|
registerInspect(page);
|
|
|
|
resolve(frame);
|
|
});
|
|
} |