Some checks are pending
Deploy info-canicule / deploy (push) Waiting to run
API publique retirée : - /api/vigilance et /api/vigilance/dept/[code] supprimés - Mentions retirées dans footer, /mentions-legales, /embed - /api/health garde, sans CORS (usage interne UptimeRobot + cron HC.io) - Tests E2E mis à jour (vérifient 404 sur les endpoints retirés) Pages : - /dependances : entièrement mise à jour (Sentry, sharp, Playwright, sitemap, typography ajoutés ; API MF officielle DPObs+DPVigilance, normales 1991-2020 listées ; section Services tiers ajoutée pour Opendatasoft en fallback ; section Infrastructure complétée avec GlitchTip + CrowdSec). - /soutenir : "~7€/mois mutualisés" → "~30€/mois", suppression du détail VPS OVH (juste "infra"), suppression du bloc "Réutiliser les données via API". Vigilance Météo France load-balancing : - lib/vigilance.ts : fetch parallèle x3 et garde la réponse au update_time le plus récent. Constat 2026-05-26 : le gateway MF load-balance entre instances désynchronisées (~60% renvoyaient bulletin J-1, ~40% bulletin J). Cette mitigation atteint >95% de probabilité d'avoir le bulletin frais. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
28 lines
1 KiB
TypeScript
28 lines
1 KiB
TypeScript
import { test, expect } from '@playwright/test';
|
|
|
|
test.describe('API', () => {
|
|
test('/api/health retourne status ok et cache true', async ({ request }) => {
|
|
const res = await request.get('/api/health');
|
|
expect(res.status()).toBeLessThan(600);
|
|
const body = await res.json();
|
|
expect(body).toHaveProperty('status');
|
|
expect(body).toHaveProperty('cache');
|
|
expect(body).toHaveProperty('time');
|
|
});
|
|
|
|
test('/api/health pas de CORS (interne uniquement)', async ({ request }) => {
|
|
const res = await request.get('/api/health');
|
|
const cors = res.headers()['access-control-allow-origin'];
|
|
expect(cors).toBeUndefined();
|
|
});
|
|
|
|
test('/api/vigilance retourne 404 (API publique retirée)', async ({ request }) => {
|
|
const res = await request.get('/api/vigilance');
|
|
expect(res.status()).toBe(404);
|
|
});
|
|
|
|
test('/api/vigilance/dept/75 retourne 404 (API publique retirée)', async ({ request }) => {
|
|
const res = await request.get('/api/vigilance/dept/75');
|
|
expect(res.status()).toBe(404);
|
|
});
|
|
});
|