Skip to content

Commit bd36cae

Browse files
authored
Merge pull request #698 from FlorentinD/fix-token-refresh-logic
Fix token refresh logic
2 parents 33d7d68 + 267da9d commit bd36cae

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

graphdatascience/session/aura_api.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ def __init__(self, json: Dict[str, Any]) -> None:
285285
self.refresh_at = int(time.time()) + refresh_in
286286

287287
def should_refresh(self) -> bool:
288-
return self.refresh_at >= int(time.time())
288+
return self.refresh_at <= int(time.time())
289289

290290
def __init__(self, oauth_url: str, credentials: Tuple[str, str]) -> None:
291291
self._token: Optional[AuraApi.Auth.Token] = None

graphdatascience/tests/unit/test_aura_api.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -392,7 +392,7 @@ def test_auth_token(requests_mock: Mocker) -> None:
392392

393393
requests_mock.post(
394394
"https://api.neo4j.io/oauth/token",
395-
json={"access_token": "very_short_token", "expires_in": 1, "token_type": "Bearer"},
395+
json={"access_token": "very_short_token", "expires_in": 0, "token_type": "Bearer"},
396396
)
397397

398398
assert api._auth._auth_token() == "very_short_token"
@@ -414,6 +414,13 @@ def test_auth_token_reused(requests_mock: Mocker) -> None:
414414
)
415415

416416
assert api._auth._auth_token() == "one_token"
417+
418+
requests_mock.post(
419+
"https://api.neo4j.io/oauth/token",
420+
json={"access_token": "new_token", "expires_in": 3600, "token_type": "Bearer"},
421+
)
422+
423+
# no new token requested
417424
assert api._auth._auth_token() == "one_token"
418425

419426

0 commit comments

Comments
 (0)