def test_get_safe_when_passed_a_nonexistent_key_returns_default_value(): # Arrange nested_dict = { "level1prop1": 1, "level2": { "level2prop1": 2, "level3": { "level3prop1": 3, } } } dict_view = ObjectDictView(nested_dict) # Act value1 = dict_view.get_safe("level2/level3/level4/level4prop1") value2 = dict_view.get_safe("level2/level3/level4/level4prop1", default_value=42) # Assert assert value1 is None assert value2 == 42
def test_get_safe_when_passed_an_existing_key_returns_its_value(): # Arrange nested_dict = { "level1prop1": 1, "level2": { "level2prop1": 2, "level3": { "level3prop1": 3, } } } dict_view = ObjectDictView(nested_dict) # Act value = dict_view.get_safe("level2/level3/level3prop1") # Assert assert value == 3