Update how "sending to TV numbers" Zendesk tickets are created

This commit is contained in:
Katie Smith
2021-09-23 16:35:12 +01:00
parent 0c0c7f4478
commit 58597653df
2 changed files with 14 additions and 7 deletions

View File

@@ -301,13 +301,13 @@ def check_for_services_with_high_failure_rates_or_sending_to_tv_numbers():
if current_app.config['NOTIFY_ENVIRONMENT'] in ['live', 'production', 'test']: if current_app.config['NOTIFY_ENVIRONMENT'] in ['live', 'production', 'test']:
message += ("\nYou can find instructions for this ticket in our manual:\n" message += ("\nYou can find instructions for this ticket in our manual:\n"
"https://github.com/alphagov/notifications-manuals/wiki/Support-Runbook#Deal-with-services-with-high-failure-rates-or-sending-sms-to-tv-numbers") # noqa "https://github.com/alphagov/notifications-manuals/wiki/Support-Runbook#Deal-with-services-with-high-failure-rates-or-sending-sms-to-tv-numbers") # noqa
zendesk_client.create_ticket( ticket = NotifySupportTicket(
subject="[{}] High failure rates for sms spotted for services".format( subject=f"[{current_app.config['NOTIFY_ENVIRONMENT']}] High failure rates for sms spotted for services",
current_app.config['NOTIFY_ENVIRONMENT']
),
message=message, message=message,
ticket_type=zendesk_client.TYPE_INCIDENT ticket_type=NotifySupportTicket.TYPE_INCIDENT,
technical_ticket=True
) )
zendesk_client.send_ticket_to_zendesk(ticket)
@notify_celery.task(name='trigger-link-tests') @notify_celery.task(name='trigger-link-tests')

View File

@@ -609,7 +609,11 @@ def test_check_for_services_with_high_failure_rates_or_sending_to_tv_numbers(
mocker, notify_db_session, failure_rates, sms_to_tv_numbers, expected_message mocker, notify_db_session, failure_rates, sms_to_tv_numbers, expected_message
): ):
mock_logger = mocker.patch('app.celery.tasks.current_app.logger.warning') mock_logger = mocker.patch('app.celery.tasks.current_app.logger.warning')
mock_create_ticket = mocker.patch('app.celery.scheduled_tasks.zendesk_client.create_ticket') mock_create_ticket = mocker.spy(NotifySupportTicket, '__init__')
mock_send_ticket_to_zendesk = mocker.patch(
'app.celery.scheduled_tasks.zendesk_client.send_ticket_to_zendesk',
autospec=True,
)
mock_failure_rates = mocker.patch( mock_failure_rates = mocker.patch(
'app.celery.scheduled_tasks.dao_find_services_with_high_failure_rates', return_value=failure_rates 'app.celery.scheduled_tasks.dao_find_services_with_high_failure_rates', return_value=failure_rates
) )
@@ -625,10 +629,13 @@ def test_check_for_services_with_high_failure_rates_or_sending_to_tv_numbers(
assert mock_sms_to_tv_numbers.called assert mock_sms_to_tv_numbers.called
mock_logger.assert_called_once_with(expected_message) mock_logger.assert_called_once_with(expected_message)
mock_create_ticket.assert_called_with( mock_create_ticket.assert_called_with(
ANY,
message=expected_message + zendesk_actions, message=expected_message + zendesk_actions,
subject="[test] High failure rates for sms spotted for services", subject="[test] High failure rates for sms spotted for services",
ticket_type='incident' ticket_type='incident',
technical_ticket=True
) )
mock_send_ticket_to_zendesk.assert_called_once()
def test_trigger_link_tests_calls_for_all_providers( def test_trigger_link_tests_calls_for_all_providers(