Add function assignment governance profiles

This commit is contained in:
2026-07-31 19:40:22 +02:00
parent 84acc34f08
commit e061f230f2
4 changed files with 469 additions and 3 deletions
+11 -3
View File
@@ -6,6 +6,7 @@ import unittest
from govoplan_core.core.policy import (
CAPABILITY_POLICY_DEFINITION_GOVERNANCE,
CAPABILITY_POLICY_FUNCTION_ASSIGNMENT_GOVERNANCE,
CAPABILITY_POLICY_PRIVACY_RETENTION,
CAPABILITY_POLICY_SCHEDULING_PARTICIPANT_PRIVACY,
CAPABILITY_POLICY_VIEW_GOVERNANCE,
@@ -18,11 +19,17 @@ ROOT = pathlib.Path(__file__).resolve().parents[1]
class PolicyModuleContractTests(unittest.TestCase):
def test_policy_package_does_not_hard_require_access(self) -> None:
project = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))["project"]
project = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))[
"project"
]
dependencies = tuple(project["dependencies"])
self.assertTrue(any(item.startswith("govoplan-core>=") for item in dependencies))
self.assertFalse(any(item.startswith("govoplan-access") for item in dependencies))
self.assertTrue(
any(item.startswith("govoplan-core>=") for item in dependencies)
)
self.assertFalse(
any(item.startswith("govoplan-access") for item in dependencies)
)
def test_policy_source_does_not_import_access_implementation(self) -> None:
offenders: list[str] = []
@@ -37,6 +44,7 @@ class PolicyModuleContractTests(unittest.TestCase):
self.assertEqual(
{
CAPABILITY_POLICY_DEFINITION_GOVERNANCE,
CAPABILITY_POLICY_FUNCTION_ASSIGNMENT_GOVERNANCE,
CAPABILITY_POLICY_PRIVACY_RETENTION,
CAPABILITY_POLICY_SCHEDULING_PARTICIPANT_PRIVACY,
CAPABILITY_POLICY_VIEW_GOVERNANCE,