summaryrefslogtreecommitdiff
path: root/odoo/addons/test_new_api/tests/test_new_fields.py
diff options
context:
space:
mode:
Diffstat (limited to 'odoo/addons/test_new_api/tests/test_new_fields.py')
-rw-r--r--odoo/addons/test_new_api/tests/test_new_fields.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/odoo/addons/test_new_api/tests/test_new_fields.py b/odoo/addons/test_new_api/tests/test_new_fields.py
index caa4eedf4bf..9b3da038c5c 100644
--- a/odoo/addons/test_new_api/tests/test_new_fields.py
+++ b/odoo/addons/test_new_api/tests/test_new_fields.py
@@ -1054,6 +1054,26 @@ class TestFields(common.TransactionCase):
])
self.assertEqual(attachment.mimetype, 'text/plain')
+ def test_93_monetary_related(self):
+ """ Check the currency field on related monetary fields. """
+ # check base field
+ field = self.env['test_new_api.monetary_base']._fields['amount']
+ self.assertEqual(field.currency_field, 'base_currency_id')
+
+ # related fields must use the field 'currency_id' or 'x_currency_id'
+ field = self.env['test_new_api.monetary_related']._fields['amount']
+ self.assertEqual(field.related, ('monetary_id', 'amount'))
+ self.assertEqual(field.currency_field, 'currency_id')
+
+ field = self.env['test_new_api.monetary_custom']._fields['x_amount']
+ self.assertEqual(field.related, ('monetary_id', 'amount'))
+ self.assertEqual(field.currency_field, 'x_currency_id')
+
+ # inherited field must use the same field as its parent field
+ field = self.env['test_new_api.monetary_inherits']._fields['amount']
+ self.assertEqual(field.related, ('monetary_id', 'amount'))
+ self.assertEqual(field.currency_field, 'base_currency_id')
+
class TestX2many(common.TransactionCase):
def test_search_many2many(self):