diff --git a/etl/hubspot/tests/test_abri_flow_triggers.py b/etl/hubspot/tests/test_abri_flow_triggers.py index 4896da5db..842a4c522 100644 --- a/etl/hubspot/tests/test_abri_flow_triggers.py +++ b/etl/hubspot/tests/test_abri_flow_triggers.py @@ -147,6 +147,33 @@ def test_a_changed_surveyor_on_a_booked_deal_builds_an_amend_job_message() -> No assert message["third_party_surveyor_identifier"] == "NEWSURVEYOR" +def test_a_blank_surveyor_on_a_booked_deal_with_no_stored_surveyor_is_not_a_change() -> None: + # Arrange: booking exists; surveyor unset in the DB, blank in HubSpot. + old_deal = make_old_deal( + project_code=ABRI_PROJECT_CODE, + confirmed_survey_date=datetime(2026, 6, 24, tzinfo=timezone.utc), + confirmed_survey_time="14:30", + third_party_surveyor_identifier=None, + ) + new_deal = make_new_deal( + confirmed_survey_date="2026-06-24", + confirmed_survey_time="14:30", + third_party_surveyor_identifier="", + ) + + # Act + message = HubspotDealDiffer.check_abri_triggers_and_construct_message( + hubspot_deal_id=DEAL_ID, + new_deal=new_deal, + new_project=None, + new_listing=LISTING, + old_deal=old_deal, + ) + + # Assert + assert message is None + + def test_a_first_expected_commencement_date_builds_a_tenant_sync_message() -> None: # Arrange old_deal = make_old_deal(