test(ci): align publish_test_metrics unit tests with current API
This commit is contained in:
parent
2d0360be3b
commit
12293c9d11
@ -83,31 +83,15 @@ def test_read_exit_code_and_summary_fallbacks(tmp_path: Path):
|
||||
|
||||
|
||||
def test_summary_extractors_handle_invalid_shapes_and_values():
|
||||
assert publish_test_metrics._summary_coverage_percent(None) == 0.0
|
||||
assert publish_test_metrics._summary_coverage_percent({"results": "not-a-list"}) == 0.0
|
||||
assert publish_test_metrics._summary_coverage_percent({"results": [42, {"name": "coverage", "status": "failed"}]}) == 0.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") == 0.0
|
||||
assert publish_test_metrics._summary_float({"workspace_line_coverage_percent": "bad"}, "workspace_line_coverage_percent") == 0.0
|
||||
assert publish_test_metrics._summary_float({"workspace_line_coverage_percent": 95}, "workspace_line_coverage_percent") == 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_source_lines_over_500({"results": "not-a-list"}) == 0
|
||||
assert publish_test_metrics._summary_source_lines_over_500({"results": [42, {"name": "hygiene", "issues": "bad"}]}) == 0
|
||||
assert (
|
||||
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
|
||||
)
|
||||
assert publish_test_metrics._summary_int({}, "source_lines_over_500") == 0
|
||||
assert publish_test_metrics._summary_int({"source_lines_over_500": "bad"}, "source_lines_over_500") == 0
|
||||
assert publish_test_metrics._summary_int({"source_lines_over_500": 2}, "source_lines_over_500") == 2
|
||||
assert publish_test_metrics._summary_int({"source_lines_over_500": 2.9}, "source_lines_over_500") == 2
|
||||
|
||||
|
||||
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,
|
||||
branch="main",
|
||||
build_number="42",
|
||||
workspace_coverage_percent=95.0,
|
||||
workspace_line_coverage_percent=95.0,
|
||||
source_lines_over_500=0,
|
||||
summary={
|
||||
"results": [
|
||||
@ -257,7 +241,7 @@ def test_build_payload_skips_incomplete_results():
|
||||
failed_count=2,
|
||||
branch="",
|
||||
build_number="",
|
||||
workspace_coverage_percent=0.0,
|
||||
workspace_line_coverage_percent=0.0,
|
||||
source_lines_over_500=1,
|
||||
summary={"results": [{"name": "docs"}, {"status": "ok"}]},
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user