Files
public/access_restricted/tests/test_fields_get.py

40 lines
1.5 KiB
Python

from odoo.tests.common import TransactionCase
def _sel_groups_field_name(group_ids):
"""Generate sel_groups field name from group ids (replaces removed name_selection_groups)."""
return 'sel_groups_' + '_'.join(str(i) for i in sorted(group_ids))
class TestFieldsGet(TransactionCase):
def test_base(self):
demo_user = self.env["res.users"].create({
"name": "Test Demo User Fields",
"login": "test_demo_fields_get",
"groups_id": [(6, 0, [self.env.ref("base.group_user").id])],
})
group_erp_manager = self.env.ref("base.group_erp_manager")
group_system = self.env.ref("base.group_system")
demo_user.write({"group_ids": [(3, group_system.id)]})
group_system.write({"user_ids": [(3, demo_user.id)]})
demo_user.write({"group_ids": [(4, group_erp_manager.id)]})
view_users_form = self.env.ref("base.view_users_form")
(
self.env["res.users"]
.with_user(demo_user)
.with_context({"uid": demo_user.id})
.get_views([[view_users_form.id, "form"]])
)
sel_groups = _sel_groups_field_name([group_erp_manager.id])
res = self.env["res.users"].with_user(demo_user).fields_get()
self.assertTrue(res.get(sel_groups))
demo_user.write({"groups_id": [(4, group_system.id)]})
sel_groups = _sel_groups_field_name([group_erp_manager.id, group_system.id])
res = self.env["res.users"].with_user(demo_user).fields_get()
self.assertTrue(res.get(sel_groups))