Skip to content

Commit 4eaa549

Browse files
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
1 parent 6c3b227 commit 4eaa549

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

jwt/jwks_client.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,9 @@ def __init__(
4848
# Use the same TTL as JWKSetCache for consistency
4949
if cache_keys:
5050
self._key_cache_enabled = True
51-
self._key_cache: Dict[str, tuple[PyJWK, float]] = {} # kid -> (key, timestamp)
51+
self._key_cache: Dict[
52+
str, tuple[PyJWK, float]
53+
] = {} # kid -> (key, timestamp)
5254
self._max_cached_keys = max_cached_keys
5355
self._key_cache_ttl = lifespan # Use same TTL as JWKSetCache
5456
else:
@@ -120,8 +122,9 @@ def _cache_key(self, kid: str, key: PyJWK) -> None:
120122
# Evict oldest if at capacity
121123
if len(self._key_cache) >= self._max_cached_keys and kid not in self._key_cache:
122124
# Simple eviction: remove oldest timestamp
123-
oldest_kid = min(self._key_cache.keys(),
124-
key=lambda k: self._key_cache[k][1])
125+
oldest_kid = min(
126+
self._key_cache.keys(), key=lambda k: self._key_cache[k][1]
127+
)
125128
del self._key_cache[oldest_kid]
126129

127130
self._key_cache[kid] = (key, time.monotonic())

tests/test_jwks_client.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -375,21 +375,21 @@ def test_security_fix_revoked_keys_expire(self):
375375
"kty": "RSA",
376376
"use": "sig",
377377
"n": "0wtlJRY9-ru61LmOgieeI7_rD1oIna9QpBMAOWw8wTuoIhFQFwcIi7MFB7IEfelCPj08vkfLsuFtR8cG07EE4uvJ78bAqRjMsCvprWp4e2p7hqPnWcpRpDEyHjzirEJle1LPpjLLVaSWgkbrVaOD0lkWkP1T1TkrOset_Obh8BwtO-Ww-UfrEwxTyz1646AGkbT2nL8PX0trXrmira8GnrCkFUgTUS61GoTdb9bCJ19PLX9Gnxw7J0BtR0GubopXq8KlI0ThVql6ZtVGN2dvmrCPAVAZleM5TVB61m0VSXvGWaF6_GeOhbFoyWcyUmFvzWhBm8Q38vWgsSI7oHTkEw",
378-
"e": "AQAB"
378+
"e": "AQAB",
379379
}
380380

381381
different_key = {
382382
"kid": "different-key-456",
383383
"kty": "RSA",
384384
"use": "sig",
385385
"n": "39SJ39VgrQ0qMNK74CaueUBlyYsUyuA7yWlHYZ-jAj6tlFKugEVUTBUVbhGF44uOr99iL_cwmr-srqQDEi-jFHdkS6WFkYyZ03oyyx5dtBMtzrXPieFipSGfQ5EGUGloaKDjL-Ry9tiLnysH2VVWZ5WDDN-DGHxuCOWWjiBNcTmGfnj5_NvRHNUh2iTLuiJpHbGcPzWc5-lc4r-_ehw9EFfp2XsxE9xvtbMZ4SouJCiv9xnrnhe2bdpWuu34hXZCrQwE8DjRY3UR8LjyMxHHPLzX2LWNMHjfN3nAZMteS-Ok11VYDFI-4qCCVGo_WesBCAeqCjPLRyZoV27x1YGsUQ",
386-
"e": "AQAB"
386+
"e": "AQAB",
387387
}
388388

389389
jwks_with_key = {"keys": [real_rsa_key]}
390390
jwks_key_revoked = {"keys": [different_key]} # Simulate original key is gone
391391

392-
with patch.object(client, 'fetch_data') as mock_fetch:
392+
with patch.object(client, "fetch_data") as mock_fetch:
393393
# Step 1: Get key (it gets cached)
394394
mock_fetch.return_value = jwks_with_key
395395
key1 = client.get_signing_key("revoked-key-123")
@@ -407,4 +407,3 @@ def test_security_fix_revoked_keys_expire(self):
407407
# New secure code: Raises exception as expected, test passes
408408
with pytest.raises(PyJWKClientError, match="Unable to find a signing key"):
409409
client.get_signing_key("revoked-key-123")
410-

0 commit comments

Comments
 (0)