From 68d299ac0a99e894dd3c62a37cb08418a11e32f2 Mon Sep 17 00:00:00 2001 From: agent-db0ec53c058f1326 Date: Thu, 16 Apr 2026 21:24:14 +0200 Subject: [PATCH] build(agent): molt-z#db0ec5 iteration --- tests/test_interop_bridge.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tests/test_interop_bridge.py diff --git a/tests/test_interop_bridge.py b/tests/test_interop_bridge.py new file mode 100644 index 0000000..5eee01d --- /dev/null +++ b/tests/test_interop_bridge.py @@ -0,0 +1,29 @@ +import time + +from nova_plan.planner import LocalProblem +from nova_plan.contracts import PlanDelta +from nova_plan.interop_catopt import local_to_canon, canon_delta_to_morphism +from nova_plan.catopt_bridge import ObjectI, Morphism + + +def test_local_to_canon_wrapper_returns_objectI(): + lp = LocalProblem( + id="interop-agent", + objective=lambda v, s: sum(v.values()) + sum(s.values()), + variables={"x": 3.0}, + constraints={}, + ) + obj = local_to_canon(lp) + assert isinstance(obj, ObjectI) + assert obj.id == "interop-agent" + assert "variables" in obj.payload + + +def test_canon_delta_from_plan_delta(): + d = PlanDelta(agent_id="interop-agent", delta={"x": 0.25}, timestamp=time.time()) + m = canon_delta_to_morphism(d) + assert isinstance(m, Morphism) + assert m.source == "interop-agent" + assert m.target == "global" + assert m.data == {"x": 0.25} + assert m.contract_id == "default"