77
88from tests .utils_for_tests .mock_environment_variables import MOCK_ENVIRONMENT_DICT
99from 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
1213with 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
1618s3_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 , [])
0 commit comments