From 5f77fbf4e45194a6fe18486e2cf199896333b0fa Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Tue, 12 May 2026 14:54:14 +0000 Subject: [PATCH] =?UTF-8?q?Fetch=20all=20pages=20in=20get=5Fplans=20pagina?= =?UTF-8?q?tion=20loop=20=F0=9F=9F=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/magic_plan/magic_plan_service.py | 12 +++--------- .../magic_plan/tests/test_magic_plan_service.py | 14 +++++++------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/backend/magic_plan/magic_plan_service.py b/backend/magic_plan/magic_plan_service.py index fb0a7610..22e19ddf 100644 --- a/backend/magic_plan/magic_plan_service.py +++ b/backend/magic_plan/magic_plan_service.py @@ -3,11 +3,7 @@ import json from datetime import datetime, timezone from typing import Optional -from datatypes.magicplan.api.response import ( - MagicPlanPlan, - PlanSummary, - PlansListResponse, -) +from datatypes.magicplan.api.response import MagicPlanPlan, PlanSummary from datatypes.magicplan.domain.mapper import map_plan from datatypes.magicplan.domain.models import Plan @@ -39,10 +35,8 @@ class MagicPlanService: if uprn is not None: logger.info("MagicPlanService.run uprn=%s", uprn) - plans_response: PlansListResponse = self._client.get_plans() - matched: Optional[PlanSummary] = find_matching_plan( - plans_response.plans, address - ) + plans: list[PlanSummary] = self._client.get_plans() + matched: Optional[PlanSummary] = find_matching_plan(plans, address) if matched is None: raise ValueError(f"No MagicPlan found for address: {address!r}") diff --git a/backend/magic_plan/tests/test_magic_plan_service.py b/backend/magic_plan/tests/test_magic_plan_service.py index f6954824..158cf4d6 100644 --- a/backend/magic_plan/tests/test_magic_plan_service.py +++ b/backend/magic_plan/tests/test_magic_plan_service.py @@ -91,7 +91,7 @@ def test_run_fetches_plan_with_matched_id( domain_plan: Plan, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan service = _make_service(mock_client) with patch( @@ -114,7 +114,7 @@ def test_run_returns_mapped_plan( domain_plan: Plan, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan service = _make_service(mock_client) with patch( @@ -137,7 +137,7 @@ def test_run_calls_save_plan_with_mapped_plan( plan_summary: PlanSummary, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan service = _make_service(mock_client) with patch( @@ -161,7 +161,7 @@ def test_run_accepts_uprn_without_error( plan_summary: PlanSummary, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan service = _make_service(mock_client) with patch( @@ -184,7 +184,7 @@ def test_run_uploads_to_s3_with_uprn_key( plan_summary: PlanSummary, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] request = _make_request(uprn="100023336956") service = MagicPlanService(client=mock_client, s3_bucket=S3_BUCKET) with patch( @@ -211,7 +211,7 @@ def test_run_uploads_to_s3_with_deal_id_key_when_uprn_absent( plan_summary: PlanSummary, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan request = _make_request(hubspot_deal_id="deal-456", uprn=None) service = MagicPlanService(client=mock_client, s3_bucket=S3_BUCKET) @@ -242,7 +242,7 @@ def test_run_creates_uploaded_file_record( plan_summary: PlanSummary, ) -> None: # Arrange - mock_client.get_plans.return_value.plans = [plan_summary] + mock_client.get_plans.return_value = [plan_summary] mock_client.get_plan.return_value = api_magic_plan request = _make_request(hubspot_deal_id="deal-789", uprn="100023336956") service = MagicPlanService(client=mock_client, s3_bucket=S3_BUCKET)