catopt-category-theoretic-c.../tests/test_admm_update.py

16 lines
733 B
Python

import math
from catopt_category_theoretic_compositional import LocalProblem, SharedVariables, PlanDelta, admm_update
def test_admm_update_basic():
# Use the DSL LocalProblem to reflect the current package surface
lp = LocalProblem(id="lp1", domain="energy", objective="minimize", constraints=[], variables=None)
sh = SharedVariables(version=1, signals={"z": 0.8})
delta = admm_update(lp, sh)
# The current MVP surface returns a DSL LocalProblem carrying delta in 'variables'
assert delta.__class__.__name__ == "LocalProblem"
# Ensure a delta-like payload is present inside 'variables'
assert isinstance(delta.variables, dict)
assert any(isinstance(v, float) for v in delta.variables.values())