mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-09 06:32:11 -05:00
Fixed another 30 tests
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
from flask import Blueprint, jsonify, request
|
||||
|
||||
from app import db
|
||||
from app.dao.events_dao import dao_create_event
|
||||
from app.errors import register_errors
|
||||
from app.schemas import event_schema
|
||||
@@ -11,6 +12,6 @@ register_errors(events)
|
||||
@events.route("", methods=["POST"])
|
||||
def create_event():
|
||||
data = request.get_json()
|
||||
event = event_schema.load(data)
|
||||
event = event_schema.load(data, session=db.session)
|
||||
dao_create_event(event)
|
||||
return jsonify(data=event_schema.dump(event)), 201
|
||||
|
||||
@@ -3,6 +3,7 @@ from zoneinfo import ZoneInfo
|
||||
import dateutil
|
||||
from flask import Blueprint, current_app, jsonify, request
|
||||
|
||||
from app import db
|
||||
from app.aws.s3 import (
|
||||
get_job_metadata_from_s3,
|
||||
get_personalisation_from_s3,
|
||||
@@ -30,10 +31,10 @@ from app.dao.templates_dao import dao_get_template_by_id
|
||||
from app.enums import JobStatus
|
||||
from app.errors import InvalidRequest, register_errors
|
||||
from app.schemas import (
|
||||
job_schema,
|
||||
JobSchema,
|
||||
UnarchivedTemplateSchema,
|
||||
notification_with_template_schema,
|
||||
notifications_filter_schema,
|
||||
unarchived_template_schema,
|
||||
)
|
||||
from app.utils import midnight_n_days_ago, pagination_links
|
||||
|
||||
@@ -47,7 +48,7 @@ register_errors(job_blueprint)
|
||||
def get_job_by_service_and_job_id(service_id, job_id):
|
||||
job = dao_get_job_by_service_id_and_job_id(service_id, job_id)
|
||||
statistics = dao_get_notification_outcomes_for_job(service_id, job_id)
|
||||
data = job_schema.dump(job)
|
||||
data = JobSchema(session=db.session).dump(job)
|
||||
|
||||
data["statistics"] = [
|
||||
{"status": statistic[1], "count": statistic[0]} for statistic in statistics
|
||||
@@ -257,14 +258,15 @@ def create_job(service_id):
|
||||
if data.get("valid") != "True":
|
||||
raise InvalidRequest("File is not valid, can't create job", 400)
|
||||
|
||||
errors = unarchived_template_schema.validate({"archived": template.archived})
|
||||
schema = UnarchivedTemplateSchema(session=db.session)
|
||||
errors = schema.validate({"archived": template.archived})
|
||||
|
||||
if errors:
|
||||
raise InvalidRequest(errors, status_code=400)
|
||||
|
||||
data.update({"template_version": template.version})
|
||||
|
||||
job = job_schema.load(data)
|
||||
job = JobSchema(session=db.session).load(data)
|
||||
# See admin #1148, for whatever reason schema loading doesn't load this
|
||||
if original_file_name is not None:
|
||||
job.original_file_name = original_file_name
|
||||
@@ -281,7 +283,7 @@ def create_job(service_id):
|
||||
[str(job.id)], {"sender_id": sender_id}, queue=QueueNames.JOBS
|
||||
)
|
||||
|
||||
job_json = job_schema.dump(job)
|
||||
job_json = JobSchema(session=db.session).dump(job)
|
||||
job_json["statistics"] = []
|
||||
|
||||
return jsonify(data=job_json), 201
|
||||
@@ -317,7 +319,7 @@ def get_paginated_jobs(
|
||||
page_size=current_app.config["PAGE_SIZE"],
|
||||
statuses=statuses,
|
||||
)
|
||||
data = job_schema.dump(pagination.items, many=True)
|
||||
data = JobSchema(session=db.session).dump(pagination.items, many=True)
|
||||
for job_data in data:
|
||||
start = job_data["processing_started"]
|
||||
start = dateutil.parser.parse(start).replace(tzinfo=None) if start else None
|
||||
|
||||
@@ -758,7 +758,6 @@ detailed_service_schema = DetailedServiceSchema()
|
||||
template_schema = TemplateSchema()
|
||||
template_schema_no_detail = TemplateSchemaNoDetail()
|
||||
api_key_schema = ApiKeySchema()
|
||||
job_schema = JobSchema()
|
||||
sms_template_notification_schema = SmsTemplateNotificationSchema()
|
||||
email_notification_schema = EmailNotificationSchema()
|
||||
notification_schema = NotificationModelSchema()
|
||||
@@ -773,4 +772,3 @@ template_history_schema = TemplateHistorySchema()
|
||||
event_schema = EventSchema()
|
||||
provider_details_schema = ProviderDetailsSchema()
|
||||
provider_details_history_schema = ProviderDetailsHistorySchema()
|
||||
unarchived_template_schema = UnarchivedTemplateSchema()
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from flask import Blueprint, jsonify, request
|
||||
from sqlalchemy.orm.exc import NoResultFound
|
||||
|
||||
from app import db
|
||||
from app.dao.services_dao import dao_fetch_service_by_id
|
||||
from app.dao.template_folder_dao import dao_get_template_folder_by_id_and_service_id
|
||||
from app.dao.templates_dao import (
|
||||
@@ -135,7 +136,8 @@ def update_template(service_id, template_id):
|
||||
errors = {"content": [message]}
|
||||
raise InvalidRequest(errors, status_code=400)
|
||||
|
||||
update_dict = template_schema.load(updated_template)
|
||||
update_dict = template_schema.load(updated_template, session=db.session)
|
||||
|
||||
if update_dict.archived:
|
||||
update_dict.folder = None
|
||||
dao_update_template(update_dict)
|
||||
|
||||
@@ -42,13 +42,13 @@ def url_with_token(data, url, config, base_url=None):
|
||||
return base_url + token
|
||||
|
||||
|
||||
def get_template_instance(template_dict, values_dict=None):
|
||||
def get_template_instance(template, values=None):
|
||||
from app.enums import TemplateType
|
||||
|
||||
return {
|
||||
TemplateType.SMS: SMSMessageTemplate,
|
||||
TemplateType.EMAIL: HTMLEmailTemplate,
|
||||
}[template_dict["template_type"]](template_dict, values_dict)
|
||||
}[template["template_type"]](template, values)
|
||||
|
||||
|
||||
def template_model_to_dict(template):
|
||||
|
||||
Reference in New Issue
Block a user