Testing
Testing en Moveat existe para proteger la corrección de negocio, no solo para subir un número de coverage. Los bugs más riesgosos son los que corrompen estado: comidas duplicadas, resúmenes calóricos incorrectos, sesiones rotas, conversión de unidades incorrecta, retries de webhooks que escriben dos veces o acciones de Agent que saltean validación de Platform.Los números de coverage fueron medidos el 2026-06-13 desde los repos locales.
Snapshot actual
Platform
21 archivos de test, 61 tests pasando. Coverage existe pero falla el threshold global de 80%.
Agent
Los tests Go pasan. Statement coverage actual: 59.5%. Todavía no hay threshold global.
Filosofía
Prioridad de tests:- Invariantes que pueden corromper datos.
- Auth y autorización.
- Contrato Agent-to-Platform.
- Conversión de unidades y timezone.
- Adapters externos.
- Wiring de bajo riesgo.
Platform
Comandos:Qué cubre Platform
Gaps de Platform
- Branch coverage bajo.
- Workout service necesita más pruebas.
- Redis service tiene poca cobertura.
- Session guard necesita más casos.
- Auth controller necesita más edge cases.
- Lifecycle de Prisma está poco cubierto.
Agent
Comandos:Tests recomendados
- Platform client de Agent con token, timeout, correlation ID e idempotency key.
- Idempotencia de meal logging ante retries.
- Session guard con sesiones faltantes, expiradas y malformadas.
- Workout logging con ejercicios, sets y payloads inválidos.
- Parser LLM con JSON incompleto o parcialmente válido.
- Media download con MIME validation y fallos de Meta API.
