fase 1: registro de comprobantes con código de seguimiento
Nueva tabla comprobantes (creada en init_db) y módulo seguimiento.py: cada comprobante recibe un código ABR-AAMMDD-NNNNN que conserva si reaparece en otro correo, más su resultado (aceptado/rechazado/error) y el estado de la notificación. El pipeline lo registra por factura sin bloquear el flujo si el seguimiento falla. Las pruebas usan una BD temporal para no tocar emails.db. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9d295d6485
commit
297cfde0e1
9 files changed
+563
-6
No files matched your search
@@ -2,6 +2,8 @@ import os
|
||||
|
||||
import pytest
|
||||
|
||||
import database_utilities
|
||||
|
||||
RAIZ = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
FIXTURES = os.path.join(RAIZ, "tests", "fixtures", "correos_prueba")
|
||||
GOLDEN = os.path.join(RAIZ, "tests", "golden")
|
||||
@@ -11,3 +13,13 @@ GOLDEN = os.path.join(RAIZ, "tests", "golden")
|
||||
def actualizar_golden() -> bool:
|
||||
"""True si se ejecutó con ``UPDATE_GOLDEN=1`` (regenera los resultados esperados)."""
|
||||
return os.environ.get("UPDATE_GOLDEN") == "1"
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def base_de_datos_temporal(tmp_path_factory, monkeypatch):
|
||||
"""
|
||||
Toda prueba usa una BD SQLite propia: ``DB_NAME`` es relativo al directorio
|
||||
de trabajo, así que sin esto se escribiría en el ``emails.db`` real.
|
||||
"""
|
||||
monkeypatch.setattr(database_utilities, "DB_NAME", str(tmp_path_factory.mktemp("bd") / "emails_prueba.db"))
|
||||
database_utilities.init_db()
|
||||
Reference in new issue
Block a user