# language: fr
Fonctionnalité: Connexion utilisateur
  En tant qu'utilisateur existant
  Je veux me connecter à mon compte
  Afin d'accéder à mes contenus et paramètres

  Contexte:
    Étant donné que l'API RoadWave est disponible
    Et qu'un utilisateur existe avec:
      | email        | mot_de_passe |
      | user@test.fr | Password123  |

  Scénario: Connexion réussie avec identifiants valides
    Quand je me connecte avec:
      | email        | mot_de_passe |
      | user@test.fr | Password123  |
    Alors je suis connecté avec succès
    Et je reçois un access token valide pour 15 minutes
    Et je reçois un refresh token valide pour 30 jours

  Scénario: Connexion échouée avec email inexistant
    Quand je me connecte avec l'email "inexistant@test.fr"
    Alors la connexion échoue
    Et je vois le message "Email ou mot de passe incorrect"

  Scénario: Connexion échouée avec mot de passe incorrect
    Quand je me connecte avec:
      | email        | mot_de_passe |
      | user@test.fr | MauvaisPass1 |
    Alors la connexion échoue
    Et je vois le message "Email ou mot de passe incorrect"

  Scénario: Blocage après 5 tentatives échouées
    Étant donné que j'ai échoué 4 tentatives de connexion
    Quand j'échoue une 5ème tentative de connexion
    Alors mon compte est temporairement bloqué
    Et je vois le message "Compte bloqué pour 15 minutes après 5 tentatives échouées"
    Et je reçois un email de notification de blocage

  Scénario: Tentative de connexion pendant le blocage
    Étant donné que mon compte est bloqué suite à 5 tentatives échouées
    Et que seulement 5 minutes se sont écoulées
    Quand j'essaie de me connecter avec les bons identifiants
    Alors la connexion échoue
    Et je vois le message "Compte bloqué. Réessayez dans 10 minutes"

  Scénario: Déblocage automatique après 15 minutes
    Étant donné que mon compte est bloqué suite à 5 tentatives échouées
    Et que 15 minutes se sont écoulées
    Quand je me connecte avec les bons identifiants
    Alors je suis connecté avec succès
    Et le compteur de tentatives est réinitialisé

  Scénario: Reset du compteur après connexion réussie
    Étant donné que j'ai échoué 3 tentatives de connexion
    Quand je me connecte avec les bons identifiants
    Alors je suis connecté avec succès
    Et le compteur de tentatives est remis à 0

  Scénario: Reset automatique du compteur après 15 minutes sans blocage
    Étant donné que j'ai échoué 3 tentatives de connexion
    Et que 15 minutes se sont écoulées sans nouvelle tentative
    Quand je consulte mon compteur de tentatives
    Alors le compteur est réinitialisé à 0

  Scénario: Déblocage via lien "Mot de passe oublié"
    Étant donné que mon compte est bloqué suite à 5 tentatives échouées
    Quand j'utilise la fonction "Mot de passe oublié"
    Et que je réinitialise mon mot de passe
    Alors le blocage est levé immédiatement
    Et je peux me connecter avec le nouveau mot de passe

  Scénario: Email de notification lors d'un blocage
    Étant donné que j'ai échoué 5 tentatives de connexion
    Alors je reçois un email avec:
      | sujet              | Tentatives de connexion suspectes détectées |
      | contenu_contient   | Votre compte a été temporairement bloqué    |
      | lien_mot_de_passe  | présent                                     |

  Scénario: Connexion multi-device simultanée autorisée
    Étant donné que je suis connecté sur un appareil iOS
    Quand je me connecte également sur un appareil Android
    Alors les deux sessions sont actives simultanément
    Et je peux utiliser l'application sur les deux appareils
