mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-02 17:31:14 -05:00
fix
This commit is contained in:
@@ -1,11 +1,14 @@
|
|||||||
|
import datetime
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
from time import monotonic
|
from time import monotonic
|
||||||
|
from unittest.mock import MagicMock
|
||||||
|
|
||||||
import botocore
|
import botocore
|
||||||
import phonenumbers
|
import phonenumbers
|
||||||
from boto3 import client
|
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 import AWS_CLIENT_CONFIG
|
||||||
from app.clients.sms import SmsClient
|
from app.clients.sms import SmsClient
|
||||||
from app.cloudfoundry_config import cloud_config
|
from app.cloudfoundry_config import cloud_config
|
||||||
@@ -95,3 +98,27 @@ class AwsSnsClient(SmsClient):
|
|||||||
if not matched:
|
if not matched:
|
||||||
self.current_app.logger.error("No valid numbers found in {}".format(to))
|
self.current_app.logger.error("No valid numbers found in {}".format(to))
|
||||||
raise ValueError("No valid numbers found for SMS delivery")
|
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