import pytest from fixed_window import FixedWindowLimiter def test_limit_respected(): limiter = FixedWindowLimiter(10, 10) try: for i in range(9): with limiter: pass except RuntimeError as e: assert False, f"Limiter raised an exception -> {e}" def test_limit_enforced(): limiter = FixedWindowLimiter(10, 10) with pytest.raises(RuntimeError) as e: for i in range(11): with limiter: pass assert "Rate exceeded" in str(e.value)