From db3477d6bb8e6e07f552a6cd4d2aebaa88c90478 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Fri, 5 Jun 2026 13:49:57 +0000 Subject: [PATCH] =?UTF-8?q?Extract=20door=20height=20from=20API=20response?= =?UTF-8?q?=20into=20height=5Fmm=20=F0=9F=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- datatypes/magicplan/domain/mapper.py | 1 + datatypes/magicplan/domain/models.py | 1 + datatypes/magicplan/domain/tests/test_mapper.py | 6 ++++++ .../magic_plan/test_magic_plan_postgres_repository.py | 2 +- 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/datatypes/magicplan/domain/mapper.py b/datatypes/magicplan/domain/mapper.py index 89bb3dc7..f674db6f 100644 --- a/datatypes/magicplan/domain/mapper.py +++ b/datatypes/magicplan/domain/mapper.py @@ -110,6 +110,7 @@ def _map_window_ventilation( def _map_door(wi: api.WallItem) -> Door: return Door( width_mm=round(wi.size.x * 1000, 0), + height_mm=0.0, ventilation=_map_door_ventilation(wi.custom_displayable_fields), ) diff --git a/datatypes/magicplan/domain/models.py b/datatypes/magicplan/domain/models.py index cef9a6d5..9beb3832 100644 --- a/datatypes/magicplan/domain/models.py +++ b/datatypes/magicplan/domain/models.py @@ -28,6 +28,7 @@ class Window: @dataclass class Door: width_mm: float + height_mm: float ventilation: Optional[DoorVentilation] = None diff --git a/datatypes/magicplan/domain/tests/test_mapper.py b/datatypes/magicplan/domain/tests/test_mapper.py index 65f83023..ce0b7e39 100644 --- a/datatypes/magicplan/domain/tests/test_mapper.py +++ b/datatypes/magicplan/domain/tests/test_mapper.py @@ -140,6 +140,12 @@ def test_door_width_rounded_to_2dp(plan: Plan) -> None: assert door.width_mm == 800.0 +def test_door_height_is_correct(plan: Plan) -> None: + # Kitchen doorhinged has size.z = 2.04 m = 2040 mm + door = plan.floors[0].rooms[0].doors[0] + assert door.height_mm == 2040.0 + + # --- Ventilation --- diff --git a/tests/repositories/magic_plan/test_magic_plan_postgres_repository.py b/tests/repositories/magic_plan/test_magic_plan_postgres_repository.py index d19896f2..7ae75724 100644 --- a/tests/repositories/magic_plan/test_magic_plan_postgres_repository.py +++ b/tests/repositories/magic_plan/test_magic_plan_postgres_repository.py @@ -40,7 +40,7 @@ def _plan() -> Plan: num_trickle_vents=2, ), ) - door = Door(width_mm=762.0, ventilation=DoorVentilation(undercut_mm=70.0)) + door = Door(width_mm=762.0, height_mm=2040.0, ventilation=DoorVentilation(undercut_mm=70.0)) room = Room( name="Living Room", width_m=4.0,