Files
odoo_source/odoo/addons/base/tests/test_non_regression.py
T
Holger Brunn 65ad60665e [FIX] base: fix users' groups assignation
Avoid sharing of users'groups when writing on multiple users.

When changing groups of multiple users, all implied groups were shared
between written users.

Oversight of new-api rewrite.

Fixes #26036
2018-07-31 16:22:26 +02:00

27 lines
938 B
Python

# -*- coding: utf-8 -*-
"""
Non-Regression Tests
"""
from openerp.tests.common import TransactionCase
class TestNR(TransactionCase):
def test_issue26036(self):
U = self.env["res.users"]
G = self.env["res.groups"]
group_A = G.create({"name": "A"})
group_AA = G.create({"name": "AA", "implied_ids": [(6, 0, [group_A.id])]})
group_B = G.create({"name": "B"})
group_BB = G.create({"name": "BB", "implied_ids": [(6, 0, [group_B.id])]})
group_C = G.create({"name": "C"})
user_a = U.create({"name": "a", "login": "a", "groups_id": [(6, 0, [group_AA.id])]})
user_b = U.create({"name": "b", "login": "b", "groups_id": [(6, 0, [group_BB.id])]})
(user_a + user_b).write({"groups_id": [(4, group_C.id)]})
self.assertEqual(user_a.groups_id, (group_AA + group_A + group_C))
self.assertEqual(user_b.groups_id, (group_BB + group_B + group_C))