import time from gridverse.contracts import LocalProblem, SharedVariables, PlanDelta, ConstraintSet, DeviceInfo def test_contract_dataclasses_basic(): lp = LocalProblem(id="lp-1", description="test", parameters={"p": 1}) sv = SharedVariables(name="x", value=10) pd = PlanDelta(id="pd-1", timestamp=time.time(), updates={"a": 1}) cs = ConstraintSet(name="mesh", constraints={"energy": 1}) di = DeviceInfo(device_id="dev-1", device_type="sensor") assert lp.id == "lp-1" and lp.parameters["p"] == 1 assert sv.name == "x" and sv.value == 10 assert pd.updates["a"] == 1 assert cs.constraints["energy"] == 1 assert di.device_id == "dev-1" and di.device_type == "sensor"