1+ from unittest .mock import mock_open , patch
2+
13from nrlf .core .authoriser import get_pointer_permissions_v2 , parse_permissions_file
24from nrlf .core .logger import LogReference , logger
35from nrlf .core .request import parse_headers
@@ -20,10 +22,12 @@ def test_authoriser_parse_permission_file_with_permission_file():
2022 assert metadata_result == ["http://snomed.info/sct|736253001" ]
2123
2224
23- v2_test_lookup_path = "layer/test_permissions/v2"
24-
25-
26- def test_authoriser_get_v2_permissions_with_pointer_types (mocker ):
25+ @patch (
26+ "builtins.open" ,
27+ new_callable = mock_open ,
28+ read_data = '{"types": ["http://snomed.info/sct|736253001"]}' ,
29+ )
30+ def test_authoriser_get_v2_permissions_with_pointer_types (mock_file , mocker ):
2731 spy = mocker .spy (logger , "log" )
2832
2933 expected_lookup_key = "producer/ODS123-app-id/ODS123.json"
@@ -33,9 +37,11 @@ def test_authoriser_get_v2_permissions_with_pointer_types(mocker):
3337 result = get_pointer_permissions_v2 (
3438 connection_metadata = connection_metadata ,
3539 request_path = "/producer/DocumentReference/_search" ,
36- lookup_path = v2_test_lookup_path ,
3740 )
3841
42+ mock_file .assert_called_once_with (
43+ f"/opt/python/nrlf_permissions/{ expected_lookup_key } "
44+ )
3945 assert result .get ("types" ) == ["http://snomed.info/sct|736253001" ]
4046
4147 spy .assert_called_with (LogReference .V2PERMISSIONS011 , key = expected_lookup_key )
@@ -50,7 +56,6 @@ def test_authoriser_parse_v2_permission_file_with_no_permission_file(mocker):
5056 create_headers (ods_code = "NotFound" , nrl_app_id = "NotAnApp" )
5157 ),
5258 request_path = "/consumer/_status" ,
53- lookup_path = v2_test_lookup_path ,
5459 )
5560
5661 assert metadata_result == {}
0 commit comments