Luigit
repositories / pi-ext

pi-ext

bugabingas pi extensions

owned by admin

test/playwright.base.ts

Raw
import { lstatSync, mkdirSync } from "node:fs";
import { tmpdir } from "node:os";
import { basename, join } from "node:path";
import { defineConfig } from "@playwright/test";

const outputRoot = join(tmpdir(), "pi-ext-playwright-results");
mkdirSync(outputRoot, { recursive: true, mode: 0o700 });
const outputStat = lstatSync(outputRoot);
if (
	!outputStat.isDirectory() ||
	outputStat.isSymbolicLink() ||
	(process.platform !== "win32" && (outputStat.mode & 0o077) !== 0)
)
	throw new Error("Playwright output directory is not private");

export default defineConfig({
	outputDir: join(outputRoot, basename(process.cwd())),
	workers: process.env.CI ? 1 : undefined,
	projects: [
		{ name: "chromium", use: { browserName: "chromium" } },
		{ name: "firefox", use: { browserName: "firefox" } },
	],
	use: {
		headless: true,
	},
});