Build Flask WAF log converter app

This commit is contained in:
Alfredo Di Stasio
2026-04-24 14:40:32 +02:00
parent f9579bd253
commit 355d61f11f
23 changed files with 1053 additions and 1 deletions

46
tests/test_processing.py Normal file
View File

@@ -0,0 +1,46 @@
from app.services.processing import ProcessingOptions, filter_records, sort_records
def test_filter_records_supports_case_insensitive_filters():
records = [
{"policy": "ProdPolicy", "severity_level": "HIGH"},
{"policy": "OtherPolicy", "severity_level": "low"},
]
options = ProcessingOptions(
policy_cs="",
policy_ci="prod",
severity_cs="",
severity_ci="high",
sort_by="datetime",
order="asc",
mode="vendor",
)
filtered = filter_records(records, options)
assert filtered == [{"policy": "ProdPolicy", "severity_level": "HIGH"}]
def test_sort_records_by_severity_desc_uses_defined_ranking():
records = [
{"severity_level": "medium"},
{"severity_level": "critical"},
{"severity_level": "info"},
]
options = ProcessingOptions(
policy_cs="",
policy_ci="",
severity_cs="",
severity_ci="",
sort_by="severity",
order="desc",
mode="vendor",
)
sorted_records = sort_records(records, options)
assert [record["severity_level"] for record in sorted_records] == [
"critical",
"medium",
"info",
]