blob: 03490e57c6033984d02225695982a0efe5a00d95 [file] [log] [blame]
from typing import List
from tools.testing.target_determination.heuristics import (
AggregatedHeuristics as AggregatedHeuristics,
HEURISTICS,
TestPrioritizations as TestPrioritizations,
)
def get_test_prioritizations(tests: List[str]) -> AggregatedHeuristics:
aggregated_results = AggregatedHeuristics(unranked_tests=tests)
print(f"Received {len(tests)} tests to prioritize")
for test in tests:
print(f" {test}")
for heuristic in HEURISTICS:
new_rankings: TestPrioritizations = heuristic.get_test_priorities(tests)
aggregated_results.add_heuristic_results(heuristic, new_rankings)
num_tests_found = len(new_rankings.get_prioritized_tests())
print(
f"Heuristic {heuristic} identified {num_tests_found} tests "
+ f"to prioritize ({(num_tests_found / len(tests)):.2%}%)"
)
if num_tests_found:
new_rankings.print_info()
return aggregated_results