def testOverridingProperties(self): item = BeanItem(MyClass2('bean2')) itemPropertyIds = item.getItemPropertyIds() self.assertEquals(6, len(itemPropertyIds)) self.assertTrue(MyClass2 == item.getBean().__class__) # check that name2 accessed via MyClass2, not MyClass self.assertFalse(item.getItemProperty('name2').isReadOnly())
def testAddRemoveProperty(self): pd = MethodPropertyDescriptor('myname', MyClass, getattr(MyClass, 'getName'), getattr(MyClass, 'setName')) item = BeanItem(self.MyClass('bean1')) self.assertEquals(6, len(item.getItemPropertyIds())) self.assertEquals(None, item.getItemProperty('myname')) item.addItemProperty('myname', pd.createProperty(item.getBean())) self.assertEquals(7, len(item.getItemPropertyIds())) self.assertEquals('bean1', item.getItemProperty('myname').getValue()) item.removeItemProperty('myname') self.assertEquals(6, len(item.getItemPropertyIds())) self.assertEquals(None, item.getItemProperty('myname'))