@@ -58,15 +58,14 @@ def credentials_fixture(self, signer):
5858 signer , self .SERVICE_ACCOUNT_EMAIL , self .TOKEN_URI )
5959
6060 def test_from_service_account_info (self ):
61- with open (SERVICE_ACCOUNT_JSON_FILE , 'r' ) as fh :
62- info = json .load (fh )
63-
6461 credentials = service_account .Credentials .from_service_account_info (
65- info )
62+ SERVICE_ACCOUNT_INFO )
6663
67- assert credentials ._signer .key_id == info ['private_key_id' ]
68- assert credentials ._service_account_email == info ['client_email' ]
69- assert credentials ._token_uri == info ['token_uri' ]
64+ assert (credentials ._signer .key_id ==
65+ SERVICE_ACCOUNT_INFO ['private_key_id' ])
66+ assert (credentials ._service_account_email ==
67+ SERVICE_ACCOUNT_INFO ['client_email' ])
68+ assert credentials ._token_uri == SERVICE_ACCOUNT_INFO ['token_uri' ]
7069
7170 def test_from_service_account_info_args (self ):
7271 info = SERVICE_ACCOUNT_INFO .copy ()
@@ -112,6 +111,17 @@ def test_from_service_account_file_args(self):
112111 assert credentials ._subject == subject
113112 assert credentials ._additional_claims == additional_claims
114113
114+ def test_to_jwt_credentials (self ):
115+ jwt_from_svc = self .credentials .to_jwt_credentials ()
116+ jwt_from_info = jwt .Credentials .from_service_account_info (
117+ SERVICE_ACCOUNT_INFO )
118+
119+ assert isinstance (jwt_from_svc , jwt .Credentials )
120+ assert jwt_from_svc ._signer .key_id == jwt_from_info ._signer .key_id
121+ assert jwt_from_svc ._issuer == jwt_from_info ._issuer
122+ assert jwt_from_svc ._subject == jwt_from_info ._subject
123+ assert jwt_from_svc ._audience == jwt_from_info ._audience
124+
115125 def test_default_state (self ):
116126 assert not self .credentials .valid
117127 # Expiration hasn't been set yet
0 commit comments