36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
import { fileURLToPath } from 'node:url'
|
|||
|
|
import { defineConfig, devices } from '@playwright/test'
|
||
|
|
|
||
|
|
// Fixed ports so the PocketBase instance (started in global-setup.ts) and the
|
||
|
|
// built Nuxt server (started by Playwright's webServer below) can reference
|
||
|
|
// each other statically — see tests/e2e/global-setup.ts for why.
|
||
|
|
export const E2E_POCKETBASE_PORT = 8095
|
||
|
|
const APP_PORT = 3100
|
||
|
|
const BASE_URL = `http://127.0.0.1:${APP_PORT}`
|
||
|
|
const POCKETBASE_URL = `http://127.0.0.1:${E2E_POCKETBASE_PORT}`
|
||
|
|
|
||
|
|
export default defineConfig({
|
||
|
|
testDir: '../tests/e2e',
|
||
|
|
fullyParallel: false,
|
||
|
|
retries: 0,
|
||
|
|
reporter: [['list']],
|
||
|
|
use: {
|
||
|
|
baseURL: BASE_URL,
|
||
|
|
},
|
||
|
|
projects: [{ name: 'chromium', use: { ...devices['Desktop Chrome'] } }],
|
||
|
|
globalSetup: fileURLToPath(new URL('../tests/e2e/global-setup.ts', import.meta.url)),
|
||
|
|
webServer: {
|
||
|
|
command: 'npm run build && node .output/server/index.mjs',
|
||
|
|
url: BASE_URL,
|
||
|
|
reuseExistingServer: false,
|
||
|
|
timeout: 120000,
|
||
|
|
env: {
|
||
|
|
HOST: '127.0.0.1',
|
||
|
|
PORT: String(APP_PORT),
|
||
|
|
NUXT_POCKETBASE_URL: POCKETBASE_URL,
|
||
|
|
NUXT_PUBLIC_POCKETBASE_URL: POCKETBASE_URL,
|
||
|
|
NUXT_PUBLIC_SITE_URL: BASE_URL,
|
||
|
|
},
|
||
|
|
},
|
||
|
|
})
|