pino-source-code / tests /test_registry_lookup.py
Matthew Ford
Complete catalog recovery and enrichment
83db774
Raw
History Blame Contribute Delete
899 Bytes
from __future__ import annotations
import pytest
pytest.importorskip("rdkit")
from pino.registry import AromaRegistry
def test_name_lookup_prefers_real_cas_over_smiles_pseudo_key(tmp_path):
registry = AromaRegistry(tmp_path / "registry.db")
try:
base = {
"name": "alpha-pinene",
"smiles": "CC1=CCC2CC1C2(C)C",
"molecular_weight": 136.24,
"unifac_groups": {},
"openpom_embedding": [],
"shape_3d_features": [],
}
registry.add({**base, "cas": "SMILES:CC1=CCC2CC1C2(C)C", "vapor_pressure_pa": 8.396})
registry.add({**base, "cas": "80-56-8", "vapor_pressure_pa": 633.281})
result = registry.get("alpha-pinene")
assert result is not None
assert result["cas"] == "80-56-8"
assert result["vapor_pressure_pa"] == 633.281
finally:
registry.close()