def test_get_notification_count_for_job_id(mocker): mock_get = mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.get') NotificationApiClient().get_notification_count_for_job_id(service_id='foo', job_id='bar') mock_get.assert_called_once_with( url='/service/foo/job/bar/notification_count', )
def test_get_api_notifications_changes_letter_statuses(mocker, letter_status, expected_status): service_id = str(uuid.uuid4()) sms_notification = single_notification_json(service_id, notification_type='sms', status='created') email_notification = single_notification_json(service_id, notification_type='email', status='created') letter_notification = single_notification_json(service_id, notification_type='letter', status=letter_status) notis = notification_json(service_id=service_id, rows=0) notis['notifications'] = [ sms_notification, email_notification, letter_notification ] mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.get', return_value=notis) ret = NotificationApiClient().get_api_notifications_for_service(service_id) assert ret['notifications'][0]['notification_type'] == 'sms' assert ret['notifications'][1]['notification_type'] == 'email' assert ret['notifications'][2]['notification_type'] == 'letter' assert ret['notifications'][0]['status'] == 'created' assert ret['notifications'][1]['status'] == 'created' assert ret['notifications'][2]['status'] == expected_status
def test_get_api_notifications_changes_letter_statuses(mocker, letter_status, expected_status): service_id = str(uuid.uuid4()) sms_notification = single_notification_json(service_id, notification_type="sms", status="created", api_key="api key id") email_notification = single_notification_json(service_id, notification_type="email", status="created", api_key="api key id") letter_notification = single_notification_json(service_id, notification_type="letter", status=letter_status, api_key="api key id") notis = notification_json(service_id=service_id, rows=0) notis["notifications"] = [ sms_notification, email_notification, letter_notification ] mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.get", return_value=notis, ) ret = NotificationApiClient().get_api_notifications_for_service(service_id) assert ret["notifications"][0]["notification_type"] == "sms" assert ret["notifications"][1]["notification_type"] == "email" assert ret["notifications"][2]["notification_type"] == "letter" assert ret["notifications"][0]["status"] == "created" assert ret["notifications"][1]["status"] == "created" assert ret["notifications"][2]["status"] == expected_status
def test_client_gets_notifications_for_service_and_job_by_page( mocker, arguments, expected_call): mock_get = mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.get') NotificationApiClient().get_notifications_for_service( 'abcd1234', **arguments) mock_get.assert_called_once_with(**expected_call)
def test_update_notification_to_cancelled(mocker): mock_post = mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.post') NotificationApiClient().update_notification_to_cancelled('foo', 'bar') mock_post.assert_called_once_with( url='/service/foo/notifications/bar/cancel', data={}, )
def test_update_notification_to_cancelled(mocker): mock_post = mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.post") NotificationApiClient().update_notification_to_cancelled("foo", "bar") mock_post.assert_called_once_with( url="/service/foo/notifications/bar/cancel", data={}, )
def test_get_api_notifications_includes_jobs(mocker): service_id = str(uuid.uuid4()) notis = notification_json(service_id=service_id, rows=0) notis["notifications"] = [] mock_get = mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.get", return_value=notis, ) NotificationApiClient().get_api_notifications_for_service(service_id) call_args_params = mock_get.call_args[1]["params"] assert call_args_params.get("include_jobs") is True
def test_send_precompiled_letter(mocker, logged_in_client, active_user_with_permissions): mock_post = mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.post') NotificationApiClient().send_precompiled_letter( 'abcd-1234', 'my_file.pdf', 'file-ID', 'second', 'Bugs Bunny, 12 Hole Avenue, Looney Town') mock_post.assert_called_once_with( url='/service/abcd-1234/send-pdf-letter', data={ 'filename': 'my_file.pdf', 'file_id': 'file-ID', 'created_by': active_user_with_permissions['id'], 'postage': 'second', 'recipient_address': 'Bugs Bunny, 12 Hole Avenue, Looney Town', })
def test_send_notification(mocker, logged_in_client, active_user_with_permissions): mock_post = mocker.patch('app.notify_client.notification_api_client.NotificationApiClient.post') NotificationApiClient().send_notification( 'foo', template_id='bar', recipient='07700900001', personalisation=None, sender_id=None ) mock_post.assert_called_once_with( url='/service/foo/send-notification', data={ 'template_id': 'bar', 'to': '07700900001', 'personalisation': None, 'created_by': active_user_with_permissions.id } )
def test_send_notification(mocker, logged_in_client, active_user_with_permissions): mock_post = mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.post") NotificationApiClient().send_notification( "foo", template_id="bar", recipient="07700900001", personalisation=None, sender_id=None, ) mock_post.assert_called_once_with( url="/service/foo/send-notification", data={ "template_id": "bar", "to": "07700900001", "personalisation": None, "created_by": active_user_with_permissions["id"], }, )
def test_get_api_notifications_ignores_non_api_notifications(mocker): service_id = str(uuid.uuid4()) notis = notification_json(service_id=service_id, rows=0) admin_notification = single_notification_json(service_id, notification_type="email", status="created", api_key=None) api_notification = single_notification_json(service_id, notification_type="email", status="created", api_key="api key id") notis["notifications"] = [admin_notification, api_notification] mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.get", return_value=notis, ) ret = NotificationApiClient().get_api_notifications_for_service(service_id) assert len(ret["notifications"]) == 1 assert ret["notifications"][0]["api_key"] == "api key id"
def test_get_notification(mocker): mock_get = mocker.patch( 'app.notify_client.notification_api_client.NotificationApiClient.get') NotificationApiClient().get_notification('foo', 'bar') mock_get.assert_called_once_with(url='/service/foo/notifications/bar')
from app.notify_client.platform_stats_api_client import ( platform_stats_api_client, ) from app.commands import setup_commands from app.utils import requires_auth from app.utils import get_cdn_domain from app.utils import gmt_timezones login_manager = LoginManager() csrf = CSRFProtect() service_api_client = ServiceAPIClient() user_api_client = UserApiClient() api_key_api_client = ApiKeyApiClient() job_api_client = JobApiClient() notification_api_client = NotificationApiClient() support_api_client = SupportApiClient() status_api_client = StatusApiClient() invite_api_client = InviteApiClient() template_statistics_client = TemplateStatisticsApiClient() events_api_client = EventsApiClient() provider_client = ProviderClient() email_branding_client = EmailBrandingClient() organisations_client = OrganisationsClient() org_invite_api_client = OrgInviteApiClient() asset_fingerprinter = AssetFingerprinter() statsd_client = StatsdClient() deskpro_client = DeskproClient() letter_jobs_client = LetterJobsClient() inbound_number_client = InboundNumberClient() billing_api_client = BillingAPIClient()
def test_get_notification(mocker): mock_get = mocker.patch( "app.notify_client.notification_api_client.NotificationApiClient.get") NotificationApiClient().get_notification("foo", "bar") mock_get.assert_called_once_with(url="/service/foo/notifications/bar")
def test_client_gets_notifications(mocker): mock_get = mocker.patch('app.notify_client.notification_api_client.NotificationApiClient.get') NotificationApiClient().get_all_notifications() mock_get.assert_called_once_with(url='/notifications', params={})