"""Tests for the runtime PCDB lookup module. The lookup loads pcdb_table_105_gas_oil_boilers.jsonl at import time and caches it as a by-pcdb-id dict. Callers (cert_to_inputs) invoke `gas_oil_boiler_record(pcdb_id)` to obtain the typed record or None when the ID is not in the PCDB. Reference: BRE PCDB pcdb10.dat (April 2026); user-verified records. """ from __future__ import annotations from domain.sap10_calculator.tables.pcdb import gas_oil_boiler_record def test_gas_oil_boiler_record_returns_verified_baxi_98() -> None: """Baxi Heating Wm 20/3rs (user-verified against ncm-pcdb.org.uk): winter SAP seasonal efficiency 66.0%, summer 56.0%, comparative HW 40.8%. Lookup by `main_heating_index_number = 98` returns the typed record.""" # Arrange # Act record = gas_oil_boiler_record(98) # Assert assert record is not None assert record.brand_name == "Baxi Heating" assert record.model_name == "Wm" assert record.winter_efficiency_pct == 66.0 assert record.summer_efficiency_pct == 56.0 def test_gas_oil_boiler_record_returns_none_for_unknown_pcdb_id() -> None: """`main_heating_index_number` values not in Table 105 return None so `cert_to_inputs` can fall back to the Table 4a/4b category default.""" # Arrange # Act record = gas_oil_boiler_record(99999999) # Assert assert record is None