/** * Epic 3: Rankings & Public Data * Acceptance Test: Player Rankings Page * * User Story: As a visitor, I want to view player rankings so that I can see top players * * Acceptance Criteria: * - Sortable rankings table * - Columns: Rank, Name, Elo, Win Rate, Games Played * - Search/filter functionality * - Pagination */ import { test, expect } from '@playwright/test'; test.describe('Epic 3: Rankings Page', () => { test('Rankings page loads and displays rankings table', async ({ page }) => { await page.goto('/rankings'); // Check page title or heading await expect(page.locator('h1, h2')).toContainText(/rankings?/i); // Check for rankings table await expect(page.locator('table')).toBeVisible(); }); test('Rankings table displays player columns', async ({ page }) => { await page.goto('/rankings'); // Check for expected column headers const table = page.locator('table'); await expect(table).toBeVisible(); // Check for column headers (may vary based on implementation) const headerCount = await page.locator('th').count(); expect(headerCount).toBeGreaterThan(0); }); test('Rankings page is publicly accessible (no login required)', async ({ page }) => { // Navigate directly to rankings without logging in await page.goto('/rankings'); // Page should load without redirecting to login await expect(page).toHaveURL(/.*rankings.*/); await expect(page.locator('body')).toBeVisible(); }); });