diff options
| author | Xavier Morel <xmo@odoo.com> | 2019-01-22 11:12:39 +0000 |
|---|---|---|
| committer | Xavier Morel <xmo@odoo.com> | 2019-01-22 11:12:39 +0000 |
| commit | a313f342d380a4046a765b708dddb06c46a20ef2 (patch) | |
| tree | 6be354e3d2288a33eebaccffcd7055a2370c3a76 /odoo/addons/test_testing_utilities | |
| parent | 23e0d2cc17f94c71496f271d0be83e7df402dc83 (diff) | |
[IMP] core: add force_save support to server-side form
Cf 3b3f6f04af79d7dcc4461262e14e05096d76180b for basic feature
description.
Task 1931580
closes odoo/odoo#30428
Diffstat (limited to 'odoo/addons/test_testing_utilities')
| -rw-r--r-- | odoo/addons/test_testing_utilities/menu.xml | 2 | ||||
| -rw-r--r-- | odoo/addons/test_testing_utilities/models.py | 4 | ||||
| -rw-r--r-- | odoo/addons/test_testing_utilities/tests/test_form_impl.py | 13 |
3 files changed, 19 insertions, 0 deletions
diff --git a/odoo/addons/test_testing_utilities/menu.xml b/odoo/addons/test_testing_utilities/menu.xml index fa5263efeca..99e409708c2 100644 --- a/odoo/addons/test_testing_utilities/menu.xml +++ b/odoo/addons/test_testing_utilities/menu.xml @@ -101,6 +101,8 @@ <field name="f2" attrs="{'readonly': [['f1', '=', 63], ['f3', '=', 5]]}"/> <field name="f3"/> <field name="f4"/> + <field name="f5" readonly="1"/> + <field name="f6" readonly="1" force_save="1"/> </form> </field> </record> diff --git a/odoo/addons/test_testing_utilities/models.py b/odoo/addons/test_testing_utilities/models.py index 68dc9172123..98a9fea7e7f 100644 --- a/odoo/addons/test_testing_utilities/models.py +++ b/odoo/addons/test_testing_utilities/models.py @@ -10,10 +10,14 @@ class A(models.Model): f2 = fields.Integer(default=42) f3 = fields.Integer() f4 = fields.Integer(compute='_compute_f4') + f5 = fields.Integer() + f6 = fields.Integer() @api.onchange('f2') def _on_change_f2(self): self.f3 = int(self.f2 / 2) + self.f5 = self.f2 + self.f6 = self.f2 @api.depends('f1', 'f2') def _compute_f4(self): diff --git a/odoo/addons/test_testing_utilities/tests/test_form_impl.py b/odoo/addons/test_testing_utilities/tests/test_form_impl.py index a14d6b93974..e2f0d0d89d3 100644 --- a/odoo/addons/test_testing_utilities/tests/test_form_impl.py +++ b/odoo/addons/test_testing_utilities/tests/test_form_impl.py @@ -65,6 +65,19 @@ class TestBasic(TransactionCase): with self.assertRaises(AssertionError): f.f2 = 42 + def test_readonly_save(self): + """ Should not save readonly fields unless they're force_save + """ + f = Form(self.env['test_testing_utilities.a'], view='test_testing_utilities.non_normalized_attrs') + + f.f1 = 1 + f.f2 = 987 + self.assertEqual(f.f5, 987) + self.assertEqual(f.f6, 987) + r = f.save() + self.assertEqual(r.f5, 0) + self.assertEqual(r.f6, 987) + def test_attrs(self): """ Checks that attrs/modifiers with non-normalized domains work """ |
