Files
SpaceWanderer/e2e/smoke.spec.ts
T
2026-09-28 16:13:35 +00:00

29 lines
1.2 KiB
TypeScript

import { expect, test } from '@playwright/test';
test('landing page loads with the SpaceWanderer title', async ({ page }) => {
await page.goto('/');
await expect(page.getByRole('heading', { name: 'SpaceWanderer' })).toBeVisible();
});
test('mission control layout renders scificn-ui components', async ({ page }) => {
await page.goto('/');
// Stat card, tab trigger and footer badge prove the copied component layer is wired in.
await expect(page.getByText('NEXT ENCOUNTER')).toBeVisible();
await expect(page.getByRole('button', { name: 'SYSTEMS' })).toBeVisible();
await expect(page.getByText('SYS ONLINE')).toBeVisible();
});
test('operations tabs switch panels client-side', async ({ page }) => {
await page.goto('/');
await page.getByRole('button', { name: 'LOG' }).click();
await expect(page.getByText('SHIP LOG // PLACEHOLDER FEED')).toBeVisible();
});
test('GET /api/version reports the app version as JSON', async ({ page }) => {
const res = await page.request.get('/api/version');
expect(res.status()).toBe(200);
expect(res.headers()['content-type']).toContain('application/json');
const body = (await res.json()) as { version: string };
expect(body.version).toMatch(/^\d+\.\d+\.\d+$/);
});