Assert more specific details about the job

This commit is contained in:
richard-dds 2018-10-30 17:05:49 -04:00
parent b4e3cb6f05
commit 13363ee925

View File

@ -222,35 +222,42 @@ def test_random_user_cannot_view_request():
assert not RequestsAuthorization(user, request).can_view assert not RequestsAuthorization(user, request).can_view
def test_pending_finver_triggers_notification(queue): class TestStatusNotifications(object):
request = RequestFactory.create() def _assert_job(self, queue, request):
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_ACCEPTANCE) assert len(queue.get_queue()) == 1
request = Requests.set_status(request, RequestStatus.PENDING_FINANCIAL_VERIFICATION) job = queue.get_queue().jobs[0]
assert len(queue.get_queue()) == 1 assert job.func == queue._send_mail
assert job.args[0] == [request.creator.email]
def test_pending_finver_triggers_notification(self, queue):
request = RequestFactory.create()
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_ACCEPTANCE)
request = Requests.set_status(
request, RequestStatus.PENDING_FINANCIAL_VERIFICATION
)
self._assert_job(queue, request)
def test_changes_requested_triggers_notification(queue): def test_changes_requested_triggers_notification(self, queue):
request = RequestFactory.create() request = RequestFactory.create()
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_ACCEPTANCE) request = Requests.set_status(request, RequestStatus.PENDING_CCPO_ACCEPTANCE)
request = Requests.set_status(request, RequestStatus.CHANGES_REQUESTED) request = Requests.set_status(request, RequestStatus.CHANGES_REQUESTED)
assert len(queue.get_queue()) == 1 self._assert_job(queue, request)
def test_changes_requested_to_finver_triggers_notification(self, queue):
request = RequestFactory.create()
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_APPROVAL)
request = Requests.set_status(
request, RequestStatus.CHANGES_REQUESTED_TO_FINVER
)
self._assert_job(queue, request)
def test_changes_requested_to_finver_triggers_notification(queue): def test_approval_triggers_notification(self, queue):
request = RequestFactory.create() request = RequestFactory.create()
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_APPROVAL) request = Requests.set_status(request, RequestStatus.PENDING_CCPO_APPROVAL)
request = Requests.set_status(request, RequestStatus.CHANGES_REQUESTED_TO_FINVER) request = Requests.set_status(request, RequestStatus.APPROVED)
assert len(queue.get_queue()) == 1 self._assert_job(queue, request)
def test_submitted_does_not_trigger_notification(self, queue):
def test_approval_triggers_notification(queue): request = RequestFactory.create()
request = RequestFactory.create() request = Requests.set_status(request, RequestStatus.SUBMITTED)
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_APPROVAL) assert len(queue.get_queue()) == 0
request = Requests.set_status(request, RequestStatus.APPROVED)
assert len(queue.get_queue()) == 1
def test_submitted_does_not_trigger_notification(queue):
request = RequestFactory.create()
request = Requests.set_status(request, RequestStatus.SUBMITTED)
assert len(queue.get_queue()) == 0