extract cylinder thermostat 🟥

This commit is contained in:
Daniel Roth 2026-04-21 15:03:12 +00:00
parent 7d20ca18d8
commit 7700aac5bb
3 changed files with 815 additions and 0 deletions

Binary file not shown.

View file

@ -0,0 +1,799 @@
[
"SMART EPC: Record of",
"Inspection & Site Notes",
"Inspection Surveyor:",
"Rebecca Mcwilliam",
"E-Mail Address:",
"rebeccamcdea@gmail.com",
"Report Reference:",
"Not Applicable",
"Created On:",
"14 October 2025",
"Date of Inspection:",
"14 October 2025",
"Property Address:",
"19,",
"Sandfield ,",
"Wrenbury,",
"CW5 8EU",
"Property Photo",
"Page 1",
"",
"Photo of electricity meter:",
"Photo of electricity meter:",
"Photo of electricity meter:",
"RdSAP Assessment",
"General",
"Confirm you have checked for the existence of an",
"EPC before carrying out another energy assessment.",
"Yes",
"Does an EPC exist at the point of carrying out this",
"energy assessment?",
"Yes",
"Please select why another energy assessment needs",
"to be undertaken:",
"Assessor instructed to produce a new EPC upon request from building",
"owner/tenant/landlord after confirming to the requestor that a valid EPC",
"already exists",
"Inspection Date:",
"14/10/2025",
"Transaction Type:",
"None of the Above",
"Tenure:",
"Rented Social",
"Type of Property:",
"House",
"Detachment Type:",
"End-terrace",
"Number of storeys:",
"2 Storeys",
"Terrain Type:",
"Suburban",
"Number of Extensions:",
"No Extensions",
"Is an electricity smart meter present?",
"Yes",
"Electric meter type:",
"Dual",
"Is the dwelling export-capable?",
"Yes",
"Is mains gas available?",
"No",
"Page 2",
"",
"External indicators of Cavity Wall Construction:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Select Measurements Location:",
"Internal",
"Building Construction",
"Main Building",
"Age Range:",
"1950-1966",
"Record indicators of property age:",
"local knowledge, enquiries of owner, period building features",
"Walls - Construction Type:",
"Cavity",
"Record external indicators of Cavity Construction:",
"stretcher bond",
"Walls - Insulation Type:",
"Filled Cavity",
"Record indicators of filled cavity:",
"evidence of cavity fill drill holes",
"Page 3",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 4",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 5",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 6",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 7",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 8",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Page 9",
"",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo indicators of filled cavity insulation:",
"Photo wall thickness:",
"Thermal conductivity of wall insulation:",
"Unknown",
"Wall U-Value known?",
"Not Known",
"Wall thickness:",
"300 mm",
"Party wall construction type:",
"Unable to determine",
"Floor type:",
"Ground Floor",
"Floor Construction:",
"Solid",
"Floor Insulation Type:",
"As Built",
"Floor U-Value known?",
"Not Known",
"Page 10",
"",
"Loft insulation:",
"Loft insulation:",
"Building Measurements",
"Area (m2)",
"Height (m)",
"Heat Loss Perimeter (m)",
"PWL (m)",
"Main Building",
"Floor 1",
"42.7",
"2.45",
"19.61",
"6.53",
"Floor 0",
"42.7",
"2.45",
"19.61",
"6.53",
"Roof Space",
"Main Building",
"Roofs - Construction Type:",
"Pitched roof (Slates or tiles), Access to loft",
"Roofs - Insulation At:",
"Joists",
"Roof U-Value:",
"Not Known",
"Roofs - Insulation Thickness:",
"200 mm",
"Page 11",
"",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Page 12",
"",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Page 13",
"",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Page 14",
"",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Page 15",
"",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Loft insulation:",
"Page 16",
"",
"Loft insulation:",
"Record indicators of party wall construction in roof space:",
"Record indicators of Cavity Wall Construction in roof",
"space:",
"No indicator of construction visible",
"Are there rooms in the roof?",
"No",
"Windows",
"Window 1",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Page 17",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"1.26 m",
"Window width:",
"1.54 m",
"Orientation:",
"North East",
"Window 2",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.97 m",
"Window width:",
"1.04 m",
"Orientation:",
"North East",
"Page 18",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Photo of glazing type:",
"Window 3",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.97 m",
"Window width:",
"1.53 m",
"Orientation:",
"North East",
"Window 4",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Page 19",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Photo of glazing type:",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"1.27 m",
"Window width:",
"0.58 m",
"Orientation:",
"North East",
"Window 5",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.98 m",
"Window width:",
"0.54 m",
"Orientation:",
"South East",
"Page 20",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Window 6",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"1.27 m",
"Window width:",
"0.58 m",
"Orientation:",
"South East",
"Window 7",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.98 m",
"Window width:",
"1.06 m",
"Page 21",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Photo of glazing type:",
"Photo of glazing type:",
"Orientation:",
"South West",
"Window 8",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.97 m",
"Window width:",
"1.56 m",
"Orientation:",
"South East",
"Window 9",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Page 22",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.96 m",
"Window width:",
"1.53 m",
"Orientation:",
"South East",
"Window 10",
"Window location:",
"Main Building",
"Window wall type:",
"External wall",
"Glazing Type:",
"Double glazing installed between 2002 - 2021",
"Identify basis of window dating:",
"Thermal spacer bar",
"Window type:",
"Window",
"Window frame type:",
"Wooden or PVC",
"Is the window draught proofed?",
"Yes",
"Are there permanent shutters present?",
"No",
"Window height:",
"0.95 m",
"Window width:",
"1.04 m",
"Orientation:",
"South East",
"Page 23",
"",
"Photo of glazing type:",
"Photo of glazing type:",
"Page 24",
"",
"Heating & Hot Water",
"Main Heating Systems",
"Main Heating 1",
"How would you like to select the Heating System?",
"PCDF Search",
"System type:",
"Electric storage heaters",
"Number of storage heater types:",
"3",
"Product Id",
"230026",
"Manufacturer",
"Dimplex",
"Model",
"Quantum",
"Orig Manuf",
"Dimplex",
"S. Efficiency",
"0",
"Year",
"2019 - current",
"Open Flue",
"No",
"Status",
"Normal status for an actual product",
"Number of heaters of this type:",
"1",
"Product Id",
"230024",
"Manufacturer",
"Dimplex",
"Model",
"Quantum",
"Orig Manuf",
"Dimplex",
"S. Efficiency",
"0",
"Year",
"2019 - current",
"Open Flue",
"No",
"Status",
"Normal status for an actual product",
"Number of heaters of this type:",
"2",
"Product Id",
"230023",
"Manufacturer",
"Dimplex",
"Model",
"Quantum",
"Orig Manuf",
"Dimplex",
"S. Efficiency",
"0",
"Year",
"2019 - current",
"Open Flue",
"No",
"Status",
"Normal status for an actual product",
"Number of heaters of this type:",
"3",
"Controls:",
"Controls for high heat retention storage heaters",
"Page 25",
"",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Page 26",
"",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating system:",
"Photo of heating controls:",
"Photo of heating controls:",
"Photo of heating controls:",
"Page 27",
"",
"Photo of secondary heating system",
"Photo of cylinder and thermostat if present:",
"Photo of cylinder and thermostat if present:",
"Secondary Heating System",
"Secondary Fuel",
"Electricity",
"Secondary System:",
"Panel, convector or radiant heaters",
"Water Heating & Cylinder",
"Water Heating Type:",
"Regular",
"Water Heating System:",
"Electric immersion",
"Immersion:",
"Dual",
"Cylinder Size:",
"Medium (131-170 litres)",
"What is the cylinder measured heat loss:",
"Not known",
"Insulation Type:",
"Factory fitted",
"Thickness:",
"50 mm",
"Page 28",
"",
"Photo of cylinder and thermostat if present:",
"Photo of cylinder and thermostat if present:",
"Photo of cylinder and thermostat if present:",
"Photo of ventilation type:",
"Has thermostat?",
"Yes",
"Ventilation",
"Ventilation type:",
"Mechanical Extract - Decentralised",
"Has fixed air conditioning?",
"No",
"Page 29",
"",
"Photo of extract fans:",
"Is the ventilation in the PCDF database?",
"No",
"Number of open flues:",
"0",
"Number of closed flues:",
"0",
"Number of boiler flues:",
"0",
"Number of other flues:",
"0",
"Number of extract fans:",
"1",
"Number of passive vents:",
"0",
"Number of flueless gas fires:",
"0",
"Pressure test:",
"No test",
"Is there a draught lobby?",
"No",
"Conservatories",
"Is there conservatory?",
"No conservatory",
"Page 30",
"",
"Photo of photovoltaic array:",
"Photo of photovoltaic array:",
"Photo of photovoltaic array:",
"Photo of photovoltaic array:",
"Renewables",
"Wind Turbines",
"Has wind turbines?",
"No",
"Solar hot water",
"Has solar hot water?",
"No",
"Photovoltaics",
"Has photovoltaic array?",
"Yes",
"Is there a PV diverter?",
"No",
"PV Connection:",
"Connected to dwellings electricity meter",
"Photovoltaic array kWp Known?",
"No",
"Percentage of roof covered with photovoltaic array?",
"45 %",
"Number of PV batteries:",
"None",
"Hydro",
"Is the dwelling connected to Hydro?",
"No",
"Room Count Elements",
"Number of habitable rooms?",
"5",
"Are any of these rooms unheated?",
"No",
"Page 31",
"",
"Photo of open chimneys:",
"Photo of incandescent bulbs:",
"Photo of incandescent bulbs:",
"Photo of LED bulbs:",
"Photo of LED bulbs:",
"Number of external doors?",
"2",
"Number of insulated external doors?",
"0",
"Number of draughtproofed external doors?",
"2",
"Number of open chimneys?",
"1",
"Number of blocked chimneys?",
"0",
"Number of fixed incandescent bulbs:",
"2",
"Is the exact number of LED and CFL bulbs known?",
"Yes",
"Number of fixed LED bulbs:",
"9",
"Page 32",
"",
"Photo of LED bulbs:",
"Photo of LED bulbs:",
"Photo of LED bulbs:",
"Number of fixed CFL bulbs:",
"0",
"Are there any waste water heat recovery systems?",
"None",
"Number of baths:",
"1",
"How many special features are there at the",
"property?",
"0",
"Showers",
"Shower 1",
"Shower outlet type:",
"Electric Shower",
"Page 33",
"",
"Photo of shower:",
"Photo of shower:",
"Customer Response",
"Customer present?",
"Yes",
"Customer willing to answer satisfaction survey?",
"No",
"Addendum + Related Party Disclosure",
"Addendum",
"None",
"Related party disclosure",
"No related party",
"Hard to treat cavity walls: Property has access",
"issues?",
"No",
"Hard to treat cavity walls: Property has high",
"exposure?",
"No",
"Hard to treat cavity walls: Property has narrow",
"cavities?",
"No",
"Photographs Required",
"Page 34",
"",
"General Photos:",
"General Photos:",
"General Photos:",
"General Photos:",
"General Photos:",
"General Photos:",
"Page 35",
"",
"General Photos:",
"General Photos:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"Page 36",
"",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"Page 37",
"",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"Page 38",
"",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"External Elevations:",
"Page 39",
"",
"Page 40",
"",
"Page 41",
"",
"Additional Notes",
"Additional Notes",
"dMEV in kitchen, IEV in bathroom. Vent on chimney more than 300x100mm so",
"recorded as open chimney.",
"Page 42",
""
]

