Files
notifications-admin/tests/app/models/test_event.py

90 lines
2.7 KiB
Python
Raw Normal View History

import pytest
from app.models.event import ServiceEvent
from tests.conftest import sample_uuid
@pytest.mark.parametrize('key, value_from, value_to, expected', (
('restricted', True, False, (
'Made this service live'
)),
('restricted', False, True, (
'Put this service back into trial mode'
)),
('active', False, True, (
'Unsuspended this service'
)),
('active', True, False, (
'Deleted this service'
)),
('contact_link', 'x', 'y', (
'Set the contact details for this service to y'
)),
('email_branding', 'foo', 'bar', (
'Updated this services email branding'
)),
('inbound_api', 'foo', 'bar', (
'Updated the callback for received text messages'
)),
('letter_branding', None, sample_uuid(), (
'Updated the logo on this services letters'
)),
('letter_branding', sample_uuid(), None, (
'Removed the logo from this services letters'
)),
('letter_contact_block', None, sample_uuid(), (
'Updated the default letter contact block for this service'
)),
('message_limit', 1, 2, (
'Increased this services daily message limit from 1 to 2'
)),
('message_limit', 2, 1, (
'Reduced this services daily message limit from 2 to 1'
)),
('name', 'Old', 'New', (
'Renamed this service from Old to New'
)),
('permissions', ['a', 'b', 'c'], ['a', 'b', 'c', 'd'], (
'Added d to this services permissions'
)),
('permissions', ['a', 'b', 'c'], ['a', 'b'], (
'Removed c from this services permissions'
)),
('permissions', ['a', 'b', 'c'], ['c', 'd', 'e'], (
'Removed a and b from this services permissions, added d and e'
)),
('prefix_sms', True, False, (
'Set text messages to not start with the name of this service'
)),
('prefix_sms', False, True, (
'Set text messages to start with the name of this service'
)),
('research_mode', True, False, (
'Took this service out of research mode'
)),
('research_mode', False, True, (
'Put this service into research mode'
)),
('service_callback_api', 'foo', 'bar', (
'Updated the callback for delivery receipts'
)),
))
def test_service_event(
key,
value_from,
value_to,
expected,
):
event = ServiceEvent(
{
'created_at': 'foo',
'updated_at': 'bar',
'created_by_id': sample_uuid(),
},
key,
value_from,
value_to,
)
assert event.relevant is True
assert str(event) == expected