| 89 | |
| 90 | |
| 91 | def test_readwrite(self): |
| 92 | |
| 93 | # noinspection PyPropertyDefinition |
| 94 | class Spam(Driver): |
| 95 | |
| 96 | _eggs = {'answer': 42} |
| 97 | |
| 98 | @DictFeat() |
| 99 | def eggs(self_, key): |
| 100 | return self_._eggs[key] |
| 101 | |
| 102 | @eggs.setter |
| 103 | def eggs(self_, key, value): |
| 104 | self_._eggs[key] = value |
| 105 | |
| 106 | obj = Spam() |
| 107 | self.assertEqual(obj.eggs['answer'], 42) |
| 108 | obj.eggs['answer'] = 46 |
| 109 | self.assertEqual(obj._eggs['answer'], 46) |
| 110 | self.assertEqual(obj.eggs['answer'], 46) |
| 111 | self.assertRaises(AttributeError, delattr, obj, "eggs") |
| 112 | |
| 113 | def test_cache(self): |
| 114 | |