18 lines
705 B
TypeScript
18 lines
705 B
TypeScript
import { expect, type Locator, type Page } from "@playwright/test"
|
|
import { base64Encode } from "@opencode-ai/core/util/encode"
|
|
|
|
export const APP_READY_TIMEOUT = 30_000
|
|
|
|
export async function expectAppVisible(locator: Locator) {
|
|
await expect(locator).toBeVisible({ timeout: APP_READY_TIMEOUT })
|
|
}
|
|
|
|
export async function expectSessionTitle(page: Page, title: string) {
|
|
await expectAppVisible(page.getByRole("heading", { name: title }))
|
|
}
|
|
|
|
export async function expectSessionReady(page: Page, input: { server: string; sessionID: string; title: string }) {
|
|
await expect(page).toHaveURL(`/server/${base64Encode(input.server)}/session/${input.sessionID}`)
|
|
await expectSessionTitle(page, input.title)
|
|
}
|