diff --git a/app/models/broadcast_message.py b/app/models/broadcast_message.py index 3385ccc08..3339c07ff 100644 --- a/app/models/broadcast_message.py +++ b/app/models/broadcast_message.py @@ -162,7 +162,7 @@ class BroadcastMessage(JSONModel): def reference(self): if self.template_id: return self._dict['template_name'] - return self._dict['reference'] + return self._dict['cap_event'] or self._dict['reference'] @property def template(self): diff --git a/tests/__init__.py b/tests/__init__.py index 2dca4e6d3..58e67ec82 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -684,6 +684,7 @@ def broadcast_message_json( simple_polygons=None, content=None, reference=None, + cap_event=None, template_name='Example template', ): return { @@ -696,6 +697,7 @@ def broadcast_message_json( 'template_name': template_name, 'content': content or 'This is a test', 'reference': reference, + 'cap_event': cap_event, 'personalisation': {}, 'areas': areas or { diff --git a/tests/app/main/views/test_broadcast.py b/tests/app/main/views/test_broadcast.py index 8d83ca66d..9fe537c47 100644 --- a/tests/app/main/views/test_broadcast.py +++ b/tests/app/main/views/test_broadcast.py @@ -1866,12 +1866,26 @@ def test_view_pending_broadcast( ) +@pytest.mark.parametrize('extra_broadcast_json_fields, expected_banner_text', ( + ({'reference': 'ABC123'}, ( + 'Test User Create Broadcasts Permission wants to broadcast ABC123 ' + 'No phones will get this alert. ' + 'Start broadcasting now Reject this alert' + )), + ({'cap_event': 'Severe flood warning', 'reference': 'ABC123'}, ( + 'Test User Create Broadcasts Permission wants to broadcast Severe flood warning ' + 'No phones will get this alert. ' + 'Start broadcasting now Reject this alert' + )), +)) def test_view_pending_broadcast_without_template( mocker, client_request, service_one, fake_uuid, active_user_approve_broadcasts_permission, + extra_broadcast_json_fields, + expected_banner_text, ): broadcast_creator = create_active_user_create_broadcasts_permissions(with_unique_id=True) mocker.patch( @@ -1883,8 +1897,8 @@ def test_view_pending_broadcast_without_template( created_by_id=broadcast_creator['id'], finishes_at=None, status='pending-approval', - reference='No template test', content='Uh-oh', + **extra_broadcast_json_fields, ), ) client_request.login(active_user_approve_broadcasts_permission) @@ -1902,11 +1916,8 @@ def test_view_pending_broadcast_without_template( assert ( normalize_spaces(page.select_one('.banner').text) - ) == ( - 'Test User Create Broadcasts Permission wants to broadcast No template test ' - 'No phones will get this alert. ' - 'Start broadcasting now Reject this alert' - ) + ) == expected_banner_text + assert ( normalize_spaces(page.select_one('.broadcast-message-wrapper').text) ) == (