gridverse-open-low-code-pla.../tests/test_energi_bridge.py

25 lines
873 B
Python

import pytest
from gridverse.energi_bridge import EnergiBridge
from gridverse.registry import GraphContractRegistry
from gridverse.bridge_energia import bootstrap_contracts
def test_to_ir_from_ir_roundtrip():
payload = {"site_id": "site-1", "description": "test"}
ir = EnergiBridge.to_ir("LocalProblem", payload)
assert isinstance(ir, dict)
contract_type, recovered = EnergiBridge.from_ir(ir)
assert contract_type == "LocalProblem"
assert recovered == payload
def test_bootstrap_contracts_registers_basic_schemas():
reg = GraphContractRegistry()
bootstrap_contracts(reg)
# Basic contracts should be registered with a non-empty schema payload
assert reg.get_contract("LocalProblem", "0.1") is not None
assert reg.get_contract("SharedVariables", "0.1") is not None
assert reg.get_contract("PlanDelta", "0.1") is not None