SPB Git

spb/findata

Public
1.0 KB · 30 lines python
1from __future__ import annotations23import httpx4import pytest56from findata_core.redact import redact7from findata_market_firstrate.client import FRDClient, FRDError8from tests.conftest import TEST_USERID91011def test_redact_query_params_and_values():12    s = f"GET https://firstratedata.com/api/last_update?type=stock&userid={TEST_USERID} failed; api_key=abc"13    out = redact(s, [TEST_USERID])14    assert TEST_USERID not in out and "api_key=<REDACTED>" in out and "userid=<REDACTED>" in out151617def test_client_never_leaks_userid_in_errors(vendor):18    c = FRDClient(TEST_USERID, min_interval_s=0)19    assert TEST_USERID not in c.sanitized_url("last_update", {"type": "stock"})20    with pytest.raises(FRDError) as ei:21        c._get_text("does_not_exist", {"type": "stock"})22    assert TEST_USERID not in str(ei.value)232425def test_settings_repr_hides_secrets():26    from findata_core.config import get_settings27    s = get_settings()28    assert TEST_USERID not in repr(s) and TEST_USERID not in str(s.model_dump())29    assert TEST_USERID in s.secret_values()30
Files · d6d35c99819515b0fe452508c04019b74b1f802d
Menu

Theme