mirror of
https://github.com/OCA/knowledge.git
synced 2025-12-20 04:12:18 -06:00
[ADD] document_page_access_group_user_role: New module
TT48787
This commit is contained in:
3
document_page_access_group_user_role/tests/__init__.py
Normal file
3
document_page_access_group_user_role/tests/__init__.py
Normal file
@@ -0,0 +1,3 @@
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
|
||||
|
||||
from . import test_document_page_access_group_user_role
|
||||
@@ -0,0 +1,30 @@
|
||||
# Copyright 2024 Tecnativa - Víctor Martínez
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
from odoo.addons.base.tests.common import BaseCommon
|
||||
|
||||
|
||||
class TestDocumentPageAccessGroupUserRole(BaseCommon):
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super().setUpClass()
|
||||
cls.page = cls.env["document.page"].create(
|
||||
{"name": "Page 1", "type": "content"}
|
||||
)
|
||||
cls.group_a = cls.env["res.groups"].create({"name": "Test group A"})
|
||||
cls.group_b = cls.env["res.groups"].create({"name": "Test group B"})
|
||||
cls.user_role = cls.env["res.users.role"].create(
|
||||
{"name": "Test role", "implied_ids": [(6, 0, [cls.group_a.id])]}
|
||||
)
|
||||
|
||||
def test_document_page_role(self):
|
||||
self.assertFalse(self.page.groups_id)
|
||||
self.page.role_ids = [(4, self.user_role.id)]
|
||||
self.assertIn(self.group_a, self.page.groups_id)
|
||||
self.assertNotIn(self.group_b, self.page.groups_id)
|
||||
self.user_role.implied_ids = [(4, self.group_b.id)]
|
||||
self.assertIn(self.group_a, self.page.groups_id)
|
||||
self.assertIn(self.group_b, self.page.groups_id)
|
||||
self.page.role_ids = [(6, 0, [])]
|
||||
self.assertNotIn(self.group_a, self.page.groups_id)
|
||||
self.assertNotIn(self.group_b, self.page.groups_id)
|
||||
Reference in New Issue
Block a user