Add production web smoke coverage

This commit is contained in:
2026-05-25 10:04:11 -04:00
parent 17c94d83ad
commit 10729a906c
8 changed files with 139 additions and 8 deletions

View File

@@ -0,0 +1,36 @@
import { test, expect } from '@playwright/test'
const FULL_SESSION = 9472
test.describe('Production serving (Go + built React)', () => {
test('serves race hub with classification from built assets', async ({ page }) => {
await page.goto(`/race-hub?session_key=${FULL_SESSION}`)
await expect(page.getByText('Final Classification')).toBeVisible()
await expect(page.locator('.drv-code', { hasText: 'VER' })).toBeVisible()
})
test('serves data library route', async ({ page }) => {
await page.goto('/data-library')
await expect(page.getByTestId('data-library')).toBeVisible()
await expect(page.getByTestId('dl-meeting-1229')).toBeVisible()
})
test('serves live route with empty state when live is disabled', async ({ page }) => {
await page.goto('/live')
await expect(page.getByTestId('live-empty')).toBeVisible()
await expect(page.getByText('No live session active')).toBeVisible()
})
test('nav links work from built SPA', async ({ page }) => {
await page.goto('/race-hub')
await page.getByRole('link', { name: 'Data Library' }).click()
await expect(page).toHaveURL(/\/data-library/)
await page.getByRole('link', { name: 'Live' }).click()
await expect(page).toHaveURL(/\/live/)
await expect(page.getByTestId('live-empty')).toBeVisible()
})
})