diff --git a/tests/test_timer.py b/tests/test_timer.py new file mode 100644 index 00000000..7f4945ec --- /dev/null +++ b/tests/test_timer.py @@ -0,0 +1,13 @@ +from toolkit.timer import Timer + + +def test_print_ignores_cancelled_timer_without_samples(): + timer = Timer() + printed_timings = [] + timer.add_after_print_hook(printed_timings.append) + + timer.start("cancelled") + timer.cancel("cancelled") + timer.print() + + assert printed_timings == [{}] diff --git a/toolkit/timer.py b/toolkit/timer.py index e849ba5f..09779dc8 100644 --- a/toolkit/timer.py +++ b/toolkit/timer.py @@ -48,6 +48,8 @@ class Timer: timing_dict = {} # sort by longest at top for timer_name, timings in sorted(self.timers.items(), key=lambda x: sum(x[1]), reverse=True): + if not timings: + continue avg_time = sum(timings) / len(timings) if not is_ui: