148 lines
5.3 KiB
Gherkin
148 lines
5.3 KiB
Gherkin
# Fuente: album/book/ops-templates/pet-owner/05-historial-medico.md
|
|
# Drive: 08. IT y Producto/Funcionalidades Plataforma Veterinario
|
|
# Tests Backend: pytest tests/contracts/mascotas/test_vet_visits.py
|
|
# Tests Frontend: npx playwright test medical-history.spec.ts
|
|
|
|
Feature: Ver historial medico
|
|
|
|
Como dueno de mascota
|
|
Quiero ver el historial medico de mis mascotas
|
|
Para tener registro de sus visitas y tratamientos
|
|
|
|
Background:
|
|
Given que estoy logueado como dueno de mascota
|
|
And tengo una mascota "Luna" con visitas completadas
|
|
|
|
# ============================================
|
|
# ACCESO AL HISTORIAL
|
|
# ============================================
|
|
|
|
Scenario: Acceder al historial desde mascotas
|
|
Given que estoy en "Mis mascotas"
|
|
When hago click en "Luna"
|
|
And voy a la seccion "Historial de visitas"
|
|
Then deberia ver lista de visitas de Luna
|
|
|
|
Scenario: Acceder al historial desde turnos
|
|
Given que estoy en "Mis turnos"
|
|
And filtro por "Completados"
|
|
When hago click en un turno de Luna
|
|
And hago click en "Ver informe medico"
|
|
Then deberia ver el informe de esa visita
|
|
|
|
# ============================================
|
|
# VISUALIZACION DE VISITAS
|
|
# ============================================
|
|
|
|
Scenario: Ver lista de visitas ordenadas
|
|
Given que Luna tiene visitas en las siguientes fechas:
|
|
| fecha |
|
|
| 2024-01-15 |
|
|
| 2023-11-20 |
|
|
| 2023-06-10 |
|
|
When veo el historial de Luna
|
|
Then deberia ver las visitas ordenadas de mas reciente a mas antigua
|
|
And la primera deberia ser del "15 de enero 2024"
|
|
|
|
Scenario: Ver detalle completo de informe
|
|
When hago click en una visita completada
|
|
Then deberia ver los siguientes datos:
|
|
| seccion | contenido |
|
|
| Informacion | Fecha, veterinario, servicios |
|
|
| Examen fisico | Peso, temperatura, FC, obs |
|
|
| Diagnostico | Descripcion del diagnostico |
|
|
| Tratamiento | Plan de tratamiento |
|
|
| Medicamentos | Lista con dosis y frecuencia |
|
|
| Estudios | Estudios solicitados y estado |
|
|
| Seguimiento | Recomendaciones, proximo control |
|
|
|
|
Scenario: Ver informe con medicamentos recetados
|
|
Given que la visita incluye medicamentos:
|
|
"""
|
|
1. Amoxicilina 250mg - 1 comprimido cada 12hs por 7 dias
|
|
2. Meloxicam 1.5mg - 1 comprimido por dia por 3 dias
|
|
"""
|
|
When veo el informe
|
|
Then deberia ver la lista de medicamentos
|
|
And cada medicamento deberia mostrar:
|
|
| campo |
|
|
| Nombre |
|
|
| Dosis |
|
|
| Frecuencia |
|
|
| Duracion |
|
|
|
|
# ============================================
|
|
# DESCARGA Y COMPARTIR
|
|
# ============================================
|
|
|
|
Scenario: Descargar informe como PDF
|
|
Given que estoy viendo un informe medico
|
|
When hago click en "Descargar PDF"
|
|
Then deberia descargarse un archivo PDF
|
|
And el PDF deberia contener toda la informacion del informe
|
|
And deberia tener el logo de Amar Mascotas
|
|
|
|
Scenario: Imprimir informe
|
|
Given que estoy viendo un informe medico
|
|
When hago click en "Imprimir"
|
|
Then deberia abrirse el dialogo de impresion
|
|
And el formato deberia ser optimizado para impresion
|
|
|
|
# ============================================
|
|
# CASOS ESPECIALES
|
|
# ============================================
|
|
|
|
Scenario: Visita completada sin informe cargado
|
|
# El vet no cargo el informe todavia
|
|
Given que Luna tiene una visita marcada como "Completada"
|
|
But el veterinario no cargo el informe aun
|
|
When intento ver el informe
|
|
Then deberia ver mensaje "Informe pendiente"
|
|
And deberia ver "El veterinario esta completando el informe"
|
|
|
|
Scenario: Informe con estudios pendientes
|
|
Given que el informe solicita estudios de laboratorio
|
|
And los resultados aun no estan disponibles
|
|
When veo el informe
|
|
Then deberia ver seccion "Estudios solicitados"
|
|
And deberia ver estado "Pendiente de resultados"
|
|
And deberia ver nota "Se notificara cuando esten listos"
|
|
|
|
Scenario: Mascota con multiples visitas el mismo dia
|
|
# Raro pero posible: consulta de urgencia + seguimiento
|
|
Given que Luna tuvo 2 visitas el 15 de enero
|
|
When veo el historial
|
|
Then deberia ver ambas visitas listadas
|
|
And deberian estar diferenciadas por hora
|
|
|
|
# ============================================
|
|
# PERMISOS Y PRIVACIDAD
|
|
# ============================================
|
|
|
|
Rule: Solo el dueno puede ver el historial de su mascota
|
|
|
|
Scenario: Dueno ve historial de su mascota
|
|
Given que soy dueno de Luna
|
|
When accedo al historial de Luna
|
|
Then deberia poder verlo completo
|
|
|
|
Scenario: No puedo ver historial de mascota ajena
|
|
Given que existe mascota "Rocky" de otro dueno
|
|
When intento acceder al historial de Rocky
|
|
Then deberia ver error "No tienes acceso"
|
|
# 403 Forbidden
|
|
|
|
# ============================================
|
|
# BUSQUEDA Y FILTROS
|
|
# ============================================
|
|
|
|
Scenario: Filtrar historial por tipo de servicio
|
|
Given que Luna tiene visitas de vacunacion y consulta
|
|
When filtro por "Vacunacion"
|
|
Then solo deberia ver visitas de vacunacion
|
|
|
|
Scenario: Buscar en historial por fecha
|
|
When busco visitas del "2023"
|
|
Then solo deberia ver visitas del 2023
|
|
And no deberia ver visitas del 2024
|