blob: ff65251945ed7431d3a96ee3daf613bbe8df3419 [file] [log] [blame]
from __future__ import annotations
import sys
from typing import Any
from tools.testing.target_determination.heuristics import (
AggregatedHeuristics as AggregatedHeuristics,
HEURISTICS,
TestPrioritizations as TestPrioritizations,
)
def get_test_prioritizations(
tests: list[str], file: Any = sys.stdout
) -> AggregatedHeuristics:
aggregated_results = AggregatedHeuristics(tests)
print(f"Received {len(tests)} tests to prioritize", file=file)
for test in tests:
print(f" {test}", file=file)
for heuristic in HEURISTICS:
new_rankings: TestPrioritizations = heuristic.get_prediction_confidence(tests)
aggregated_results.add_heuristic_results(heuristic, new_rankings)
print(f"Results from {heuristic.__class__.__name__}")
print(new_rankings.get_info_str(verbose=False), file=file)
return aggregated_results