mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-27 23:35:01 +00:00
Extract the PasHub community heat-source label 🟥
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f9d8d33147
commit
4d60d79cc9
1 changed files with 37 additions and 0 deletions
|
|
@ -706,6 +706,43 @@ class TestRenewablesPvArrays:
|
|||
assert renewables.pv_arrays is None
|
||||
|
||||
|
||||
class TestMainHeatingCommunityHeatSource:
|
||||
"""A community-heating dwelling lodges its heat source under "Heating
|
||||
System (Other):" (e.g. "Community heating - boilers only", verbatim from
|
||||
accuracy fixture deal 507644414148). Dropped, the mapper cannot lodge the
|
||||
Table 4a heat-network SAP code and the dwelling is priced as an ordinary
|
||||
boiler (issue #1590 follow-up).
|
||||
"""
|
||||
|
||||
def test_heat_source_label_is_captured(self) -> None:
|
||||
# Arrange — fixture 1's heating section with the community block
|
||||
# spliced in after its "Fuel:" lodgement.
|
||||
lines = load_text_fixture()
|
||||
idx = lines.index("Fuel:")
|
||||
spliced = (
|
||||
lines[: idx + 2]
|
||||
+ ["Heating System (Other):", "Community heating - boilers only"]
|
||||
+ lines[idx + 2 :]
|
||||
)
|
||||
|
||||
# Act
|
||||
mh = PasHubRdSapSiteNotesExtractor(
|
||||
spliced
|
||||
).extract_heating_and_hot_water().main_heating
|
||||
|
||||
# Assert
|
||||
assert mh.community_heat_source == "Community heating - boilers only"
|
||||
|
||||
def test_absent_label_stays_blank(self) -> None:
|
||||
# Arrange / Act — fixture 1 as lodged (no community block).
|
||||
mh = PasHubRdSapSiteNotesExtractor(
|
||||
load_text_fixture()
|
||||
).extract_heating_and_hot_water().main_heating
|
||||
|
||||
# Assert
|
||||
assert mh.community_heat_source == ""
|
||||
|
||||
|
||||
class TestRoofSpaceRoomInRoof:
|
||||
""""Are there rooms in the roof? Yes" lodges an RdSAP §3.10 detailed RIR
|
||||
block (age, floor area, gables/slopes/common walls/flat ceiling as
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue