mirror of
https://github.com/OCA/server-backend.git
synced 2025-02-18 09:52:42 +02:00
[FIX] base_suspend_security: Reuse existing suspended envs
This commit is contained in:
@@ -5,6 +5,8 @@ from odoo.tools import pycompat
|
|||||||
|
|
||||||
class BaseSuspendSecurityUid(int):
|
class BaseSuspendSecurityUid(int):
|
||||||
def __eq__(self, other):
|
def __eq__(self, other):
|
||||||
|
if isinstance(other, BaseSuspendSecurityUid):
|
||||||
|
return self * 1 == other * 1
|
||||||
if isinstance(other, pycompat.integer_types):
|
if isinstance(other, pycompat.integer_types):
|
||||||
return False
|
return False
|
||||||
return super(BaseSuspendSecurityUid, self).__int__() == other
|
return super(BaseSuspendSecurityUid, self).__int__() == other
|
||||||
|
|||||||
@@ -63,3 +63,13 @@ class TestBaseSuspendSecurity(TransactionCase):
|
|||||||
('user_ids', '=', user_without_access.suspend_security().env.uid),
|
('user_ids', '=', user_without_access.suspend_security().env.uid),
|
||||||
])
|
])
|
||||||
self.assertTrue(partners)
|
self.assertTrue(partners)
|
||||||
|
|
||||||
|
def test_envs(self):
|
||||||
|
""" Test that we get the same env when suspending from the same env """
|
||||||
|
partner = self.env.ref('base.partner_demo')
|
||||||
|
user = self.env.ref('base.user_demo')
|
||||||
|
self.assertEqual(partner.env.args, user.env.args)
|
||||||
|
partner_suspended = partner.suspend_security()
|
||||||
|
user_suspended = user.suspend_security()
|
||||||
|
self.assertNotEqual(partner.env.args, partner_suspended.env.args)
|
||||||
|
self.assertEqual(user_suspended.env.args, partner_suspended.env.args)
|
||||||
|
|||||||
Reference in New Issue
Block a user