[IMP] tests: add test on related fields
bzr revid: rco@openerp.com-20120309161547-um53k5rqqts9flz6
This commit is contained in:
parent
82f492bc2c
commit
8f8b5497d1
|
@ -13,6 +13,29 @@ class TestRelatedField(common.TransactionCase):
|
|||
def setUp(self):
|
||||
super(TestRelatedField, self).setUp()
|
||||
self.partner = self.registry('res.partner')
|
||||
self.company = self.registry('res.company')
|
||||
|
||||
def test_0_related(self):
|
||||
""" test an usual related field """
|
||||
# add a related field test_related_company_id on res.partner
|
||||
old_columns = self.partner._columns
|
||||
self.partner._columns = dict(old_columns)
|
||||
self.partner._columns.update({
|
||||
'related_company_partner_id': fields.related('company_id', 'partner_id', type='many2one', obj='res.partner'),
|
||||
})
|
||||
|
||||
# find a company with a non-null partner_id
|
||||
ids = self.company.search(self.cr, self.uid, [('partner_id', '!=', False)], limit=1)
|
||||
id = ids[0]
|
||||
|
||||
# find partners that satisfy [('partner_id.company_id', '=', id)]
|
||||
company_ids = self.company.search(self.cr, self.uid, [('partner_id', '=', id)])
|
||||
partner_ids1 = self.partner.search(self.cr, self.uid, [('company_id', 'in', company_ids)])
|
||||
partner_ids2 = self.partner.search(self.cr, self.uid, [('related_company_partner_id', '=', id)])
|
||||
self.assertEqual(partner_ids1, partner_ids2)
|
||||
|
||||
# restore res.partner fields
|
||||
self.partner._columns = old_columns
|
||||
|
||||
def do_test_company_field(self, field):
|
||||
# get a partner with a non-null company_id
|
||||
|
|
Loading…
Reference in New Issue