fix(ci): Corriger les tests E2E en CI

Plusieurs problèmes empêchaient les tests E2E de passer en CI :

1. Healthcheck : L'endpoint /api nécessite une authentification et
   retournait 401, causant l'échec du healthcheck. Remplacé par
   /api/docs qui est public.

2. Mailer : L'activation de compte déclenche l'envoi d'un email via
   mailpit, qui n'est pas disponible en CI. Ajout d'une variable
   d'environnement MAILER_DSN=null://null pour désactiver l'envoi.

3. Token partagé : Chaque navigateur (chromium, firefox, webkit)
   consommait le même token, causant des échecs pour les suivants.
   Maintenant chaque navigateur crée son propre token dans beforeAll
   avec un email unique (e2e-{browser}@example.com).

4. Nettoyage : Suppression de test-utils.ts et global-setup simplifié
   car la création de token est maintenant dans le fichier de test.
This commit is contained in:
2026-01-31 21:14:06 +01:00
parent c5e6c1d810
commit 6889c67a44
5 changed files with 76 additions and 81 deletions

View File

@@ -23,7 +23,7 @@ services:
MESSENGER_TRANSPORT_DSN: amqp://guest:guest@rabbitmq:5672/%2f/messages
MERCURE_URL: http://mercure/.well-known/mercure
MEILISEARCH_URL: http://meilisearch:7700
MAILER_DSN: smtp://mailpit:1025
MAILER_DSN: ${MAILER_DSN:-smtp://mailpit:1025}
ports:
- "18000:8000" # Port externe 18000 pour eviter conflit
volumes:
@@ -38,7 +38,7 @@ services:
rabbitmq:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/api"]
test: ["CMD", "curl", "-f", "http://localhost:8000/api/docs"]
interval: 10s
timeout: 5s
retries: 5