import pytest from citygrid.core import LocalProblem, SharedVariables, DualVariables, PlanDelta, PrivacyBudget, AuditLog, PolicyBlock def test_local_problem_dataclass(): lp = LocalProblem(id="LP1", domain="electric", assets=["b1"], objective={"minimize": "cost"}) assert lp.id == "LP1" assert lp.domain == "electric" assert lp.assets == ["b1"] def test_shared_variables_dataclass(): sv = SharedVariables(version=1, signals={"load": 42}) assert sv.version == 1 assert sv.signals["load"] == 42 def test_dual_variables_dataclass(): dv = DualVariables(multipliers={"x": 0.1}) assert dv.multipliers["x"] == 0.1