Skip to content

Commit 1e3af17

Browse files
NRL-1948 Clean up logs and mock file opens for prettier tests & code
1 parent 33daa48 commit 1e3af17

File tree

4 files changed

+14
-15
lines changed

4 files changed

+14
-15
lines changed

layer/nrlf/core/authoriser.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,10 @@
1010
from nrlf.core.logger import LogReference, logger
1111
from nrlf.core.model import ConnectionMetadata
1212

13-
default_lookup_path = "/opt/python/nrlf_permissions"
14-
1513

1614
def get_pointer_permissions_v2(
1715
connection_metadata: ConnectionMetadata,
1816
request_path: str,
19-
lookup_path=default_lookup_path,
2017
):
2118
producer_or_consumer = (
2219
re.search("^/(producer|consumer)/", request_path).group().strip("/")
@@ -28,7 +25,7 @@ def get_pointer_permissions_v2(
2825
key = f"{producer_or_consumer}/{app_id}/{ods_code}.json"
2926
logger.log(LogReference.V2PERMISSIONS011, key=key)
3027

31-
file_path = f"{lookup_path}/{key}"
28+
file_path = f"/opt/python/nrlf_permissions/{key}"
3229

3330
pointer_permissions = {}
3431
try:

layer/nrlf/core/request.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ def _fetch_ods_app_id_headers(headers: dict[str, str]):
1919

2020
if not ods_code or len(ods_code.strip()) == 0:
2121
logger.log(
22-
code=LogReference.HANDLER003a,
22+
LogReference.HANDLER003a,
2323
headers_names=list(case_insensitive_headers.keys()),
2424
)
2525

2626
nrl_app_id = case_insensitive_headers.get("nhsd-nrl-app-id")
2727
if not nrl_app_id or len(nrl_app_id.strip()) == 0:
2828
logger.log(
29-
code=LogReference.HANDLER003b,
29+
LogReference.HANDLER003b,
3030
headers_names=list(case_insensitive_headers.keys()),
3131
)
3232

layer/nrlf/core/tests/test_authoriser.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from unittest.mock import mock_open, patch
2+
13
from nrlf.core.authoriser import get_pointer_permissions_v2, parse_permissions_file
24
from nrlf.core.logger import LogReference, logger
35
from 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 == {}

layer/test_permissions/v2/producer/ODS123-app-id/ODS123.json

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)