diff options
Diffstat (limited to 'opendc/api')
| -rw-r--r-- | opendc/api/v2/users/endpoint.py | 7 | ||||
| -rw-r--r-- | opendc/api/v2/users/test_endpoint.py | 15 |
2 files changed, 18 insertions, 4 deletions
diff --git a/opendc/api/v2/users/endpoint.py b/opendc/api/v2/users/endpoint.py index dca509ed..7b4158e3 100644 --- a/opendc/api/v2/users/endpoint.py +++ b/opendc/api/v2/users/endpoint.py @@ -15,11 +15,12 @@ def GET(request): return Response(400, str(e)) user = DB.fetch_one({'email': request.params_query['email']}, 'users') + print(user) - if user is not None: + if user is None: return Response(404, f'User with email {request.params_query["email"]} not found') - return Response(200, 'Successfully retrieved {}.'.format(user), user.to_JSON()) + return Response(200, 'Successfully retrieved {}.'.format(user), user) def POST(request): @@ -40,6 +41,6 @@ def POST(request): if not request.google_id == user['googleId']: return Response(403, 'Forbidden from creating this User.') - user = insert(user, 'users') + user = DB.insert(user, 'users') return Response(200, 'Successfully created {}'.format(user), user) diff --git a/opendc/api/v2/users/test_endpoint.py b/opendc/api/v2/users/test_endpoint.py index ffe2ce02..a5073c08 100644 --- a/opendc/api/v2/users/test_endpoint.py +++ b/opendc/api/v2/users/test_endpoint.py @@ -1,2 +1,15 @@ +from opendc.util.database import DB + + +def test_get_user(client, mocker): + mocker.patch.object(DB, 'fetch_one', return_value={'email': 'test@test.com'}) + assert '200' in client.get('/api/v2/users?email=test@test.com').status + + +def test_get_user_non_existing(client, mocker): + mocker.patch.object(DB, 'fetch_one', return_value=None) + assert '404' in client.get('/api/v2/users?email=test@test.com').status + + def test_get_user_missing_parameter(client): - print(client.get('/api/v2/users')) + assert '400' in client.get('/api/v2/users').status |
