[FIX] test_fields: _all_columns must be modified similarly to _columns.
(Because of the newly added method check_field_access_rights().) bzr revid: vmt@openerp.com-20121212134755-ykfdykqepwzti5uf
This commit is contained in:
parent
9d2afcae3f
commit
1a4fd71880
|
@ -1560,7 +1560,7 @@ class column_info(object):
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return '%s(%s, %s, %s, %s, %s)' % (
|
return '%s(%s, %s, %s, %s, %s)' % (
|
||||||
self.__name__, self.name, self.column,
|
self.__class__.__name__, self.name, self.column,
|
||||||
self.parent_model, self.parent_column, self.original_parent)
|
self.parent_model, self.parent_column, self.original_parent)
|
||||||
|
|
||||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||||
|
|
|
@ -53,31 +53,46 @@ class TestRelatedField(common.TransactionCase):
|
||||||
def test_1_single_related(self):
|
def test_1_single_related(self):
|
||||||
""" test a related field with a single indirection like fields.related('foo') """
|
""" test a related field with a single indirection like fields.related('foo') """
|
||||||
# add a related field test_related_company_id on res.partner
|
# add a related field test_related_company_id on res.partner
|
||||||
|
# and simulate a _inherits_reload() to populate _all_columns.
|
||||||
old_columns = self.partner._columns
|
old_columns = self.partner._columns
|
||||||
|
old_all_columns = self.partner._all_columns
|
||||||
self.partner._columns = dict(old_columns)
|
self.partner._columns = dict(old_columns)
|
||||||
|
self.partner._all_columns = dict(old_all_columns)
|
||||||
self.partner._columns.update({
|
self.partner._columns.update({
|
||||||
'single_related_company_id': fields.related('company_id', type='many2one', obj='res.company'),
|
'single_related_company_id': fields.related('company_id', type='many2one', obj='res.company'),
|
||||||
})
|
})
|
||||||
|
self.partner._all_columns.update({
|
||||||
|
'single_related_company_id': fields.column_info('single_related_company_id', self.partner._columns['single_related_company_id'], None, None, None)
|
||||||
|
})
|
||||||
|
|
||||||
self.do_test_company_field('single_related_company_id')
|
self.do_test_company_field('single_related_company_id')
|
||||||
|
|
||||||
# restore res.partner fields
|
# restore res.partner fields
|
||||||
self.partner._columns = old_columns
|
self.partner._columns = old_columns
|
||||||
|
self.partner._all_columns = old_all_columns
|
||||||
|
|
||||||
def test_2_related_related(self):
|
def test_2_related_related(self):
|
||||||
""" test a related field referring to a related field """
|
""" test a related field referring to a related field """
|
||||||
# add a related field on a related field on res.partner
|
# add a related field on a related field on res.partner
|
||||||
|
# and simulate a _inherits_reload() to populate _all_columns.
|
||||||
old_columns = self.partner._columns
|
old_columns = self.partner._columns
|
||||||
|
old_all_columns = self.partner._all_columns
|
||||||
self.partner._columns = dict(old_columns)
|
self.partner._columns = dict(old_columns)
|
||||||
|
self.partner._all_columns = dict(old_all_columns)
|
||||||
self.partner._columns.update({
|
self.partner._columns.update({
|
||||||
'single_related_company_id': fields.related('company_id', type='many2one', obj='res.company'),
|
'single_related_company_id': fields.related('company_id', type='many2one', obj='res.company'),
|
||||||
'related_related_company_id': fields.related('single_related_company_id', type='many2one', obj='res.company'),
|
'related_related_company_id': fields.related('single_related_company_id', type='many2one', obj='res.company'),
|
||||||
})
|
})
|
||||||
|
self.partner._all_columns.update({
|
||||||
|
'single_related_company_id': fields.column_info('single_related_company_id', self.partner._columns['single_related_company_id'], None, None, None)
|
||||||
|
'related_related_company_id': fields.column_info('related_related_company_id', self.partner._columns['related_related_company_id'], None, None, None)
|
||||||
|
})
|
||||||
|
|
||||||
self.do_test_company_field('related_related_company_id')
|
self.do_test_company_field('related_related_company_id')
|
||||||
|
|
||||||
# restore res.partner fields
|
# restore res.partner fields
|
||||||
self.partner._columns = old_columns
|
self.partner._columns = old_columns
|
||||||
|
self.partner._all_columns = old_all_columns
|
||||||
|
|
||||||
def test_3_read_write(self):
|
def test_3_read_write(self):
|
||||||
""" write on a related field """
|
""" write on a related field """
|
||||||
|
|
Loading…
Reference in New Issue