Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/oauthlib/openid/connect/core/grant_types/refresh_token.py: 62%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

13 statements  

1""" 

2oauthlib.openid.connect.core.grant_types 

3~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

4""" 

5import logging 

6 

7from oauthlib.oauth2.rfc6749.grant_types.refresh_token import ( 

8 RefreshTokenGrant as OAuth2RefreshTokenGrant, 

9) 

10 

11from .base import GrantTypeBase 

12 

13log = logging.getLogger(__name__) 

14 

15 

16class RefreshTokenGrant(GrantTypeBase): 

17 

18 def __init__(self, request_validator=None, **kwargs): 

19 self.proxy_target = OAuth2RefreshTokenGrant( 

20 request_validator=request_validator, **kwargs) 

21 self.register_token_modifier(self.add_id_token) 

22 

23 def add_id_token(self, token, token_handler, request): 

24 """ 

25 Construct an initial version of id_token, and let the 

26 request_validator sign or encrypt it. 

27 

28 The authorization_code version of this method is used to 

29 retrieve the nonce accordingly to the code storage. 

30 """ 

31 if not self.request_validator.refresh_id_token(request): 

32 return token 

33 

34 return super().add_id_token(token, token_handler, request)