24 lines
873 B
Python
24 lines
873 B
Python
from gridresilience_studio.registry import GraphRegistry, RegistryEntry
|
|
from gridresilience_studio.governance import GovernanceLedger
|
|
|
|
|
|
def test_registry_add_and_get():
|
|
reg = GraphRegistry()
|
|
entry = RegistryEntry(adapter_id="iec61850", contract_version="v0.1", data_contract={"type": "LocalDevicePlan"})
|
|
reg.add_entry(entry)
|
|
|
|
assert reg.get_entry("iec61850").adapter_id == "iec61850"
|
|
all_entries = reg.list_entries()
|
|
assert "iec61850" in all_entries
|
|
|
|
|
|
def test_governance_ledger_append_and_anchor():
|
|
ledger = GovernanceLedger()
|
|
e1 = ledger.append("contract-A", "deploy", "tester", 1, payload_hash=None)
|
|
e2 = ledger.append("contract-A", "update", "tester", 1, payload_hash="abc123")
|
|
|
|
entries = ledger.entries()
|
|
assert len(entries) == 2
|
|
assert entries[0].contract_id == "contract-A"
|
|
assert ledger.latest_hash() is not None
|