| from __future__ import annotations |
|
|
| import unittest |
|
|
| from core.deployment import ( |
| DeploymentPolicy, |
| default_backend_for_policy, |
| deployment_mode, |
| ensure_backend_allowed, |
| ensure_demo_mode_allowed, |
| filter_backends_for_policy, |
| ) |
|
|
|
|
| class DeploymentPolicyTest(unittest.TestCase): |
| def test_default_deployment_mode_is_local(self) -> None: |
| self.assertEqual(deployment_mode(""), "local") |
|
|
| def test_rejects_unknown_deployment_mode(self) -> None: |
| with self.assertRaises(ValueError): |
| deployment_mode("prod") |
|
|
| def test_space_mode_filters_placeholder_backend(self) -> None: |
| policy = DeploymentPolicy("space") |
|
|
| backends = filter_backends_for_policy(["placeholder", "transformers"], policy) |
|
|
| self.assertEqual(backends, ["transformers"]) |
|
|
| def test_space_mode_refuses_placeholder_backend(self) -> None: |
| with self.assertRaises(ValueError): |
| ensure_backend_allowed("placeholder", DeploymentPolicy("space")) |
|
|
| def test_space_mode_refuses_demo_mode(self) -> None: |
| with self.assertRaises(ValueError): |
| ensure_demo_mode_allowed(DeploymentPolicy("space")) |
|
|
| def test_space_mode_prefers_real_backend(self) -> None: |
| backend = default_backend_for_policy( |
| ["placeholder", "transformers"], |
| "placeholder", |
| DeploymentPolicy("space"), |
| ) |
|
|
| self.assertEqual(backend, "transformers") |
|
|
|
|
| if __name__ == "__main__": |
| unittest.main() |
|
|