Esempio n. 1
0
 def test_get_auth_token_doesnt_refresh_if_refresh_token_and_future_expiration(
         self, monkeypatch):
     refresh_token = MagicMock()
     monkeypatch.setattr("prefect.Client._refresh_access_token",
                         refresh_token)
     client = Client(api_token="api")
     client._access_token = "access"
     client._refresh_token = "refresh"
     client._access_token_expires_at = pendulum.now().add(minutes=10)
     assert client.get_auth_token() == "access"
     refresh_token.assert_not_called()
Esempio n. 2
0
 def test_get_auth_token_refreshes_if_refresh_token_and_no_expiration(
         self, monkeypatch):
     refresh_token = MagicMock()
     monkeypatch.setattr("prefect.Client._refresh_access_token",
                         refresh_token)
     client = Client(api_token="api")
     client._access_token = "access"
     client._refresh_token = "refresh"
     client._access_token_expires_at = None
     client.get_auth_token()
     assert refresh_token.called
Esempio n. 3
0
 def test_get_auth_token_refreshes_if_refresh_token_and_expiration_within_30_seconds(
         self, monkeypatch):
     refresh_token = MagicMock()
     monkeypatch.setattr("prefect.Client._refresh_access_token",
                         refresh_token)
     client = Client(api_token="api")
     client._access_token = "access"
     client._refresh_token = "refresh"
     client._access_token_expires_at = pendulum.now().add(seconds=29)
     client.get_auth_token()
     assert refresh_token.called
Esempio n. 4
0
 def test_refresh_token_passes_refresh_token_as_header(self, patch_post):
     post = patch_post({
         "data": {
             "refreshToken": {
                 "accessToken": "ACCESS_TOKEN",
                 "expiresAt": "2100-01-01",
                 "refreshToken": "REFRESH_TOKEN",
             }
         }
     })
     client = Client()
     client._refresh_token = "refresh"
     client._refresh_access_token()
     assert post.call_args[1]["headers"] == dict(
         Authorization="Bearer refresh")
Esempio n. 5
0
 def test_refresh_token_passes_refresh_token_as_header(self, patch_post):
     post = patch_post({
         "data": {
             "refresh_token": {
                 "access_token": "ACCESS_TOKEN",
                 "expires_at": "2100-01-01",
                 "refresh_token": "REFRESH_TOKEN",
             }
         }
     })
     client = Client()
     client._refresh_token = "refresh"
     client._refresh_access_token()
     assert post.call_args[1]["headers"] == {
         "Authorization": "Bearer refresh",
         "X-PREFECT-CORE-VERSION": str(prefect.__version__),
     }