idea98-algeiot-algebraic-or.../tests/test_basic.py

23 lines
788 B
Python

import json
from idea98_algeiot_algebraic_orchestration.primitives import LocalDevicePlan, PlanDelta, DualVariables
def test_primitives_serialization_roundtrip():
plan = LocalDevicePlan(
id="ldp-1",
venue="downtown",
asset_ids=["lighting-1", "sensor-2"],
objective="minimize_energy",
latency_budget=1.0,
max_exposure=0.5,
)
s = json.dumps(plan.__dict__, default=lambda o: o.__dict__)
assert isinstance(s, str)
delta = PlanDelta(delta_actions=(("venueA","venueB","assetX", 10, "now"),), timestamp=None, contract_id="c1")
assert delta.contract_id == "c1"
def test_dual_variables_basic():
dv = DualVariables(shadow_prices={"energy": 0.5, "latency": 0.2}, version=1)
assert dv.shadow_prices["energy"] == 0.5