diff --git a/tests/domain/epc/test_main_heating_system_overlay.py b/tests/domain/epc/test_main_heating_system_overlay.py index f33efe3c6..b100f75a6 100644 --- a/tests/domain/epc/test_main_heating_system_overlay.py +++ b/tests/domain/epc/test_main_heating_system_overlay.py @@ -111,6 +111,22 @@ def test_high_heat_retention_storage_decodes_to_its_own_code_not_old_storage() - assert simulation.heating.sap_main_heating_code == 409 +def test_high_heat_retention_storage_drags_its_intrinsic_companions() -> None: + # HHRSH has a single intrinsic charge control (Table 4e 2404, 0 C adjustment), + # so — unlike a generic storage heater whose control is unobserved — it must + # NOT drag the conservative manual default (2401, +0.7 C penalty), which would + # under-credit it. It is electric, on an off-peak (Dual) meter (ADR-0044). + simulation = main_heating_overlay_for( + "Electric storage heaters, high heat retention", 0 + ) + + assert simulation is not None + assert simulation.heating is not None + assert simulation.heating.main_heating_control == 2404 + assert simulation.heating.main_fuel_type == 29 + assert simulation.heating.meter_type == "Dual" + + @pytest.mark.parametrize( "main_heating_value", [