test(ci): align publish_test_metrics unit tests with current API

This commit is contained in:
Brad Stein 2026-04-19 16:18:35 -03:00
parent 2d0360be3b
commit 12293c9d11

View File

@ -83,31 +83,15 @@ def test_read_exit_code_and_summary_fallbacks(tmp_path: Path):
def test_summary_extractors_handle_invalid_shapes_and_values(): def test_summary_extractors_handle_invalid_shapes_and_values():
assert publish_test_metrics._summary_coverage_percent(None) == 0.0 assert publish_test_metrics._summary_float({}, "workspace_line_coverage_percent") == 0.0
assert publish_test_metrics._summary_coverage_percent({"results": "not-a-list"}) == 0.0 assert publish_test_metrics._summary_float({"workspace_line_coverage_percent": "bad"}, "workspace_line_coverage_percent") == 0.0
assert publish_test_metrics._summary_coverage_percent({"results": [42, {"name": "coverage", "status": "failed"}]}) == 0.0 assert publish_test_metrics._summary_float({"workspace_line_coverage_percent": 95}, "workspace_line_coverage_percent") == 95.0
assert publish_test_metrics._summary_coverage_percent({"results": [{"name": "coverage", "status": "ok"}]}) == 95.0 assert publish_test_metrics._summary_float({"workspace_line_coverage_percent": 97.5}, "workspace_line_coverage_percent") == 97.5
assert publish_test_metrics._summary_source_lines_over_500(None) == 0 assert publish_test_metrics._summary_int({}, "source_lines_over_500") == 0
assert publish_test_metrics._summary_source_lines_over_500({"results": "not-a-list"}) == 0 assert publish_test_metrics._summary_int({"source_lines_over_500": "bad"}, "source_lines_over_500") == 0
assert publish_test_metrics._summary_source_lines_over_500({"results": [42, {"name": "hygiene", "issues": "bad"}]}) == 0 assert publish_test_metrics._summary_int({"source_lines_over_500": 2}, "source_lines_over_500") == 2
assert ( assert publish_test_metrics._summary_int({"source_lines_over_500": 2.9}, "source_lines_over_500") == 2
publish_test_metrics._summary_source_lines_over_500(
{
"results": [
{
"name": "hygiene",
"issues": [
"services/foo.py has 501 lines (max 500)",
"a different issue",
"scripts/bar.sh has 777 lines > 500",
],
}
]
}
)
== 2
)
def test_read_text_post_text_and_fetch_existing_counter(monkeypatch): def test_read_text_post_text_and_fetch_existing_counter(monkeypatch):
@ -233,7 +217,7 @@ def test_build_payload_includes_summary_metrics():
failed_count=2, failed_count=2,
branch="main", branch="main",
build_number="42", build_number="42",
workspace_coverage_percent=95.0, workspace_line_coverage_percent=95.0,
source_lines_over_500=0, source_lines_over_500=0,
summary={ summary={
"results": [ "results": [
@ -257,7 +241,7 @@ def test_build_payload_skips_incomplete_results():
failed_count=2, failed_count=2,
branch="", branch="",
build_number="", build_number="",
workspace_coverage_percent=0.0, workspace_line_coverage_percent=0.0,
source_lines_over_500=1, source_lines_over_500=1,
summary={"results": [{"name": "docs"}, {"status": "ok"}]}, summary={"results": [{"name": "docs"}, {"status": "ok"}]},
) )