R-009 — Endpoint retorna a posição atual na jornada de áudio
TLDR:
GET /v1/audios/journeydevolve posição atual, total e estado de conclusão; usuário sem jornada recebe 404.
Regra originalmente identificada como RN08 em
docs/audio/audio_journey/RULES.md.
Given / When / Then
Dado que o usuário possui um UserJourney associado
Quando acessa GET /v1/audios/journey
Então recebe:
journey_completed—truequandocurrent_journey_audioénullcurrent_position—UserJourney.current_position: posição docurrent_journey_audio; quando concluída, posição doprevious_journey_audiototal—UserJourney.total_items:journey.journey_audios.count()user_id—request.user.id
Dado que o usuário não possui UserJourney
Quando acessa GET /v1/audios/journey
Então recebe HTTP 404
Teste vinculado
tests/audios/test_views_urls.py — test_journey_view_returns_current_position_and_total, test_journey_view_returns_completed_state, test_journey_view_returns_404_when_no_user_journey