cosmosmesh-privacy-preservi.../tests/test_catopt_bridge.py

22 lines
819 B
Python

import pytest
from cosmosmesh_privacy_preserving_federated_.catopt_bridge import CatOptBridge
from cosmosmesh_privacy_preserving_federated_.contract_registry import REGISTRY
def test_registry_and_translation():
bridge = CatOptBridge()
# Register a simple contract and verify registry exposure
bridge.register_contract("LocalProblem", "0.1.0", {"schema": {"type": "object"}})
assert REGISTRY.get("LocalProblem")["version"] == "0.1.0"
# Translate a minimal local problem description
local_problem = {
"name": "TestProblem",
"variables": [{"name": "x", "domain": "R"}],
"objective": {"type": "quadratic"},
}
translated = bridge.translate_local_problem(local_problem)
assert translated["type"] == "LocalProblem"
assert translated["name"] == "TestProblem"