import { defineConfig, devices } from '@playwright/test'; import { playkitFailureArtifacts } from '@levkin/playkit'; import { DEFAULT_BASE_URL } from './env-defaults'; const baseURL = process.env.PLAYKIT_BASE_URL || process.env.BASE_URL || DEFAULT_BASE_URL; export default defineConfig({ testDir: './tests', fullyParallel: true, forbidOnly: !!process.env.CI, retries: process.env.CI ? 1 : 0, workers: process.env.CI ? 2 : undefined, reporter: process.env.CI ? [['list'], ['html', { open: 'never' }], ['junit', { outputFile: 'test-results/junit.xml' }]] : [['list'], ['html', { open: 'on-failure' }]], timeout: 60_000, expect: { timeout: 15_000 }, use: { baseURL, ...playkitFailureArtifacts(), ...devices['Desktop Chrome'], }, projects: [ { name: 'setup', testMatch: /auth\.setup\.ts/ }, { name: 'chromium', use: { ...devices['Desktop Chrome'] }, dependencies: ['setup'], testIgnore: /auth\.setup\.ts/, }, ], });