Files
app/tests/playwright/smoke.spec.ts
Albert 4967ce3cd1 feat: Add Playwright testing scaffolding infrastructure
Implements complete Playwright testing infrastructure for manual MCP testing and
as foundation for Magnitude tests.

Created:
- playwright.config.ts - Main configuration with setup project
- tests/playwright/auth.setup.ts - Authentication setup (placeholder)
- tests/playwright/fixtures.ts - Custom fixtures for authenticated/page contexts
- tests/playwright/helpers/chat.ts - Chat interaction helpers
- tests/playwright/helpers/galaxy.ts - Galaxy visualization helpers
- tests/playwright/helpers/node.ts - Node creation/management helpers
- tests/playwright/smoke.spec.ts - Basic smoke tests
- .env.test - Environment variables template

Updated:
- package.json - Added test:playwright scripts
- .gitignore - Added tests/playwright/.auth/ exclusion

Ready for manual Playwright MCP testing and Magnitude test creation.

Resolves plan: 01-playwright-scaffolding.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 21:14:35 +00:00

22 lines
723 B
TypeScript

import { test, expect } from './fixtures';
test.describe('Smoke Tests', () => {
test('homepage loads', async ({ page }) => {
await page.goto('/');
await expect(page).toHaveTitle(/Ponderants/);
});
test('chat page loads', async ({ page }) => {
await page.goto('/chat');
// Check for chat interface element
await expect(page.locator('textarea, input[type="text"]').first()).toBeVisible({ timeout: 10000 });
});
test('galaxy page loads', async ({ page }) => {
await page.goto('/galaxy');
// Check for canvas or empty state
const canvasOrEmpty = page.locator('canvas, [data-testid="empty-state"]').first();
await expect(canvasOrEmpty).toBeVisible({ timeout: 10000 });
});
});