catch bad request_id in request form GET

This commit is contained in:
dandds 2018-08-08 14:05:59 -04:00
parent d5ed99089c
commit 337dd2414b
2 changed files with 9 additions and 2 deletions

View File

@ -1,4 +1,4 @@
from sqlalchemy import exists, and_ from sqlalchemy import exists, and_, exc
from sqlalchemy.orm.exc import NoResultFound from sqlalchemy.orm.exc import NoResultFound
from sqlalchemy.orm.attributes import flag_modified from sqlalchemy.orm.attributes import flag_modified
@ -149,5 +149,5 @@ class Requests(object):
try: try:
db.session.query(Request).filter_by(id=request_id, creator=user_id).one() db.session.query(Request).filter_by(id=request_id, creator=user_id).one()
return True return True
except NoResultFound: except (NoResultFound, exc.DataError):
return False return False

View File

@ -62,3 +62,10 @@ def test_ccpo_can_view_request(client, user_session):
response = client.get("/requests/new/1/{}".format(request.id), follow_redirects=True) response = client.get("/requests/new/1/{}".format(request.id), follow_redirects=True)
assert response.status_code == 200 assert response.status_code == 200
def test_nonexistent_request(client, user_session):
user_session()
response = client.get("/requests/new/1/foo", follow_redirects=True)
assert response.status_code == 404