diff options
Diffstat (limited to 'testsuite/driver/perf_notes.py')
-rw-r--r-- | testsuite/driver/perf_notes.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/testsuite/driver/perf_notes.py b/testsuite/driver/perf_notes.py index dcaa3d11ca..6607023622 100644 --- a/testsuite/driver/perf_notes.py +++ b/testsuite/driver/perf_notes.py @@ -23,6 +23,7 @@ from collections import namedtuple from math import ceil, trunc from testutil import passed, failBecause, testing_metrics +from term_color import Color, colored from my_typing import * @@ -82,6 +83,15 @@ class MetricChange(Enum): # The metric decreased. Decrease = 'Decrease' + def __str__(self): + strings = { + MetricChange.NewMetric: colored(Color.BLUE, "new"), + MetricChange.NoChange: colored(Color.WHITE, "unchanged"), + MetricChange.Increase: colored(Color.RED, "increased"), + MetricChange.Decrease: colored(Color.GREEN, "decreased") + } + return strings[self] + AllowedPerfChange = NamedTuple('AllowedPerfChange', [('direction', MetricChange), ('metrics', List[str]), @@ -562,7 +572,7 @@ def check_stats_change(actual: PerfStat, # Print errors and create pass/fail object. result = passed() if not change_allowed: - error = change.value + ' from ' + baseline.perfStat.test_env + \ + error = str(change) + ' from ' + baseline.perfStat.test_env + \ ' baseline @ HEAD~' + str(baseline.commitDepth) print(actual.metric, error + ':') result = failBecause('stat ' + error, tag='stat') |