63 lines
2.0 KiB
Python
63 lines
2.0 KiB
Python
import unittest
|
|
|
|
from app.api import audit_logs, auth, chat, contracts, conversations, files, governance, knowledge_bases, review_rules, reviews, system, templates, tenant_settings, users
|
|
|
|
|
|
class PermissionMetadataTestCase(unittest.TestCase):
|
|
def test_core_api_modules_expose_permission_scope(self):
|
|
modules = [
|
|
audit_logs,
|
|
auth,
|
|
chat,
|
|
contracts,
|
|
conversations,
|
|
files,
|
|
governance,
|
|
knowledge_bases,
|
|
review_rules,
|
|
reviews,
|
|
system,
|
|
templates,
|
|
tenant_settings,
|
|
users,
|
|
]
|
|
|
|
for module in modules:
|
|
with self.subTest(module=module.__name__):
|
|
self.assertTrue(hasattr(module, "ROUTE_PERMISSION_SCOPE"))
|
|
self.assertIsInstance(module.ROUTE_PERMISSION_SCOPE, str)
|
|
self.assertTrue(module.ROUTE_PERMISSION_SCOPE.strip())
|
|
|
|
def test_core_api_modules_expose_action_map(self):
|
|
modules = [
|
|
audit_logs,
|
|
auth,
|
|
chat,
|
|
contracts,
|
|
conversations,
|
|
files,
|
|
governance,
|
|
knowledge_bases,
|
|
review_rules,
|
|
reviews,
|
|
system,
|
|
templates,
|
|
tenant_settings,
|
|
users,
|
|
]
|
|
|
|
for module in modules:
|
|
with self.subTest(module=module.__name__):
|
|
self.assertTrue(hasattr(module, "ROUTE_PERMISSION_ACTIONS"))
|
|
self.assertIsInstance(module.ROUTE_PERMISSION_ACTIONS, dict)
|
|
self.assertTrue(module.ROUTE_PERMISSION_ACTIONS)
|
|
for key, value in module.ROUTE_PERMISSION_ACTIONS.items():
|
|
self.assertIsInstance(key, str)
|
|
self.assertTrue(key.strip())
|
|
self.assertIsInstance(value, str)
|
|
self.assertTrue(value.strip())
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|