def test_dict_set(mocker): # test dict_set with env mocker.patch.dict('os.environ', {'USE_EC2_PARAMETERS': ''}) param.init() param.dict_set('ENV_NAME', 'test_value') val_get = param.dict_get('ENV_NAME') assert val_get == 'test_value'
def test_dict_get(mocker): # test dict_get with env mocker.patch.dict('os.environ', {'USE_EC2_PARAMETERS': ''}) param.init() param.param_cache.m['ENV_NAME'] = 'test_value' val = param.dict_get('ENV_NAME') assert val == 'test_value'
def test_ssm_dict_set(mocker): mocker.patch('install_scripts.param.param_cache', {}) # test dict_set with ssm mocker.patch.dict('os.environ', {'USE_EC2_PARAMETERS': '1'}) param.init() param.dict_set('/ssm/name', 'test_value') val_get = param.dict_get('/ssm/name') assert val_get == 'test_value'
def test_dict_get(mocker): mocker.patch('install_scripts.param.param_cache', {}) # test dict_get with env mocker.patch.dict('os.environ', {'USE_EC2_PARAMETERS': ''}) param.init() param.param_cache['m']['/ssm/name'] = 'test_value' val = param.dict_get('/ssm/name') assert val == 'test_value'
def test_ssm_param_cache_miss(mocker): mocker.patch('install_scripts.param.param_cache', {}) mocker.patch.dict('os.environ', {'USE_EC2_PARAMETERS': '1'}) param.init() param.dict_set('/ssm/name', 'ssm_val') # an ssm cache miss should trigger an api call, and then a cache write mocker.patch('install_scripts.param.ssm_get_parameter', return_value={ 'Parameter': { 'Name': '/ssm/name/two', 'Value': 'ssm_val_two' } }) param.lookup('SSM_NAME_NOT_FOUND', '/ssm/name/two', default='default_value') should_be_cached = param.dict_get('/ssm/name/two') assert should_be_cached == 'ssm_val_two'