From b3b4ae219185837fe6ab2d931efa4a5b4276eebc Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Fri, 5 Jun 2026 13:30:54 +0000 Subject: [PATCH] Convert Door.width_mm to store actual millimetres (multiply size.x by 1000) Co-Authored-By: Claude Sonnet 4.6 --- backend/app/db/models/tests/test_magic_plan_models.py | 4 ++-- datatypes/magicplan/domain/mapper.py | 2 +- datatypes/magicplan/domain/models.py | 2 +- datatypes/magicplan/domain/tests/test_mapper.py | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/app/db/models/tests/test_magic_plan_models.py b/backend/app/db/models/tests/test_magic_plan_models.py index 0830b184..986d3bcf 100644 --- a/backend/app/db/models/tests/test_magic_plan_models.py +++ b/backend/app/db/models/tests/test_magic_plan_models.py @@ -129,6 +129,6 @@ def test_door_has_width_mm_and_type() -> None: def test_door_instantiation() -> None: - door = MagicPlanDoorModel(magic_plan_room_id=1, width_mm=0.79, type="hinged") - assert door.width_mm == 0.79 + door = MagicPlanDoorModel(magic_plan_room_id=1, width_mm=790.0, type="hinged") + assert door.width_mm == 790.0 assert door.type == "hinged" diff --git a/datatypes/magicplan/domain/mapper.py b/datatypes/magicplan/domain/mapper.py index 8ef3a2d7..89bb3dc7 100644 --- a/datatypes/magicplan/domain/mapper.py +++ b/datatypes/magicplan/domain/mapper.py @@ -109,7 +109,7 @@ def _map_window_ventilation( def _map_door(wi: api.WallItem) -> Door: return Door( - width_mm=round(wi.size.x, 2), + width_mm=round(wi.size.x * 1000, 0), ventilation=_map_door_ventilation(wi.custom_displayable_fields), ) diff --git a/datatypes/magicplan/domain/models.py b/datatypes/magicplan/domain/models.py index bbd4262b..cef9a6d5 100644 --- a/datatypes/magicplan/domain/models.py +++ b/datatypes/magicplan/domain/models.py @@ -27,7 +27,7 @@ class Window: @dataclass class Door: - width_mm: float # TODO: should this be m or mm? + width_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 7b7d899a..65f83023 100644 --- a/datatypes/magicplan/domain/tests/test_mapper.py +++ b/datatypes/magicplan/domain/tests/test_mapper.py @@ -137,7 +137,7 @@ def test_door_width_is_float(plan: Plan) -> None: def test_door_width_rounded_to_2dp(plan: Plan) -> None: door = plan.floors[0].rooms[0].doors[0] - assert door.width_mm == 0.80 + assert door.width_mm == 800.0 # --- Ventilation ---