diff --git a/app/celery/broadcast_message_tasks.py b/app/celery/broadcast_message_tasks.py index a02c6004b..0cdc2800a 100644 --- a/app/celery/broadcast_message_tasks.py +++ b/app/celery/broadcast_message_tasks.py @@ -32,7 +32,8 @@ def send_broadcast_event(broadcast_event_id): def send_broadcast_provider_message(broadcast_event_id, provider): broadcast_event = dao_get_broadcast_event_by_id(broadcast_event_id) - broadcast_provider_message = create_broadcast_provider_message(broadcast_event, provider) + broadcast_provider_message, message_number = create_broadcast_provider_message(broadcast_event, provider) + formatted_message_number = format_sequential_number(message_number.broadcast_provider_message_number) current_app.logger.info( f'invoking cbc proxy to send ' @@ -50,6 +51,7 @@ def send_broadcast_provider_message(broadcast_event_id, provider): if broadcast_event.message_type == BroadcastEventMessageType.ALERT: cbc_proxy_provider_client.create_and_send_broadcast( identifier=str(broadcast_provider_message.id), + message_number=formatted_message_number, headline="GOV.UK Notify Broadcast", description=broadcast_event.transmitted_content['body'], areas=areas, @@ -59,6 +61,7 @@ def send_broadcast_provider_message(broadcast_event_id, provider): elif broadcast_event.message_type == BroadcastEventMessageType.UPDATE: cbc_proxy_provider_client.update_and_send_broadcast( identifier=str(broadcast_provider_message.id), + message_number=formatted_message_number, headline="GOV.UK Notify Broadcast", description=broadcast_event.transmitted_content['body'], areas=areas, @@ -69,6 +72,7 @@ def send_broadcast_provider_message(broadcast_event_id, provider): elif broadcast_event.message_type == BroadcastEventMessageType.CANCEL: cbc_proxy_provider_client.cancel_broadcast( identifier=str(broadcast_provider_message.id), + message_number=formatted_message_number, headline="GOV.UK Notify Broadcast", description=broadcast_event.transmitted_content['body'], areas=areas, diff --git a/app/dao/broadcast_message_dao.py b/app/dao/broadcast_message_dao.py index 281e5b09a..e79f0a8f8 100644 --- a/app/dao/broadcast_message_dao.py +++ b/app/dao/broadcast_message_dao.py @@ -58,4 +58,4 @@ def create_broadcast_provider_message(broadcast_event, provider): broadcast_provider_message_id=broadcast_provider_message_id) db.session.add(provider_message_number) db.session.commit() - return provider_message + return provider_message, provider_message_number diff --git a/tests/app/celery/test_broadcast_message_tasks.py b/tests/app/celery/test_broadcast_message_tasks.py index 61aedcdd7..e49db47e7 100644 --- a/tests/app/celery/test_broadcast_message_tasks.py +++ b/tests/app/celery/test_broadcast_message_tasks.py @@ -133,6 +133,7 @@ def test_send_broadcast_provider_message_sends_data_correctly(mocker, sample_ser mock_create_broadcast.assert_called_once_with( identifier=str(broadcast_provider_message.id), + message_number=mocker.ANY, headline='GOV.UK Notify Broadcast', description='this is an emergency broadcast message', areas=[{ @@ -178,6 +179,7 @@ def test_send_broadcast_provider_message_sends_update_with_references(mocker, sa mock_update_broadcast.assert_called_once_with( identifier=str(broadcast_provider_message.id), + message_number=mocker.ANY, headline="GOV.UK Notify Broadcast", description='this is an emergency broadcast message', areas=[{ @@ -223,6 +225,7 @@ def test_send_broadcast_provider_message_sends_cancel_with_references(mocker, sa mock_cancel_broadcast.assert_called_once_with( identifier=str(broadcast_provider_message.id), + message_number=mocker.ANY, headline="GOV.UK Notify Broadcast", description='this is an emergency broadcast message', areas=[{ @@ -265,6 +268,7 @@ def test_send_broadcast_provider_message_errors(mocker, sample_service): mock_create_broadcast.assert_called_once_with( identifier=ANY, + message_number=mocker.ANY, headline="GOV.UK Notify Broadcast", description='this is an emergency broadcast message', areas=[{ diff --git a/tests/app/dao/test_broadcast_message_dao.py b/tests/app/dao/test_broadcast_message_dao.py index a8fb160b5..dd5a69ac4 100644 --- a/tests/app/dao/test_broadcast_message_dao.py +++ b/tests/app/dao/test_broadcast_message_dao.py @@ -53,7 +53,7 @@ def test_create_broadcast_provider_message_creates_in_correct_state(sample_broad transmitted_content={'body': 'Initial content'} ) - broadcast_provider_message = create_broadcast_provider_message(broadcast_event, 'fake-provider') + broadcast_provider_message, message_number = create_broadcast_provider_message(broadcast_event, 'fake-provider') assert broadcast_provider_message.status == 'sending' assert broadcast_provider_message.broadcast_event_id == broadcast_event.id diff --git a/tests/app/db.py b/tests/app/db.py index a0354e894..4dd2ec9d1 100644 --- a/tests/app/db.py +++ b/tests/app/db.py @@ -1074,4 +1074,4 @@ def create_broadcast_provider_message( db.session.add(provider_message_number) db.session.commit() - return provider_message + return provider_message, provider_message_number