diff --git a/yunke-server/tests/test_config.py b/yunke-server/tests/test_config.py index 09f3584..006cde9 100644 --- a/yunke-server/tests/test_config.py +++ b/yunke-server/tests/test_config.py @@ -79,9 +79,9 @@ def test_stealth_defaults_are_conservative(): jittered defaults declared here. """ f = Settings.model_fields - assert f["request_min_interval"].default == 1.0 - assert f["request_jitter"].default == 0.8 - assert f["max_requests_per_run"].default == 0 - assert f["risk_backoff_base"].default == 2.0 - assert f["risk_backoff_max"].default == 60.0 - assert f["risk_backoff_attempts"].default == 4 + assert f["request_min_interval"].default == 2.0 + assert f["request_jitter"].default == 2.5 + assert f["max_requests_per_run"].default == 300 + assert f["risk_backoff_base"].default == 5.0 + assert f["risk_backoff_max"].default == 120.0 + assert f["risk_backoff_attempts"].default == 6 diff --git a/yunke-server/tests/test_yunke_client_stealth.py b/yunke-server/tests/test_yunke_client_stealth.py index f5e3434..085a726 100644 --- a/yunke-server/tests/test_yunke_client_stealth.py +++ b/yunke-server/tests/test_yunke_client_stealth.py @@ -43,8 +43,8 @@ UA = ( ) SEC_CH_UA = '"Not;A=Brand";v="8", "Chromium";v="150", "Google Chrome";v="150"' -# Backoff schedule uses base=2.0 so expected delays are 2.0, 4.0, 8.0, ... -BACKOFF_BASE = 2.0 +# Backoff schedule uses base=5.0 so expected delays are 5.0, 10.0, 20.0, ... +BACKOFF_BASE = 5.0 # A real RSA keypair backing the mocked ``getSecureKey`` endpoint so the real # RSA step in ``pc_login`` has a valid key to encrypt against (mirrors the @@ -179,8 +179,8 @@ async def test_429_triggers_backoff_retry_then_success( assert resp.json() == {"data": [{"id": 1}]} # Initial try + two retries after backoff. assert route.call_count == 3 - # base * 2**0 = 2.0, base * 2**1 = 4.0 - assert delays == [2.0, 4.0] + # base * 2**0 = 5.0, base * 2**1 = 10.0 + assert delays == [5.0, 10.0] @respx.mock @@ -225,7 +225,7 @@ async def test_persistent_429_raises_after_backoff_attempts(monkeypatch): with pytest.raises(httpx.HTTPStatusError): await c.post(DATA_PATH, json={}) # 1 initial attempt + 2 retries = 3 upstream calls, 2 backoff sleeps. - assert delays == [2.0, 4.0] + assert delays == [5.0, 10.0] finally: await c.aclose()