Files
INFRAESTRUCTURA/tests/test_aviso.py
2026-10-03 17:13:39 +02:00

33 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
"""Tests de `monitor_estado.aviso` — voz solo si requiere atencion (RF-14, RF-15)."""
import monitor_estado.aviso as aviso
def test_aviso_dispara_con_atencion():
llamadas = []
r = {"fallo_ia": False, "requiere_atencion": [{"fuente": "jira", "texto": "caido"}]}
assert aviso.avisar(r, cfg={"aviso": {"voz": True}}, _runner=lambda t: llamadas.append(t)) is True
assert llamadas == ["fin"]
def test_ciclo_sin_novedad_no_avisa():
llamadas = []
r = {"fallo_ia": False, "requiere_atencion": [], "resumen_md": "Sin novedades."}
assert aviso.avisar(r, cfg={"aviso": {"voz": True}}, _runner=lambda t: llamadas.append(t)) is False
assert llamadas == []
def test_aviso_dispara_con_fallo_ia():
llamadas = []
r = {"fallo_ia": True, "requiere_atencion": []}
assert aviso.avisar(r, cfg={"aviso": {"voz": True}}, _runner=lambda t: llamadas.append(t)) is True
assert llamadas == ["error"]
def test_aviso_desactivado_por_config():
llamadas = []
r = {"fallo_ia": False, "requiere_atencion": [{"texto": "x"}]}
assert aviso.avisar(r, cfg={"aviso": {"voz": False}}, _runner=lambda t: llamadas.append(t)) is False
assert llamadas == []