mirror of
https://github.com/GSA/notifications-api.git
synced 2026-01-02 05:41:57 -05:00
fix
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
import datetime
|
||||
import os
|
||||
import re
|
||||
from time import monotonic
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
import botocore
|
||||
import phonenumbers
|
||||
from boto3 import client
|
||||
|
||||
from app.celery.tasks import __total_sending_limits_for_job_exceeded
|
||||
from app.clients import AWS_CLIENT_CONFIG
|
||||
from app.clients.sms import SmsClient
|
||||
from app.cloudfoundry_config import cloud_config
|
||||
@@ -95,3 +98,27 @@ class AwsSnsClient(SmsClient):
|
||||
if not matched:
|
||||
self.current_app.logger.error("No valid numbers found in {}".format(to))
|
||||
raise ValueError("No valid numbers found for SMS delivery")
|
||||
|
||||
def test_total_sending_limits_exceeded(mocker):
|
||||
mock_service = MagicMock()
|
||||
mock_service.total_message_limit = 1000
|
||||
mock_job = MagicMock()
|
||||
mock_job.notification_count = 300
|
||||
job_id = "test_job_id"
|
||||
|
||||
mock_check_service_limit = mocker.patch(
|
||||
"app.clients.sms.aws_sns.check_service_over_total_message_limit"
|
||||
)
|
||||
mock_check_service_limit.return_value = 800
|
||||
|
||||
mock_utc_now = mocker.patch("app.clients.sms.aws_sns.utc_now")
|
||||
mock_utc_now.return_value = datetime(2024, 11, 10, 12, 0, 0)
|
||||
|
||||
mock_dao_update_job = mocker.patch("app.clients.sms.aws_sns.dao_update_job")
|
||||
|
||||
result = __total_sending_limits_for_job_exceeded(mock_service, mock_job, job_id)
|
||||
assert result is True
|
||||
|
||||
assert mock_job.job_status == "sensding limits exceeded"
|
||||
assert mock_job.processing_finished == datetime(2024, 11, 10, 12, 0, 0)
|
||||
mock_dao_update_job.assert_called_once_with(mock_job)
|
||||
|
||||
Reference in New Issue
Block a user