Build Flask WAF log converter app
This commit is contained in:
46
tests/test_processing.py
Normal file
46
tests/test_processing.py
Normal 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",
|
||||
]
|
||||
Reference in New Issue
Block a user