[WIP] changed dao query to use .first and return specific not found

error message from rest view method.
This commit is contained in:
Adam Shimali
2016-02-25 12:10:04 +00:00
parent 883ad02c25
commit 99c9cd608c
3 changed files with 9 additions and 6 deletions

View File

@@ -9,7 +9,7 @@ def save_invited_user(invited_user):
def get_invited_user(service_id, invited_user_id): def get_invited_user(service_id, invited_user_id):
return InvitedUser.query.filter_by(service_id=service_id, id=invited_user_id).one() return InvitedUser.query.filter_by(service_id=service_id, id=invited_user_id).first()
def get_invited_users_for_service(service_id): def get_invited_users_for_service(service_id):

View File

@@ -39,4 +39,8 @@ def get_invited_users_by_service(service_id):
@invite.route('/<invited_user_id>', methods=['GET']) @invite.route('/<invited_user_id>', methods=['GET'])
def get_invited_user_by_service_and_id(service_id, invited_user_id): def get_invited_user_by_service_and_id(service_id, invited_user_id):
invited_user = get_invited_user(service_id, invited_user_id) invited_user = get_invited_user(service_id, invited_user_id)
if not invited_user:
message = 'Invited user not found for service id: {} and invited user id: {}'.format(service_id,
invited_user_id)
return jsonify(result='error', message=message), 404
return jsonify(data=invited_user_schema.dump(invited_user).data), 200 return jsonify(data=invited_user_schema.dump(invited_user).data), 200

View File

@@ -1,6 +1,4 @@
import uuid import uuid
import pytest
from sqlalchemy.orm.exc import NoResultFound
from app.models import InvitedUser from app.models import InvitedUser
@@ -35,10 +33,11 @@ def test_get_invited_user(notify_db, notify_db_session, sample_invited_user):
assert from_db == sample_invited_user assert from_db == sample_invited_user
def test_get_unknown_invited_user_throws_no_result_exception(notify_db, notify_db_session, sample_service): def test_get_unknown_invited_user_returns_none(notify_db, notify_db_session, sample_service):
unknown_id = uuid.uuid4() unknown_id = uuid.uuid4()
with pytest.raises(NoResultFound):
get_invited_user(sample_service.id, unknown_id) unknown = get_invited_user(sample_service.id, unknown_id)
assert unknown is None
def test_get_invited_users_for_service(notify_db, notify_db_session, sample_service): def test_get_invited_users_for_service(notify_db, notify_db_session, sample_service):