mltrail-verifiable-provenan.../tests/test_registry_defaults.py

15 lines
687 B
Python

from mltrail_verifiable_provenance_ledger_for.registry import ContractRegistry, _DEFAULT_CONTRACT_SCHEMAS
def test_default_contracts_registered():
reg = ContractRegistry()
reg.register_default_contracts()
# Ensure all canonical contracts are registered with their expected fields
for name, expected in _DEFAULT_CONTRACT_SCHEMAS.items():
contract = reg.get_contract(name)
assert contract is not None, f"Contract {name} not registered"
assert contract.get("schema") is not None, f"Schema for {name} missing"
fields = contract["schema"].get("fields")
assert fields == expected["fields"], f"Fields for {name} do not match expected"