RF49: Usuario consulta lista 'ver más tarde'
Descripción
Como usuario autenticado, quiero ver mi lista de cursos guardados para "ver más tarde" para retomar fácilmente el contenido que me interesó.
Lista los cursos que el usuario marcó (RF50). Solo muestra la lista del usuario autenticado.
| Campo | Valor |
|---|---|
| Módulo | Courses Module |
| Actor | Usuario autenticado |
| Endpoint | GET /courses/watch-later |
| Precondiciones | Sesión activa |
| Prioridad | Baja (post-MVP) |
| Etapa | MBI 1 |
| Requisitos relacionados | RF50, RF51 |
Reglas de negocio
- RN-49.1 — Solo se devuelve la lista del
user_iddel JWT (aislamiento de datos). - RN-49.2 — Si un curso guardado fue despublicado/eliminado, se omite o se marca como no disponible.
- RN-49.3 — La lista se ordena por fecha de guardado (más reciente primero).
Validaciones de entrada
| Campo | Reglas | Mensaje de error |
|---|---|---|
Authorization | Bearer válido. | "Sesión no válida." (401) |
Criterios de aceptación
Escenario 1: Consulta con elementos
Dado que guardé cursos en "ver más tarde",
Cuando abro la lista,
Entonces el sistema muestra esos cursos,
Y responde 200 OK.
Escenario 2: Lista vacía
Dado que no guardé ningún curso, Cuando abro la lista, Entonces se muestra un estado vacío.
Escenario 3: Curso guardado ya no disponible
Dado que un curso de mi lista fue despublicado, Cuando consulto, Entonces se omite o se marca como no disponible.
Escenario 4: Aislamiento de datos (seguridad)
Dado que se manipula la petición para ver la lista de otro usuario,
Cuando el backend procesa,
Entonces usa el user_id del JWT y nunca devuelve listas ajenas.
Criterios no funcionales
- Respuesta < 1 s.
- Comunicación TLS 1.2+.