Order jobs by service

- newest first
This commit is contained in:
Martyn Inglis
2016-03-14 16:15:39 +00:00
parent 1aa6856ec0
commit beb6f7ca57
2 changed files with 19 additions and 1 deletions

View File

@@ -1,3 +1,4 @@
from sqlalchemy import desc
from app import db from app import db
from app.models import Job from app.models import Job
@@ -7,7 +8,7 @@ def dao_get_job_by_service_id_and_job_id(service_id, job_id):
def dao_get_jobs_by_service_id(service_id): def dao_get_jobs_by_service_id(service_id):
return Job.query.filter_by(service_id=service_id).all() return Job.query.filter_by(service_id=service_id).order_by(desc(Job.created_at)).all()
def dao_get_job_by_id(job_id): def dao_get_job_by_id(job_id):

View File

@@ -64,6 +64,23 @@ def test_get_jobs_for_service(notify_db, notify_db_session, sample_template):
assert one_job_from_db != other_job_from_db assert one_job_from_db != other_job_from_db
def test_get_jobs_for_service_in_created_at_order(notify_db, notify_db_session, sample_template):
from tests.app.conftest import sample_job as create_job
job_1 = create_job(notify_db, notify_db_session, sample_template.service, sample_template)
job_2 = create_job(notify_db, notify_db_session, sample_template.service, sample_template)
job_3 = create_job(notify_db, notify_db_session, sample_template.service, sample_template)
job_4 = create_job(notify_db, notify_db_session, sample_template.service, sample_template)
jobs = dao_get_jobs_by_service_id(sample_template.service.id)
assert len(jobs) == 4
assert jobs[0].id == job_4.id
assert jobs[1].id == job_3.id
assert jobs[2].id == job_2.id
assert jobs[3].id == job_1.id
def test_update_job(sample_job): def test_update_job(sample_job):
assert sample_job.status == 'pending' assert sample_job.status == 'pending'