mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-02 17:31:14 -05:00
add get_earlier_provider_message fn to broadcast_event
replacing get_earlier_provider_messages. The old function returned the previous references for earlier events for a broadcast_message. However, these depend on the message sent to a specific provider, so the function needs to change. It now takes in a provider, and only returns broadcast_provider_messages sent to that provider. If there are earlier broadcast_events without a provider_message for the chosen provider, it raises an exception - you cannot cancel a message if all the previous events have not been created properly (as we wouldn't know what references to cancel).
This commit is contained in:
@@ -1,12 +1,11 @@
|
||||
from datetime import datetime
|
||||
|
||||
from freezegun import freeze_time
|
||||
|
||||
from app.models import BROADCAST_TYPE, BroadcastStatusType, BroadcastEventMessageType
|
||||
from app.models import BROADCAST_TYPE, BroadcastEventMessageType
|
||||
from app.dao.broadcast_message_dao import get_earlier_events_for_broadcast_event, create_broadcast_provider_message
|
||||
|
||||
from tests.app.db import create_broadcast_message, create_template, create_broadcast_event
|
||||
|
||||
|
||||
def test_get_earlier_events_for_broadcast_event(sample_service):
|
||||
t = create_template(sample_service, BROADCAST_TYPE)
|
||||
bm = create_broadcast_message(t)
|
||||
@@ -44,10 +43,9 @@ def test_get_earlier_events_for_broadcast_event(sample_service):
|
||||
assert earlier_events == [events[0], events[1]]
|
||||
|
||||
|
||||
@freeze_time('2020-02-03 04:05:06')
|
||||
def test_create_broadcast_provider_message_creates_in_correct_state(sample_broadcast_service):
|
||||
t = create_template(sample_broadcast_service, BROADCAST_TYPE)
|
||||
broadcast_message = create_broadcast_message(t, status=BroadcastStatusType.APPROVED)
|
||||
broadcast_message = create_broadcast_message(t)
|
||||
broadcast_event = create_broadcast_event(
|
||||
broadcast_message,
|
||||
sent_at=datetime(2020, 1, 1, 12, 0, 0),
|
||||
@@ -59,4 +57,5 @@ def test_create_broadcast_provider_message_creates_in_correct_state(sample_broad
|
||||
|
||||
assert broadcast_provider_message.status == 'sending'
|
||||
assert broadcast_provider_message.broadcast_event_id == broadcast_event.id
|
||||
assert broadcast_provider_message.created_at == datetime.utcnow()
|
||||
assert broadcast_provider_message.created_at is not None
|
||||
assert broadcast_provider_message.updated_at is None
|
||||
|
||||
Reference in New Issue
Block a user