diff --git a/app/dao/returned_letters_dao.py b/app/dao/returned_letters_dao.py index 48e121ce0..7e313178c 100644 --- a/app/dao/returned_letters_dao.py +++ b/app/dao/returned_letters_dao.py @@ -8,7 +8,6 @@ from app.dao.dao_utils import transactional from app.models import Notification, NotificationHistory, ReturnedLetter - def _get_notification_ids_for_references(references): notification_ids = db.session.query(Notification.id, Notification.service_id).filter( Notification.reference.in_(references) diff --git a/app/models.py b/app/models.py index a7ece9dbf..577beb64a 100644 --- a/app/models.py +++ b/app/models.py @@ -2080,4 +2080,3 @@ class ReturnedLetter(db.Model): service_id = db.Column(UUID(as_uuid=True), db.ForeignKey('services.id'), unique=False, index=True, nullable=False) service = db.relationship(Service, backref=db.backref('returned_letters')) notification_id = db.Column(UUID(as_uuid=True), unique=True, nullable=False) - diff --git a/app/service/rest.py b/app/service/rest.py index e34f90e26..4416a5a39 100644 --- a/app/service/rest.py +++ b/app/service/rest.py @@ -942,7 +942,7 @@ def check_if_reply_to_address_already_in_use(service_id, email_address): ) -@service_blueprint.route('/returned-letter-summary') +@service_blueprint.route('//returned-letter-summary', methods=['GET']) def returned_letter_summary(service_id): results = get_returned_letter_summary(service_id) diff --git a/tests/app/db.py b/tests/app/db.py index 50840bf2c..ac23654c2 100644 --- a/tests/app/db.py +++ b/tests/app/db.py @@ -950,11 +950,11 @@ def create_returned_letter(service, reported_at=None): template = create_template(service=service, template_type=LETTER_TYPE) notification = create_notification(template=template, status=NOTIFICATION_RETURNED_LETTER) returned_letter = ReturnedLetter( - service_id= service.id, - reported_at= reported_at or datetime.utcnow(), - notification_id= notification.id + service_id=service.id, + reported_at=reported_at or datetime.utcnow(), + notification_id=notification.id ) db.session.add(returned_letter) db.session.commit() - return returned_letter \ No newline at end of file + return returned_letter diff --git a/tests/app/service/test_rest.py b/tests/app/service/test_rest.py index 5677428be..cd6bbae8f 100644 --- a/tests/app/service/test_rest.py +++ b/tests/app/service/test_rest.py @@ -47,7 +47,7 @@ from tests.app.db import ( create_domain, create_email_branding, create_annual_billing, -) + create_returned_letter) from tests.app.db import create_user @@ -3372,3 +3372,12 @@ def test_get_monthly_notification_data_by_service(mocker, admin_request): dao_mock.assert_called_once_with(start_date, end_date) assert response == [] + + +def test_get_returned_letter_summary(admin_request, sample_service): + create_returned_letter(sample_service, reported_at=datetime.utcnow()) + create_returned_letter(sample_service, reported_at=datetime.utcnow()-timedelta(days=3)) + + response = admin_request.get('service.returned_letter_summary', service_id=sample_service.id) + + assert len(response) == 2 \ No newline at end of file