Merge pull request #902 from alphagov/task-to-set-job-to-error

Task to set job to error
This commit is contained in:
minglis
2017-04-18 16:07:32 +01:00
committed by GitHub
5 changed files with 50 additions and 4 deletions

View File

@@ -12,7 +12,7 @@ from celery.exceptions import Retry
from app import (encryption, DATETIME_FORMAT)
from app.celery import provider_tasks
from app.celery import tasks
from app.celery.tasks import s3, build_dvla_file, create_dvla_file_contents
from app.celery.tasks import s3, build_dvla_file, create_dvla_file_contents, update_dvla_job_to_error
from app.celery.tasks import (
process_job,
process_row,
@@ -1059,3 +1059,16 @@ def test_update_job_to_sent_to_dvla(sample_letter_template, sample_letter_job):
assert [(n.status == 'sending', n.sent_by == 'dvla') for n in updated_notifications]
assert 'sent to dvla' == Job.query.filter_by(id=sample_letter_job.id).one().job_status
def test_update_dvla_job_to_error(sample_letter_template, sample_letter_job):
create_notification(template=sample_letter_template, job=sample_letter_job)
create_notification(template=sample_letter_template, job=sample_letter_job)
update_dvla_job_to_error(job_id=sample_letter_job.id)
updated_notifications = Notification.query.all()
for n in updated_notifications:
assert n.status == 'created'
assert not n.sent_by
assert 'error' == Job.query.filter_by(id=sample_letter_job.id).one().job_status

View File

@@ -673,7 +673,7 @@ def test_get_jobs_accepts_page_parameter(
@pytest.mark.parametrize('statuses_filter, expected_statuses', [
('', JOB_STATUS_TYPES),
('pending', [JOB_STATUS_PENDING]),
('pending, in progress, finished, sending limits exceeded, scheduled, cancelled, ready to send, sent to dvla',
('pending, in progress, finished, sending limits exceeded, scheduled, cancelled, ready to send, sent to dvla, error', # noqa
JOB_STATUS_TYPES),
# bad statuses are accepted, just return no data
('foo', [])
@@ -694,6 +694,7 @@ def test_get_jobs_can_filter_on_statuses(
create_job(notify_db, notify_db_session, job_status='cancelled')
create_job(notify_db, notify_db_session, job_status='ready to send')
create_job(notify_db, notify_db_session, job_status='sent to dvla')
create_job(notify_db, notify_db_session, job_status='error')
path = '/service/{}/job'.format(sample_service.id)
response = client.get(