Files
govoplan-reporting/tests/test_manifest.py
T

34 lines
1.2 KiB
Python

from __future__ import annotations
import unittest
from govoplan_reporting.backend.manifest import get_manifest
class ReportingManifestTests(unittest.TestCase):
def test_manifest_exposes_the_governed_reporting_vertical(self) -> None:
manifest = get_manifest()
self.assertEqual("reporting", manifest.id)
self.assertEqual("vertical_slice", manifest.architecture.maturity)
self.assertEqual("@govoplan/reporting-webui", manifest.frontend.package_name)
self.assertIsNotNone(manifest.route_factory)
self.assertIsNotNone(manifest.migration_spec)
self.assertEqual(7, len(manifest.provides_interfaces))
self.assertEqual(1, len(manifest.search_sources))
self.assertIn("dataflow", manifest.optional_dependencies)
self.assertIn("policy", manifest.optional_dependencies)
self.assertEqual("/reports", manifest.nav_items[0].path)
self.assertEqual(
{"/reports", "/reporting"},
{route.path for route in manifest.frontend.routes},
)
self.assertIn(
"report execution and publication evidence",
manifest.architecture.owned_concepts,
)
if __name__ == "__main__":
unittest.main()