freqtrade_origin/tests/util/test_measure_time.py

33 lines
730 B
Python
Raw Normal View History

2024-04-17 18:57:18 +00:00
from unittest.mock import MagicMock
import time_machine
from freqtrade.util import MeasureTime
def test_measure_time():
callback = MagicMock()
with time_machine.travel("2021-09-01 05:00:00 +00:00", tick=False) as t:
measure = MeasureTime(callback, 5, ttl=60)
with measure:
pass
assert callback.call_count == 0
with measure:
t.shift(10)
assert callback.call_count == 1
callback.reset_mock()
with measure:
t.shift(10)
assert callback.call_count == 0
callback.reset_mock()
# Shift past the ttl
t.shift(45)
with measure:
t.shift(10)
assert callback.call_count == 1