[FIX] mail: fix user preference test

This commit mocks the "preference_save" action on the res.users model during
the test that checks that the user can modify its own preferences.

This allows to ease the testing as a context reload in the middle of test steps
was not handled correctly by the test runner.

Task-3246086

closes odoo/odoo#116800

Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
This commit is contained in:
Aurélien Warnon
2023-03-28 17:48:58 +02:00
parent 0c9a024110
commit 5a37fbc6cb
@@ -2,6 +2,9 @@
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.tests import HttpCase, tagged
from odoo.addons.base.models.res_users import Users
from unittest.mock import patch
@tagged('-at_install', 'post_install')
@@ -11,5 +14,7 @@ class TestUserModifyOwnProfile(HttpCase):
"""" A user should be able to modify their own profile.
Even if that user does not have access rights to write on the res.users model. """
self.start_tour("/web", "mail/static/tests/tours/user_modify_own_profile_tour.js", login="demo")
# avoid 'reload_context' action in the middle of the tour to ease steps and form save checks
with patch.object(Users, 'preference_save', lambda self: True):
self.start_tour("/web", "mail/static/tests/tours/user_modify_own_profile_tour.js", login="demo")
self.assertEqual(self.env.ref('base.user_demo').email, "updatedemail@example.com")