View file

@ -46,6 +46,11 @@ def load_text_fixture_2() -> list[str]:
return json.load(f) return json.load(f)
def load_text_fixture_3() -> list[str]:
with open(os.path.join(FIXTURES, "site_notes_example_3_text.json")) as f:
return json.load(f)
class TestInspectionMetadata: class TestInspectionMetadata:
def test_full_inspection_metadata(self) -> None: def test_full_inspection_metadata(self) -> None:
result = PasHubRdSapSiteNotesExtractor(load_text_fixture()).extract_inspection_metadata() result = PasHubRdSapSiteNotesExtractor(load_text_fixture()).extract_inspection_metadata()
@ -402,6 +407,17 @@ class TestWaterHeatingCylinderThickness:
assert hhw.water_heating.cylinder_size == "Normal (90-130 litres)" assert hhw.water_heating.cylinder_size == "Normal (90-130 litres)"
class TestCylinderThermostat:
@pytest.fixture
def hhw(self) -> HeatingAndHotWater:
return PasHubRdSapSiteNotesExtractor(
load_text_fixture_3()
).extract_heating_and_hot_water()
def test_has_thermostat_true(self, hhw: HeatingAndHotWater) -> None:
assert hhw.water_heating.has_thermostat is True
class TestSecondaryHeating: class TestSecondaryHeating:
@pytest.fixture @pytest.fixture
def hhw(self) -> HeatingAndHotWater: def hhw(self) -> HeatingAndHotWater: