Files
ai-contract-platform/backend/tests/test_permission_metadata.py
T
2026-05-02 22:06:03 +08:00

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()