diff --git a/packages/domain/src/domain/sap/worksheet/tests/_elmhurst_worksheet_000480.py b/packages/domain/src/domain/sap/worksheet/tests/_elmhurst_worksheet_000480.py index 6279d326..24724997 100644 --- a/packages/domain/src/domain/sap/worksheet/tests/_elmhurst_worksheet_000480.py +++ b/packages/domain/src/domain/sap/worksheet/tests/_elmhurst_worksheet_000480.py @@ -401,11 +401,31 @@ LINE_73_M_TOTAL_INTERNAL_GAINS_W: tuple[float, ...] = ( # ============================================================================ # §6 Solar gains — cert-derived inputs + expected outputs # ============================================================================ -# 2 wall windows, both Manufacturer g⊥=0.76 / PVC: NE 8.74, SW 1.80. +# 7 wall windows mirroring the Summary §11 1:1, matching the Elmhurst +# mapper's per-row extraction (mapper-vs-hand-built field-parity test). +# Single glazing-type group (Manufacturer g⊥=0.76 / PVC / U=2.8). Per- +# bp totals preserved (cascade-equivalent): +# Main NE (orient=2): 8.74 m² split 2.16 + 1.92 + 0.6 + 1.32 + 2.04 + 0.7 +# Ext1 SW (orient=6): 1.80 m² unchanged # No roof windows, no rooflights. SECTION_6_VERTICAL_WINDOWS: tuple[SapWindow, ...] = ( - make_window(orientation=2, width=8.74, height=1.0, solar_transmittance=0.76), - make_window(orientation=6, width=1.80, height=1.0, solar_transmittance=0.76), + # Windows on Main — NE (orient=2) + make_window(orientation=2, width=2.16, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), + make_window(orientation=2, width=1.92, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), + make_window(orientation=2, width=0.60, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), + make_window(orientation=2, width=1.32, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), + # Window on Ext1 — SW (orient=6) + make_window(orientation=6, width=1.80, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="1st Extension"), + # Two more Main NE entries (mapper interleaves Ext1 SW between them) + make_window(orientation=2, width=2.04, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), + make_window(orientation=2, width=0.70, height=1.0, solar_transmittance=0.76, + u_value=2.8, window_location="Main"), ) SECTION_6_ROOF_WINDOWS: tuple[RoofWindowInput, ...] = () SECTION_6_ROOFLIGHTS: tuple[RooflightInput, ...] = ()