import { exec } from 'child_process'; import { promisify } from 'util'; import { Page } from '@playwright/test'; const execAsync = promisify(exec); export async function resetDatabase(): Promise { await execAsync('cd .. && ./reset_test_data.sh'); } export async function login(page: Page, username: string, password: string): Promise { // Clear cookies to ensure clean state await page.context().clearCookies(); await page.goto("/auth"); await page.getByPlaceholder("Name").click(); await page.getByPlaceholder("Name").fill(username); await page.getByPlaceholder("Passwort").click(); await page.getByPlaceholder("Passwort").fill(password); // Wait for navigation after form submission await Promise.all([ page.waitForURL(/\/(planned|log|$)/, { timeout: 10000 }), page.getByPlaceholder("Passwort").press("Enter") ]); }