import { test, expect } from '@playwright/test'; test.describe('Widget embed', () => { test('/embed/dept/75 charge avec Paris', async ({ page }) => { await page.goto('/embed/dept/75'); await expect(page.locator('h1')).toHaveText('Paris'); // Embed minimal : pas de header global Info Canicule await expect(page.getByRole('link', { name: 'Soutenir' })).toHaveCount(0); }); test('/embed/dept/971 — DROM notice', async ({ page }) => { await page.goto('/embed/dept/971'); await expect(page.locator('h1')).toHaveText('Guadeloupe'); await expect(page.getByText(/Outre-mer non couverte/i)).toBeVisible(); }); test('embed servi avec X-Frame-Options non bloquant', async ({ request }) => { const res = await request.get('/embed/dept/75'); expect(res.status()).toBe(200); const xfo = res.headers()['x-frame-options']; // Soit absent (autorisé), soit SAMEORIGIN (pas DENY) expect(xfo === undefined || xfo.toUpperCase() !== 'DENY').toBe(true); }); });