import { dirname, resolve } from "node:path";
import { fileURLToPath } from "node:url";
import { defineConfig } from "@playwright/test";

const configDir = dirname(fileURLToPath(new URL(import.meta.url)));
const frontendRoot = resolve(configDir, ".");

export default defineConfig({
	testDir: "./tests/e2e",
	fullyParallel: true,
	timeout: 30_000,
	expect: {
		timeout: 5_000,
	},
	use: {
		baseURL: "http://127.0.0.1:41700",
		trace: "on-first-retry",
	},
	webServer: {
		command:
			"pnpm exec vite --config vite.config.ts --host 127.0.0.1 --port 41700 --strictPort",
		url: "http://127.0.0.1:41700/@vite/client",
		reuseExistingServer: true,
		timeout: 120_000,
		cwd: frontendRoot,
	},
});
