feat(gherkin): ajouter features contenus géolocalisés mode voiture

Ajout et enrichissement des fichiers Gherkin pour les contenus
géolocalisés en mode voiture selon règles métier section 17:

API Backend (notifications-geolocalisees.feature):
- Edge cases haute vitesse (130 km/h, 180 km/h)
- Gestion multiples points géolocalisés proches (800m)
- Cooldown réduit après validations multiples
- Mode stationnement (vitesse < 1 km/h pendant 2 min)

UI Mobile (contenus-geolocalises-voiture.feature) - nouveau fichier:
- Notification visuelle minimaliste (icône + compteur, pas de texte)
- Validation "Suivant" et décompte 5 secondes
- Transitions audio fluides (fade in/out)
- Conformité CarPlay/Android Auto (sonore uniquement)
- Navigation avec contenus géolocalisés
- Annulation décompte et gestion historique

UI Navigation (commande-precedent.feature):
- Comportement "Précédent" avec contenus géolocalisés
- Historique mixte buffer et géolocalisés
- Règle 10s pour replay/retour
- Notification ignorée/annulée n'entre pas dans historique
This commit is contained in:
jpgiannetti
2026-02-02 22:53:13 +01:00
parent a19a901ed4
commit 7d3b32856e
3 changed files with 497 additions and 0 deletions

View File

@@ -175,3 +175,92 @@ Fonctionnalité: Commande "Précédent"
| 5:00 |
| 7:23 |
| 9:50 |
# Comportement avec contenus géolocalisés
Scénario: Précédent après avoir écouté un contenu géolocalisé ≥10s
Étant donné que j'écoute un contenu buffer "C1"
Et qu'une notification géolocalisée "Tour Eiffel" apparaît
Quand j'accepte la notification (décompte 5s)
Et que le contenu géolocalisé démarre
Et que je l'écoute pendant 42 secondes
Quand j'appuie sur "Suivant" (skip)
Alors le contenu buffer suivant "C2" démarre
Et le contenu géolocalisé entre dans l'historique:
"""json
{
"id": "geo_tour_eiffel",
"position_seconds": 42,
"type": "geo_anchored"
}
"""
Quand j'appuie sur "Précédent"
Alors le contenu géolocalisé reprend à 42 secondes
Car j'ai écouté 10 secondes
Scénario: Précédent après avoir écouté un contenu géolocalisé <10s
Étant donné que j'ai accepté un contenu géolocalisé "Château"
Et que je l'ai écouté pendant 5 secondes uniquement
Quand j'appuie sur "Suivant" (skip)
Alors le contenu buffer suivant démarre
Quand j'appuie sur "Précédent"
Alors je reviens au contenu AVANT le géolocalisé
Et le contenu géolocalisé n'est PAS rejoué
Car j'ai écouté < 10 secondes
Scénario: Notification géolocalisée ignorée n'entre PAS dans historique
Étant donné que j'écoute un contenu "A"
Et qu'une notification géolocalisée apparaît (compteur 71)
Quand je n'appuie PAS sur "Suivant" (notification ignorée)
Alors le contenu "A" continue normalement
Et le contenu géolocalisé n'entre PAS dans l'historique
Quand j'appuie sur "Précédent"
Alors je reviens au contenu précédent "A-1"
Et le contenu géolocalisé ignoré n'apparaît jamais
Scénario: Annulation décompte géolocalisé n'entre PAS dans historique
Étant donné qu'une notification géolocalisée est acceptée
Et que le décompte "5" démarre (543...)
Quand j'appuie sur "Suivant" pendant le décompte (annulation)
Alors le décompte est annulé
Et le contenu buffer suivant démarre
Et le contenu géolocalisé n'entre PAS dans l'historique
Quand j'appuie sur "Précédent"
Alors je reviens au contenu avant le décompte
Et le contenu géolocalisé annulé n'apparaît jamais
Scénario: Historique mixte contenus buffer et géolocalisés
Étant donné que j'ai écouté dans l'ordre:
| contenu | type | position_seconds |
| Buffer 1 | contextuel | 180 |
| Géo Tour Eiffel | geo_anchored | 42 |
| Buffer 2 | neutre | 90 |
| Buffer 3 | contextuel | 30 |
Et que j'écoute maintenant "Buffer 4" depuis 2 secondes
Quand j'appuie sur "Précédent" (1ère fois)
Alors je reviens à "Buffer 3" à 30 secondes
Quand j'appuie sur "Précédent" (2ème fois, <10s)
Alors je reviens à "Buffer 2" à 90 secondes
Quand j'appuie sur "Précédent" (3ème fois, <10s)
Alors je reviens à "Géo Tour Eiffel" à 42 secondes
Quand j'appuie sur "Précédent" (4ème fois, <10s)
Alors je reviens à "Buffer 1" à 180 secondes
Scénario: Contenu géolocalisé dans limite FIFO 10 contenus
Étant donné que j'ai un historique de 10 contenus incluant 3 géolocalisés:
| position | contenu | type |
| 1 | Buffer 1 | contextuel |
| 2 | Géo A | geo_anchored |
| 3 | Buffer 2 | neutre |
| 4 | Géo B | geo_anchored |
| 5-9 | Buffer 3-7 | contextuel |
| 10 | Géo C | geo_anchored |
Quand j'ajoute un 11ème contenu "Buffer 8"
Alors "Buffer 1" (le plus ancien) est supprimé
Et l'historique contient:
| position | contenu |
| 1 | Géo A |
| 2 | Buffer 2 |
| ... | ... |
| 10 | Buffer 8 |
Et les contenus géolocalisés suivent la même règle FIFO