66from beacon_api .utils .validate import token_scheme_check , verify_aud_claim
77from beacon_api .permissions .ga4gh import get_ga4gh_controlled , get_ga4gh_bona_fide , validate_passport
88from beacon_api .permissions .ga4gh import check_ga4gh_token , decode_passport , get_ga4gh_permissions
9- from deploy .test .mock_auth import generate_token
10- from .test_app import PARAMS
9+ from .test_app import PARAMS , generate_token
1110from testfixtures import TempDirectory
1211from test .support import EnvironmentVarGuard
13- # Hack to import a function from beyond top-level package
14- # used for test_decode_passport() to get a real token
15- import sys
16- sys .path .append (".." )
1712
1813
1914def mock_token (bona_fide , permissions , auth ):
@@ -368,19 +363,21 @@ async def test_ga4gh_bona_fide(self):
368363
369364 @asynctest .mock .patch ('beacon_api.permissions.ga4gh.get_jwk' )
370365 @asynctest .mock .patch ('beacon_api.permissions.ga4gh.jwt' )
371- async def test_validate_passport (self , m_jwt , m_jwk ):
366+ @asynctest .mock .patch ('beacon_api.permissions.ga4gh.LOG' )
367+ async def test_validate_passport (self , mock_log , m_jwt , m_jwk ):
372368 """Test passport validation."""
373369 m_jwk .return_value = 'jwk'
374370 # Test: validation passed
375371 m_jwt .return_value = MockDecodedPassport ()
376372 await validate_passport ({})
377- #
378- # This test doesn't work
379- #
373+
380374 # # Test: validation failed
381- # m_jwt.return_value = MockDecodedPassport(validated=False)
375+ m_jwt .return_value = MockDecodedPassport (validated = False )
382376 # with self.assertRaises(Exception):
383- # await validate_passport({})
377+ await validate_passport ({})
378+ # we are not raising the exception we are just doing a log
379+ # need to assert the log called
380+ mock_log .error .assert_called_with ("Something went wrong when processing JWT tokens: 1" )
384381
385382 @asynctest .mock .patch ('beacon_api.permissions.ga4gh.get_ga4gh_permissions' )
386383 async def test_check_ga4gh_token (self , m_get_perms ):
@@ -404,9 +401,9 @@ async def test_check_ga4gh_token(self, m_get_perms):
404401
405402 async def test_decode_passport (self ):
406403 """Test key-less JWT decoding."""
407- _ , token , _ = generate_token ()
404+ token , _ = generate_token ('http://test.csc.fi' )
408405 header , payload = await decode_passport (token )
409- self .assertEqual (header .get ('alg' ), 'RS256 ' )
406+ self .assertEqual (header .get ('alg' ), 'HS256 ' )
410407 self .assertEqual (payload .get ('iss' ), 'http://test.csc.fi' )
411408
412409 @asynctest .mock .patch ('beacon_api.permissions.ga4gh.get_ga4gh_bona_fide' )
0 commit comments