Skip to content

Commit 084a0c0

Browse files
committed
VED-492: Add missing test. Use util function in more tests.
1 parent dd57c7e commit 084a0c0

File tree

2 files changed

+19
-5
lines changed

2 files changed

+19
-5
lines changed

filenameprocessor/tests/test_elasticache.py

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@
77

88
from tests.utils_for_tests.mock_environment_variables import MOCK_ENVIRONMENT_DICT
99
from tests.utils_for_tests.generic_setup_and_teardown import GenericSetUp, GenericTearDown
10+
from tests.utils_for_tests.utils_for_filenameprocessor_tests import create_mock_hget
1011

1112
# Ensure environment variables are mocked before importing from src files
1213
with patch.dict("os.environ", MOCK_ENVIRONMENT_DICT):
13-
from elasticache import get_supplier_permissions_from_cache, get_valid_vaccine_types_from_cache
14+
from elasticache import get_supplier_permissions_from_cache, get_valid_vaccine_types_from_cache, \
15+
get_supplier_system_from_cache
1416
from clients import REGION_NAME
1517

1618
s3_client = boto3_client("s3", region_name=REGION_NAME)
@@ -29,13 +31,25 @@ def tearDown(self):
2931
"""Tear down the S3 buckets"""
3032
GenericTearDown(s3_client)
3133

32-
@patch("elasticache.redis_client.hget", return_value=json.dumps(["COVID19.CRUDS", "RSV.CRUDS"]))
34+
@patch("elasticache.redis_client.hget", side_effect=create_mock_hget(
35+
{"TEST_ODS_CODE": "TEST_SUPPLIER"},
36+
{}
37+
))
38+
def test_get_supplier_system_from_cache(self, mock_hget):
39+
result = get_supplier_system_from_cache("TEST_ODS_CODE")
40+
self.assertEqual(result, "TEST_SUPPLIER")
41+
mock_hget.assert_called_once_with("ods_code_to_supplier", "TEST_ODS_CODE")
42+
43+
@patch("elasticache.redis_client.hget", side_effect=create_mock_hget(
44+
{},
45+
{"TEST_SUPPLIER": json.dumps(["COVID19.CRUDS", "RSV.CRUDS"])}
46+
))
3347
def test_get_supplier_permissions_from_cache(self, mock_hget):
3448
result = get_supplier_permissions_from_cache("TEST_SUPPLIER")
3549
self.assertEqual(result, ["COVID19.CRUDS", "RSV.CRUDS"])
3650
mock_hget.assert_called_once_with("supplier_permissions", "TEST_SUPPLIER")
3751

38-
@patch("elasticache.redis_client.hget", return_value=None)
52+
@patch("elasticache.redis_client.hget", side_effect=create_mock_hget({}, {}))
3953
def test_get_supplier_permissions_from_cache_not_found(self, mock_hget):
4054
result = get_supplier_permissions_from_cache("TEST_SUPPLIER")
4155
self.assertEqual(result, [])

filenameprocessor/tests/test_file_key_validation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
from tests.utils_for_tests.values_for_tests import MockFileDetails
77
from tests.utils_for_tests.mock_environment_variables import MOCK_ENVIRONMENT_DICT
8-
from tests.utils_for_tests.utils_for_filenameprocessor_tests import MOCK_ODS_CODE_TO_SUPPLIER
8+
from tests.utils_for_tests.utils_for_filenameprocessor_tests import MOCK_ODS_CODE_TO_SUPPLIER, create_mock_hget
99

1010
# Ensure environment variables are mocked before importing from src files
1111
with patch.dict("os.environ", MOCK_ENVIRONMENT_DICT):
@@ -39,7 +39,7 @@ def test_is_valid_datetime(self):
3939
with self.subTest():
4040
self.assertEqual(is_valid_datetime(date_time_string), expected_result)
4141

42-
@patch("elasticache.redis_client.hget", side_effect=lambda key, field: MOCK_ODS_CODE_TO_SUPPLIER.get(field))
42+
@patch("elasticache.redis_client.hget", side_effect=create_mock_hget(MOCK_ODS_CODE_TO_SUPPLIER, {}))
4343
@patch("elasticache.redis_client.hkeys", return_value=["FLU", "RSV"])
4444
def test_validate_file_key(self, mock_hkeys, mock_hget):
4545
"""Tests that file_key_validation returns True if all elements pass validation, and False otherwise"""

0 commit comments

Comments
 (0)