mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-04 02:11:11 -05:00
More tests for rest and dao.
This commit is contained in:
@@ -8,7 +8,10 @@ from app.models import (Template, Service)
|
||||
|
||||
def save_model_template(template, update_dict=None):
|
||||
if update_dict:
|
||||
update_dict.pop('id', None)
|
||||
service_id = update_dict.pop('service')
|
||||
Template.query.filter_by(id=template.id).update(update_dict)
|
||||
template.service = Service.query.get(service_id)
|
||||
else:
|
||||
db.session.add(template)
|
||||
db.session.commit()
|
||||
@@ -23,7 +26,7 @@ def get_model_templates(template_id=None, service_id=None):
|
||||
# TODO need better mapping from function params to sql query.
|
||||
if template_id and service_id:
|
||||
return Template.query.filter_by(
|
||||
id=template_id, service=Service.get(service_id)).one()
|
||||
id=template_id, service=Service.query.get(service_id)).one()
|
||||
elif template_id:
|
||||
return Template.query.filter_by(id=template_id).one()
|
||||
elif service_id:
|
||||
|
||||
@@ -25,7 +25,7 @@ class ServiceSchema(ma.ModelSchema):
|
||||
class TemplateSchema(ma.ModelSchema):
|
||||
class Meta:
|
||||
model = models.Template
|
||||
exclude = ("updated_at", "created_at")
|
||||
exclude = ("updated_at", "created_at", "service_id")
|
||||
|
||||
|
||||
user_schema = UserSchema()
|
||||
|
||||
@@ -3,11 +3,14 @@ from sqlalchemy.exc import DataError
|
||||
from sqlalchemy.orm.exc import NoResultFound
|
||||
from app.dao.services_dao import (
|
||||
save_model_service, get_model_services, delete_model_service)
|
||||
from app.dao.templates_dao import (
|
||||
save_model_template, get_model_templates)
|
||||
from app.dao.users_dao import get_model_users
|
||||
from app.dao import DAOException
|
||||
from .. import service
|
||||
from app import db
|
||||
from app.schemas import (services_schema, service_schema)
|
||||
from app.schemas import (
|
||||
services_schema, service_schema, template_schema, templates_schema)
|
||||
|
||||
|
||||
# TODO auth to be added.
|
||||
@@ -71,7 +74,7 @@ def get_service(service_id=None):
|
||||
|
||||
# TODO auth to be added.
|
||||
@service.route('/<int:service_id>/template/', methods=['POST'])
|
||||
def create_template():
|
||||
def create_template(service_id):
|
||||
try:
|
||||
service = get_model_services(service_id=service_id)
|
||||
except DataError:
|
||||
@@ -121,4 +124,4 @@ def update_template(service_id, template_id):
|
||||
save_model_template(template, update_dict=update_dict)
|
||||
except DAOException as e:
|
||||
return jsonify(result="error", message=str(e)), 400
|
||||
return jsonify(data=service_template.dump(template).data), status_code
|
||||
return jsonify(data=template_schema.dump(template).data), status_code
|
||||
|
||||
Reference in New Issue
Block a user