2525
2626_SPECIALTY_REF_DATA_URL = "/FHIR/STU3/CodeSystem/SPECIALTY"
2727_SEARCH_HEALTHCARE_SERVICE_R4_URL = "/FHIR/R4/HealthcareService"
28+ _APIM_APP_FLOW_VARS = (
29+ '{"ers": {"allowListodsCode": [ ' + app_restricted_ods_code + "]}}"
30+ )
2831
2932
3033@pytest .mark .integration_test
@@ -34,44 +37,47 @@ class TestHeaders:
3437 async def test_headers_on_echo_target (
3538 self , authenticate_user , service_url , user : Actor , asid
3639 ):
37- access_code = await authenticate_user (user )
40+ with update_user_restricted_app_attr ("apim-app-flow-vars" , _APIM_APP_FLOW_VARS ):
41+ access_code = await authenticate_user (user )
3842
39- client_request_headers = {
40- _HEADER_ECHO : "" , # enable echo target
41- _HEADER_AUTHORIZATION : "Bearer " + access_code ,
42- _HEADER_REQUEST_ID : "DUMMY-VALUE" ,
43- RenamedHeader .REFERRAL_ID .original : _EXPECTED_REFERRAL_ID ,
44- RenamedHeader .CORRELATION_ID .original : _EXPECTED_CORRELATION_ID ,
45- RenamedHeader .BUSINESS_FUNCTION .original : user .business_function ,
46- RenamedHeader .ODS_CODE .original : user .org_code ,
47- RenamedHeader .FILENAME .original : _EXPECTED_FILENAME ,
48- RenamedHeader .COMM_RULE_ORG .original : _EXPECTED_COMM_RULE_ORG ,
49- RenamedHeader .OBO_USER_ID .original : _EXPECTED_OBO_USER_ID ,
50- }
43+ print (f"new attribute apim-app-flow-vars: { _APIM_APP_FLOW_VARS } " )
5144
52- # Make the API call
53- response = requests .get (service_url , headers = client_request_headers )
45+ client_request_headers = {
46+ _HEADER_ECHO : "" , # enable echo target
47+ _HEADER_AUTHORIZATION : "Bearer " + access_code ,
48+ _HEADER_REQUEST_ID : "DUMMY-VALUE" ,
49+ RenamedHeader .REFERRAL_ID .original : _EXPECTED_REFERRAL_ID ,
50+ RenamedHeader .CORRELATION_ID .original : _EXPECTED_CORRELATION_ID ,
51+ RenamedHeader .BUSINESS_FUNCTION .original : user .business_function ,
52+ RenamedHeader .ODS_CODE .original : user .org_code ,
53+ RenamedHeader .FILENAME .original : _EXPECTED_FILENAME ,
54+ RenamedHeader .COMM_RULE_ORG .original : _EXPECTED_COMM_RULE_ORG ,
55+ RenamedHeader .OBO_USER_ID .original : _EXPECTED_OBO_USER_ID ,
56+ }
5457
55- expected_aal = (
56- "3"
57- if user .authentication_assurance_level == UserAuthenticationLevel .AAL3
58- else "2"
59- )
60- expected_amr = (
61- "[N3_SMARTCARD]"
62- if user .authentication_assurance_level == UserAuthenticationLevel .AAL3
63- else "[TOTP]"
64- )
58+ # Make the API call
59+ response = requests .get (service_url , headers = client_request_headers )
6560
66- self .assert_ok_echo_response (
67- response ,
68- service_url ,
69- user ,
70- asid ,
71- _EXPECTED_FILENAME ,
72- expected_aal ,
73- expected_amr ,
74- )
61+ expected_aal = (
62+ "3"
63+ if user .authentication_assurance_level == UserAuthenticationLevel .AAL3
64+ else "2"
65+ )
66+ expected_amr = (
67+ "[N3_SMARTCARD]"
68+ if user .authentication_assurance_level == UserAuthenticationLevel .AAL3
69+ else "[TOTP]"
70+ )
71+
72+ self .assert_ok_echo_response (
73+ response ,
74+ service_url ,
75+ user ,
76+ asid ,
77+ _EXPECTED_FILENAME ,
78+ expected_aal ,
79+ expected_amr ,
80+ )
7581
7682 @pytest .mark .asyncio
7783 @pytest .mark .parametrize (
@@ -475,7 +481,7 @@ def test_unknown_access_code(
475481 assert renamed_header .renamed not in client_response_headers
476482
477483 @pytest .mark .asyncio
478- @pytest .mark .parametrize ("service_name" , [( None ) ])
484+ @pytest .mark .parametrize ("service_name" , [None ])
479485 async def test_access_code_not_supported (
480486 self , referring_clinician , authenticate_user , service_url
481487 ):
0 commit comments