Map ventilation properties 🟥

This commit is contained in:
Daniel Roth 2026-04-23 14:29:35 +00:00
parent ad89e20242
commit 163e87920c

View file

@ -510,3 +510,63 @@ class TestFromSiteNotesExample1:
report_reference="49D422A9-0779-44DD-9665-464D35DFF1A8",
)
assert result == expected
class TestFromSiteNotesVentilation:
"""
Fixture: pashub_rdsap_site_notes_example1.json
Ventilation: Natural, 2 extract fans, no flues, no test, no draught lobby.
"""
@pytest.fixture
def survey(self) -> PasHubRdSapSiteNotes:
return from_dict(
PasHubRdSapSiteNotes, load("pashub_rdsap_site_notes_example1.json")
)
@pytest.fixture
def result(self, survey: PasHubRdSapSiteNotes) -> EpcPropertyData:
return EpcPropertyDataMapper.from_site_notes(survey)
def test_sap_ventilation_present(self, result: EpcPropertyData) -> None:
assert result.sap_ventilation is not None
def test_ventilation_type(self, result: EpcPropertyData) -> None:
# ventilation.ventilation_type: "Natural"
assert result.sap_ventilation.ventilation_type == "Natural"
def test_open_flues_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_open_flues: 0
assert result.sap_ventilation.open_flues_count == 0
def test_closed_flues_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_closed_flues: 0
assert result.sap_ventilation.closed_flues_count == 0
def test_boiler_flues_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_boiler_flues: 0
assert result.sap_ventilation.boiler_flues_count == 0
def test_other_flues_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_other_flues: 0
assert result.sap_ventilation.other_flues_count == 0
def test_extract_fans_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_extract_fans: 2
assert result.sap_ventilation.extract_fans_count == 2
def test_passive_vents_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_passive_vents: 0
assert result.sap_ventilation.passive_vents_count == 0
def test_flueless_gas_fires_count(self, result: EpcPropertyData) -> None:
# ventilation.number_of_flueless_gas_fires: 0
assert result.sap_ventilation.flueless_gas_fires_count == 0
def test_pressure_test(self, result: EpcPropertyData) -> None:
# ventilation.pressure_test: "No test"
assert result.sap_ventilation.pressure_test == "No test"
def test_draught_lobby(self, result: EpcPropertyData) -> None:
# ventilation.draught_lobby: false
assert result.sap_ventilation.draught_lobby is False