2016-01-15 11:12:05 +00:00
|
|
|
import uuid
|
|
|
|
|
|
|
|
|
|
from app.dao.jobs_dao import (
|
|
|
|
|
save_job,
|
|
|
|
|
get_job_by_id,
|
|
|
|
|
get_jobs_by_service,
|
|
|
|
|
get_jobs
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
from app.models import Job
|
|
|
|
|
|
|
|
|
|
|
2016-01-15 12:16:07 +00:00
|
|
|
def test_save_job(notify_db, notify_db_session, sample_template):
|
2016-01-15 11:12:05 +00:00
|
|
|
|
|
|
|
|
assert Job.query.count() == 0
|
2016-01-16 10:14:48 +00:00
|
|
|
|
2016-01-15 11:12:05 +00:00
|
|
|
job_id = uuid.uuid4()
|
2016-01-16 10:14:48 +00:00
|
|
|
bucket_name = 'service-{}-notify'.format(sample_template.service.id)
|
|
|
|
|
file_name = '{}.csv'.format(job_id)
|
2016-01-15 11:12:05 +00:00
|
|
|
data = {
|
|
|
|
|
'id': job_id,
|
2016-01-16 10:14:48 +00:00
|
|
|
'service_id': sample_template.service.id,
|
2016-01-15 12:16:07 +00:00
|
|
|
'template_id': sample_template.id,
|
2016-01-16 10:14:48 +00:00
|
|
|
'bucket_name': bucket_name,
|
|
|
|
|
'file_name': file_name,
|
2016-01-15 11:12:05 +00:00
|
|
|
'original_file_name': 'some.csv'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
job = Job(**data)
|
|
|
|
|
save_job(job)
|
|
|
|
|
|
|
|
|
|
assert Job.query.count() == 1
|
|
|
|
|
job_from_db = Job.query.get(job_id)
|
|
|
|
|
assert job == job_from_db
|
|
|
|
|
|
|
|
|
|
|
2016-01-16 10:14:48 +00:00
|
|
|
def test_get_job_by_id(notify_db, notify_db_session, sample_job):
|
|
|
|
|
job_from_db = get_job_by_id(sample_job.id)
|
|
|
|
|
assert sample_job == job_from_db
|
2016-01-15 11:12:05 +00:00
|
|
|
|
|
|
|
|
|
2016-01-15 12:16:07 +00:00
|
|
|
def test_get_jobs_for_service(notify_db, notify_db_session, sample_job):
|
2016-01-15 11:12:05 +00:00
|
|
|
|
2016-01-15 12:16:07 +00:00
|
|
|
service_id = sample_job.service_id
|
|
|
|
|
job_from_db = get_jobs_by_service(service_id)
|
2016-01-15 11:12:05 +00:00
|
|
|
|
2016-01-15 12:16:07 +00:00
|
|
|
assert len(job_from_db) == 1
|
|
|
|
|
assert sample_job == job_from_db[0]
|
2016-01-15 11:12:05 +00:00
|
|
|
|
|
|
|
|
|
2016-01-15 12:16:07 +00:00
|
|
|
def test_get_all_jobs(notify_db, notify_db_session, sample_template):
|
|
|
|
|
from tests.app.conftest import sample_job as create_job
|
2016-01-15 11:12:05 +00:00
|
|
|
for i in range(5):
|
2016-01-15 12:16:07 +00:00
|
|
|
create_job(notify_db,
|
|
|
|
|
notify_db_session,
|
|
|
|
|
sample_template.service,
|
|
|
|
|
sample_template)
|
|
|
|
|
jobs_from_db = get_jobs()
|
|
|
|
|
assert len(jobs_from_db) == 5
|