Initial commit
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
from datetime import datetime, timezone
|
||||
|
||||
from sqlalchemy import create_engine
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.db import Base
|
||||
from app.homepage import homepage_summary, latest_summary
|
||||
from app.models import Alert, LLMReport, Record, Report
|
||||
|
||||
|
||||
def test_homepage_api_status_calculation():
|
||||
engine = create_engine("sqlite:///:memory:", future=True)
|
||||
Base.metadata.create_all(engine)
|
||||
session = Session(engine)
|
||||
report = Report(
|
||||
inbox_id="tukutoi",
|
||||
raw_xml_sha256="sha-homepage",
|
||||
report_id="r1",
|
||||
org_name="google.com",
|
||||
domain="tukutoi.com",
|
||||
date_begin=datetime.now(timezone.utc),
|
||||
date_end=datetime.now(timezone.utc),
|
||||
)
|
||||
session.add(report)
|
||||
session.flush()
|
||||
session.add(Record(report=report, source_ip="198.51.100.1", count=99, dmarc_pass=True, spf_aligned=True, dkim_aligned=True))
|
||||
session.add(Record(report=report, source_ip="203.0.113.10", count=1, dmarc_pass=False, spf_aligned=False, dkim_aligned=False))
|
||||
session.add(
|
||||
Alert(
|
||||
fingerprint="tukutoi.com:new_unknown_source:203.0.113.10",
|
||||
inbox_id="tukutoi",
|
||||
domain="tukutoi.com",
|
||||
severity="warning",
|
||||
type="new_unknown_source",
|
||||
title="New unknown source",
|
||||
summary="summary",
|
||||
details_json="{}",
|
||||
)
|
||||
)
|
||||
session.commit()
|
||||
|
||||
data = homepage_summary(session)
|
||||
|
||||
assert data["status"] == "warning"
|
||||
assert data["dmarc_pass_rate"] == "99.0%"
|
||||
assert data["warnings"] == 1
|
||||
|
||||
|
||||
def test_overview_summary_prefers_portfolio_report():
|
||||
engine = create_engine("sqlite:///:memory:", future=True)
|
||||
Base.metadata.create_all(engine)
|
||||
session = Session(engine)
|
||||
now = datetime.now(timezone.utc)
|
||||
session.add_all(
|
||||
[
|
||||
LLMReport(
|
||||
domain="tukutoi.com",
|
||||
period_start=now,
|
||||
period_end=now,
|
||||
report_type="posture",
|
||||
input_json="{}",
|
||||
output_json="{}",
|
||||
plain_text="single domain",
|
||||
),
|
||||
LLMReport(
|
||||
domain="__all__",
|
||||
period_start=now,
|
||||
period_end=now,
|
||||
report_type="posture",
|
||||
input_json="{}",
|
||||
output_json="{}",
|
||||
plain_text="portfolio",
|
||||
),
|
||||
]
|
||||
)
|
||||
session.commit()
|
||||
|
||||
assert latest_summary(session) == "portfolio"
|
||||
assert latest_summary(session, "tukutoi.com") == "single domain"
|
||||
Reference in New Issue
Block a user