def test_bind_property(self): class TestBoundData (BoundData): pass TestBoundData.bind_property('prop', 'dataprop', getter=lambda x: 'd' + x, setter=lambda x: x[1:]) n = Node('name', children=[ PropertyNode('prop', 'value') ]) d = TestBoundData(n) self.assertEqual(d.dataprop, 'dvalue') d.dataprop = 'dnew' self.assertEqual(d.dataprop, 'dnew') self.assertEqual(n.get('prop').value, 'new')
def test_bind_property(self): class TestBoundData(BoundData): pass TestBoundData.bind_property('prop', 'dataprop', getter=lambda x: 'd' + x, setter=lambda x: x[1:]) n = Node('name', children=[PropertyNode('prop', 'value')]) d = TestBoundData(n) self.assertEqual(d.dataprop, 'dvalue') d.dataprop = 'dnew' self.assertEqual(d.dataprop, 'dnew') self.assertEqual(n.get('prop').value, 'new')