Files
Compass/tests/e2e/utils/contextManager.ts
Okechi Jones-Williams 00e7662d60 Added a context manager to test with multiple accounts interacting with each other
Added an option to verify the users email when creating an account
2026-05-28 19:32:44 +01:00

28 lines
694 B
TypeScript

import {Browser, BrowserContext} from '@playwright/test'
import {App} from '../web/pages/app'
export class ContextManager {
private contexts: Map<string, App> = new Map()
constructor(private browser: Browser) {}
async createContext(name: string): Promise<App> {
const context = await this.browser.newContext()
const page = await context.newPage()
const app = new App(page)
this.contexts.set(name, app)
return app
}
getContext(name: string): App | undefined {
return this.contexts.get(name)
}
async closeAll(): Promise<void> {
for (const app of this.contexts.values()) {
await app.page.context().close()
}
this.contexts.clear()
}
}