def create_job(service_id): job, errors = job_schema.load(request.get_json()) if errors: return jsonify(result="error", message=errors), 400 try: save_job(job) except Exception as e: return jsonify(result="error", message=str(e)), 500 return jsonify(data=job_schema.dump(job).data), 201
def test_save_job(notify_db, notify_db_session, sample_template): assert Job.query.count() == 0 job_id = uuid.uuid4() bucket_name = 'service-{}-notify'.format(sample_template.service.id) file_name = '{}.csv'.format(job_id) data = { 'id': job_id, 'service_id': sample_template.service.id, 'template_id': sample_template.id, 'bucket_name': bucket_name, 'file_name': file_name, '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
def sample_job(notify_db, notify_db_session, service=None, template=None): if service is None: service = sample_service(notify_db, notify_db_session) if template is None: template = sample_template(notify_db, notify_db_session, service=service) job_id = uuid.uuid4() bucket_name = 'service-{}-notify'.format(service.id) file_name = '{}.csv'.format(job_id) data = { 'id': uuid.uuid4(), 'service_id': service.id, 'template_id': template.id, 'bucket_name': bucket_name, 'file_name': file_name, 'original_file_name': 'some.csv' } job = Job(**data) save_job(job) return job