コード例 #1
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    def testPropertyTypes(self):
        item = BeanItem(MyClass('bean1'))

        self.assertTrue(int == item.getItemProperty('superPrivate').getType())
        self.assertTrue(float == item.getItemProperty('superProtected').getType())
        self.assertTrue(bool == item.getItemProperty('superPublic').getType())
        self.assertTrue(str == item.getItemProperty('name').getType())
コード例 #2
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
 def testGetProperties(self):
     item = BeanItem(MySuperClass())
     itemPropertyIds = item.getItemPropertyIds()
     self.assertEquals(3, len(itemPropertyIds))
     self.assertTrue('superPrivate' in itemPropertyIds)
     self.assertTrue('superProtected' in itemPropertyIds)
     self.assertTrue('superPublic' in itemPropertyIds)
コード例 #3
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    def testRemoveSuperProperty(self):
        item = BeanItem(MyClass('bean1'))

        itemPropertyIds = item.getItemPropertyIds()
        self.assertEquals(6, len(itemPropertyIds))

        item.removeItemProperty('superPrivate')
        self.assertEquals(5, len(itemPropertyIds))
        self.assertFalse(itemPropertyIds.contains('superPrivate'))
コード例 #4
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    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())
コード例 #5
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
 def testGetSuperClassProperties(self):
     item = BeanItem(self.MyClass('bean1'))
     itemPropertyIds = item.getItemPropertyIds()
     self.assertEquals(6, len(itemPropertyIds))
     self.assertTrue('superPrivate' in itemPropertyIds)
     self.assertTrue('superProtected' in itemPropertyIds)
     self.assertTrue('superPublic' in itemPropertyIds)
     self.assertTrue('name' in itemPropertyIds)
     self.assertTrue('noField' in itemPropertyIds)
     self.assertTrue('name2' in itemPropertyIds)
コード例 #6
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    def testPropertyExplicitOrder2(self):
        item = BeanItem(MyClass('bean1'),
                ['name', 'superPublic', 'name2', 'noField'])

        it = iter(item.getItemPropertyIds())
        self.assertEquals('name', it.next())
        self.assertEquals('superPublic', it.next())
        self.assertEquals('name2', it.next())
        self.assertEquals('noField', it.next())
        self.assertFalse(it.hasNext())
コード例 #7
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    def testPropertyBadPropertyName(self):
        ids = list()
        ids.append('name3')
        ids.append('name')

        # currently silently ignores non-existent properties
        item = BeanItem(MyClass('bean1'), ids)

        it = iter(item.getItemPropertyIds())
        self.assertEquals('name', it.next())
        self.assertFalse(it.hasNext())
コード例 #8
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    def testPropertyExplicitOrder(self):
        ids = list()
        ids.append('name')
        ids.append('superPublic')
        ids.append('name2')
        ids.append('noField')

        item = BeanItem(MyClass('bean1'), ids)

        it = iter(item.getItemPropertyIds())
        self.assertEquals('name', it.next())
        self.assertEquals('superPublic', it.next())
        self.assertEquals('name2', it.next())
        self.assertEquals('noField', it.next())
        self.assertFalse(it.hasNext())
コード例 #9
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
    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'))
コード例 #10
0
ファイル: BeanItemTest.py プロジェクト: Lemoncandy/muntjac
 def testPropertyReadOnly(self):
     item = BeanItem(MyClass('bean1'))
     self.assertFalse(item.getItemProperty('name').isReadOnly())
     self.assertTrue(item.getItemProperty('name2').isReadOnly())