38 lines
1.5 KiB
Python
38 lines
1.5 KiB
Python
"""Coexistence tests: fusion_accounting_followup menu only visible when
|
|
Enterprise account_followup is NOT installed."""
|
|
|
|
from odoo.tests.common import TransactionCase
|
|
from odoo.tests import tagged
|
|
|
|
|
|
@tagged('post_install', '-at_install')
|
|
class TestFollowupCoexistence(TransactionCase):
|
|
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.coex_group = self.env.ref(
|
|
'fusion_accounting_core.group_fusion_show_when_enterprise_absent',
|
|
raise_if_not_found=False,
|
|
)
|
|
self.assertIsNotNone(self.coex_group, "Coexistence group must exist")
|
|
|
|
def test_engine_always_available(self):
|
|
self.assertIn('fusion.followup.engine', self.env.registry)
|
|
|
|
def test_menu_gated_by_coexistence_group(self):
|
|
menu = self.env.ref('fusion_accounting_followup.menu_fusion_followup_root',
|
|
raise_if_not_found=False)
|
|
if not menu:
|
|
self.skipTest("Menu not loaded")
|
|
menu_groups = getattr(menu, 'group_ids', None) or menu.groups_id
|
|
self.assertIn(self.coex_group, menu_groups,
|
|
"Followup root menu must require the coexistence group")
|
|
|
|
def test_levels_menu_gated(self):
|
|
menu = self.env.ref('fusion_accounting_followup.menu_fusion_followup_levels',
|
|
raise_if_not_found=False)
|
|
if not menu:
|
|
self.skipTest("Menu not loaded")
|
|
menu_groups = getattr(menu, 'group_ids', None) or menu.groups_id
|
|
self.assertIn(self.coex_group, menu_groups)
|