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:
@@ -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 7→1)
|
||||
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 (5→4→3...)
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user