def test_nested_mix_encase_lists(): parent = Encase() parent.L = [] parent.L.append(Encase()) parent.L[0].test = 'Example Value' assert parent.L[0].test == 'Example Value'
def test_existing_dict_to_encase(): d = {'key1': 'Value 1', 'key2': 'Value 2', 'key3': 'Value 3'} e = Encase(d) assert e.key1 == 'Value 1' assert e.key2 == 'Value 2' assert e.key3 == 'Value 3'
def test_method_overwrite_prevention(): e = Encase() with pytest.raises(AttributeError): e.copy = 'Some Value'
def test_set_method(): e = Encase() e.set('test_key', 'Example Value') assert e['test_key'] == 'Example Value'
def test_get_method(): e = Encase({'test': 'value'}) assert e.get('test') == 'value'
def test_set_dot_notation(): e = Encase() e.new_value = 'New Value' assert e['new_value'] == 'New Value'
def test_get_dot_notation(): e = Encase({'test': 'value'}) assert e.test == 'value'