diff --git a/tests/test_energi_bridge.py b/tests/test_energi_bridge.py new file mode 100644 index 0000000..122fec5 --- /dev/null +++ b/tests/test_energi_bridge.py @@ -0,0 +1,24 @@ +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