All checks were successful
Build and Push Docker Image / build (push) Successful in 2m2s
Adds headed Playwright coverage for the simpler dept-response flow (PX send -> champion responds -> PX accept/reject), 3 flows per module (happy path, token response, reject loop). 6/6 pass; 50 PASS / 5 WARN / 0 FAIL. Findings (documented in report): - token-response form pages (inquiry + observation) render the dashboard chrome instead of the response form -> anonymous champions can't submit via the emailed link (backend POST still works) - NameError get_email_header_html in inquiry_transfer_to_department (notif email silently fails) - observation can't jump new->resolved (status machine needs intermediate steps) Harness: - seed_e2e_dept_response, get_e2e_dept_response_state CLI helpers - E2E_MAXIMIZED=1 fullscreen mode in playwright.config.ts - report: appended "Inquiry & Observation dept-response workflow" section
37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
import { defineConfig, devices } from '@playwright/test';
|
|
|
|
export default defineConfig({
|
|
testDir: './e2e/tests',
|
|
timeout: Number(process.env.E2E_TIMEOUT || 30000),
|
|
fullyParallel: true,
|
|
forbidOnly: !!process.env.CI,
|
|
retries: process.env.CI ? 2 : 0,
|
|
workers: process.env.CI ? 1 : undefined,
|
|
reporter: [
|
|
['html', { open: 'never', outputFolder: 'e2e/results/html-report' }],
|
|
['list'],
|
|
],
|
|
use: {
|
|
baseURL: process.env.E2E_BASE_URL || 'http://localhost:8000',
|
|
trace: 'on-first-retry',
|
|
screenshot: 'only-on-failure',
|
|
video: 'retain-on-failure',
|
|
actionTimeout: Number(process.env.E2E_ACTION_TIMEOUT || 0),
|
|
navigationTimeout: Number(process.env.E2E_NAV_TIMEOUT || 0),
|
|
// E2E_MAXIMIZED=1 launches the browser maximized (viewport=null uses the OS window size)
|
|
viewport: process.env.E2E_MAXIMIZED ? null : undefined,
|
|
launchOptions: {
|
|
slowMo: Number(process.env.E2E_SLOWMO || 0),
|
|
args: process.env.E2E_MAXIMIZED ? ['--start-maximized', '--window-size=1920,1080'] : [],
|
|
},
|
|
},
|
|
projects: [
|
|
{
|
|
name: 'chromium',
|
|
use: { ...devices['Desktop Chrome'] },
|
|
},
|
|
],
|
|
outputDir: 'e2e/results/test-results',
|
|
snapshotPathTemplate: '{testDir}/__screenshots__/{testFilePath}/{arg}{ext}',
|
|
});
|