testsAndMisc-archive/python_pkg/lichess_bot/tests/test_utils.py

27 lines
746 B
Python
Raw Permalink Normal View History

"""Tests for utility functions."""
import pytest
from python_pkg.lichess_bot.utils import backoff_sleep
def test_backoff_sleep_increments_and_caps(monkeypatch: pytest.MonkeyPatch) -> None:
"""Test that backoff sleep increments and respects the cap."""
slept: list[float] = []
def fake_sleep(sec: float) -> None:
slept.append(sec)
monkeypatch.setattr("time.sleep", fake_sleep)
b = 0
b = backoff_sleep(b, base=0.1, cap=0.3)
b = backoff_sleep(b, base=0.1, cap=0.3)
b = backoff_sleep(b, base=0.1, cap=0.3)
assert b >= 1
assert len(slept) == 3
# Expected sleep values: first=0.1, second=0.2, third=0.3 (capped)
assert slept[0] == 0.1
assert slept[1] == 0.2
assert slept[2] == 0.3