Files
centurion_erp/app/api/tests/unit/test_navigation_menu.py

1572 lines
36 KiB
Python

import django
from django.contrib.auth.models import Permission
from django.contrib.contenttypes.models import ContentType
from django.test import Client, TestCase
from access.models.tenant import Tenant as Organization
from access.models.team import Team
from access.models.team_user import TeamUsers
from api.react_ui_metadata import ReactUIMetadata
User = django.contrib.auth.get_user_model()
class MockRequst:
user = None
def __init__(self, user ):
self.user = user
class NavigationMenu(
TestCase
):
@classmethod
def setUpTestData(self):
organization = Organization.objects.create(name='test_org')
self.organization = organization
users_to_create: dict = {
'access': [
{
'content_model': 'tenant',
'permission_model': 'tenant'
}
],
'assistance': [
{
'content_model': 'knowledgebase',
'permission_model': 'knowledgebase'
},
{
'content_model': 'knowledgebasecategory',
'permission_model': 'knowledgebasecategory'
}
],
'config_management': [
{
'content_model': 'configgroups',
'permission_model': 'configgroups'
}
],
'core': [
{
'content_model': 'manufacturer',
'permission_model': 'manufacturer'
},
{
'content_model': 'ticket',
'permission_model': 'ticket_change'
},
{
'content_model': 'ticket',
'permission_model': 'ticket_incident'
},
{
'content_model': 'ticket',
'permission_model': 'ticket_problem'
},
{
'content_model': 'ticket',
'permission_model': 'ticket_request'
},
{
'content_model': 'ticketcategory',
'permission_model': 'ticketcategory'
},
{
'content_model': 'ticketcommentcategory',
'permission_model': 'ticketcommentcategory'
}
],
'django_celery_results': [
{
'content_model': 'taskresult',
'permission_model': 'taskresult'
}
],
'itam': [
{
'content_model': 'device',
'permission_model': 'device'
},
{
'content_model': 'devicemodel',
'permission_model': 'devicemodel'
},
{
'content_model': 'devicetype',
'permission_model': 'devicetype'
},
{
'content_model': 'operatingsystem',
'permission_model': 'operatingsystem'
},
{
'content_model': 'software',
'permission_model': 'software'
},
{
'content_model': 'softwarecategory',
'permission_model': 'softwarecategory'
}
],
'itim': [
{
'content_model': 'cluster',
'permission_model': 'cluster'
},
{
'content_model': 'clustertype',
'permission_model': 'clustertype'
},
{
'content_model': 'service',
'permission_model': 'service'
}
],
'project_management': [
{
'content_model': 'project',
'permission_model': 'project'
},
{
'content_model': 'projectstate',
'permission_model': 'projectstate'
},
{
'content_model': 'projecttype',
'permission_model': 'projecttype'
}
],
'settings': [
{
'content_model': 'appsettings',
'permission_model': 'appsettings'
}
]
}
# app_label = 'access'
# model_name = 'organization'
for app_label, model_names in users_to_create.items():
for model_name in model_names:
setattr(self, app_label + "_" + model_name['permission_model'], MockRequst( user = User.objects.create_user(username= app_label + "_" + model_name['permission_model'], password="password")))
team = Team.objects.create(
team_name = app_label + "_" + model_name['permission_model'],
organization = organization,
)
permission = Permission.objects.get(
codename = 'view_' + model_name['permission_model'],
content_type = ContentType.objects.get(
app_label = app_label,
model = model_name['content_model'],
)
)
team.permissions.set( [ permission ] )
team_user = TeamUsers.objects.create(
team = team,
user = getattr(self, app_label + "_" + model_name['permission_model']).user
)
self.metadata = ReactUIMetadata()
def test_navigation_menu_visible_access_tenant_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.access_tenant)
menu_name = 'access'
page_name = 'tenant'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_access_tenant_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.access_tenant)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_config_management_configgroups_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.config_management_configgroups)
menu_name = 'config_management'
page_name = 'group'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_config_management_configgroups_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.config_management_configgroups)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_assistance_knowledgebase_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.assistance_knowledgebase)
menu_name = 'assistance'
page_name = 'knowledge_base'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_assistance_knowledgebase_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.assistance_knowledgebase)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_assistance_request_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_request)
menu_name = 'assistance'
page_name = 'request'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_assistance_request_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_request)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_django_celery_results_taskresult_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.django_celery_results_taskresult)
menu_name = 'settings'
page_name = 'celery_log'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_django_celery_results_taskresult_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.django_celery_results_taskresult)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_device_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_device)
menu_name = 'itam'
page_name = 'device'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_device_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_device)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_operating_system_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_operatingsystem)
menu_name = 'itam'
page_name = 'operating_system'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_operating_system_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_operatingsystem)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_software_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_software)
menu_name = 'itam'
page_name = 'software'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_software_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_software)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_cluster_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itim_cluster)
menu_name = 'itim'
page_name = 'cluster'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_cluster_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itim_cluster)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_ticket_change_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_change)
menu_name = 'itim'
page_name = 'ticket_change'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_ticket_change_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_change)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_ticket_incident_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_incident)
menu_name = 'itim'
page_name = 'ticket_incident'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_ticket_incident_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_incident)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_ticket_problem_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_problem)
menu_name = 'itim'
page_name = 'ticket_problem'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_ticket_problem_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticket_problem)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_service_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itim_service)
menu_name = 'itim'
page_name = 'service'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_service_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itim_service)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_project_management_project_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.project_management_project)
menu_name = 'project_management'
page_name = 'project'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_project_management_project_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.project_management_project)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_settings_appsettings_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.settings_appsettings)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_settings_appsettings_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.settings_appsettings)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itim_clustertype_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itim_clustertype)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itim_clustertype_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itim_clustertype)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_devicemodel_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_devicemodel)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_devicemodel_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_devicemodel)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_devicetype_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_devicetype)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_devicetype_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_devicetype)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_assistance_knowledgebasecategory_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.assistance_knowledgebasecategory)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_assistance_knowledgebasecategory_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.assistance_knowledgebasecategory)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_core_manufacturer_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_manufacturer)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_core_manufacturer_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_manufacturer)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_project_management_projectstate_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.project_management_projectstate)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_project_management_projectstate_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.project_management_projectstate)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_project_management_projecttype_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.project_management_projecttype)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_project_management_projecttype_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.project_management_projecttype)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_itam_softwarecategory_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.itam_softwarecategory)
menu_name = 'settings'
page_name = 'setting'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_itam_softwarecategory_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.itam_softwarecategory)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_core_ticketcategory_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticketcategory)
menu_name = 'itops'
page_name = 'ticketcategory'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_core_ticketcategory_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticketcategory)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1
def test_navigation_menu_visible_core_ticketcommentcategory_exist(self):
"""Navigation Menu Check
Ensure that if the user has the permission, the navigation menu and
page is available for the user
"""
nav_menu = self.metadata.get_navigation(self.core_ticketcommentcategory)
menu_name = 'itops'
page_name = 'ticketcommentcategory'
menu_page_exists: bool = False
for menu in nav_menu:
for page in menu['pages']:
if(
menu['name'] == menu_name
and page['name'] == page_name
):
menu_page_exists = True
assert menu_page_exists
def test_navigation_menu_visible_core_ticketcommentcategory_no_additional_exist(self):
"""Navigation Menu Check
Ensure that only the navigation menu and entry is the only one displayed
for the user who has the desired permission
"""
nav_menu = self.metadata.get_navigation(self.core_ticketcommentcategory)
pages_found: int = 0
for menu in nav_menu:
for page in menu['pages']:
pages_found += 1
assert pages_found == 1