From ae979c37f9ff06a134c9eaa33b416d280ebd310c Mon Sep 17 00:00:00 2001 From: maike Date: Thu, 9 Jul 2020 03:15:18 +0200 Subject: [PATCH] [tests] Tests for email subscription w/o auth --- tests/test_api_email_unauthorized.py | 15 ---------- tests/test_api_email_wrong.py | 44 ++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 15 deletions(-) diff --git a/tests/test_api_email_unauthorized.py b/tests/test_api_email_unauthorized.py index ca506b1..84e5200 100644 --- a/tests/test_api_email_unauthorized.py +++ b/tests/test_api_email_unauthorized.py @@ -13,18 +13,3 @@ def test_email_create_unauthorized(client, hood_id): def test_email_delete_unauthorized(client, hood_id): response = client.delete('/api/hoods/%d/email/' % hood_id) assert response.status_code == status.HTTP_401_UNAUTHORIZED - - -def test_email_subscribe(client, hood_id): - response = client.post('/api/hoods/%d/email/subscribe/' % hood_id) - assert response.status_code == status.HTTP_401_UNAUTHORIZED - - -def test_email_subscribe_confirm(client, hood_id): - response = client.post('/api/hoods/%d/email/subscribe/confirm/asdf' % hood_id) - assert response.status_code == status.HTTP_401_UNAUTHORIZED - - -def test_email_unsubscribe(client, hood_id): - response = client.get('/api/hoods/%d/email/unsubscribe/asdf' % hood_id) - assert response.status_code == status.HTTP_401_UNAUTHORIZED diff --git a/tests/test_api_email_wrong.py b/tests/test_api_email_wrong.py index e69de29..f620ee3 100644 --- a/tests/test_api_email_wrong.py +++ b/tests/test_api_email_wrong.py @@ -0,0 +1,44 @@ +# Copyright (C) 2020 by Maike +# +# SPDX-License-Identifier: 0BSD + +from fastapi import status +from nacl.exceptions import CryptoError + + +def test_email_subscribe_empty(client, hood_id): + response = client.post('/api/hoods/%d/email/subscribe/' % hood_id) + assert response.status_code == status.HTTP_422_UNPROCESSABLE_ENTITY + + +def test_email_subscribe_confirm_wrong_token(client, hood_id): + try: + client.get( + '/api/hoods/%d/email/subscribe/confirm/asdfasdfasdfasdfasdfasdfasdfasdf' + % hood_id + ) + except CryptoError: + pass + + +def test_email_subscribe_confirm_wrong_hood(client): + response = client.get( + '/api/hoods/99999/email/unsubscribe/asdfasdfasdfasdfasdfasdfasdfasdf' + ) + assert response.json()['detail'] == 'Not Found' + + +def test_email_unsubscribe_wrong_token(client, hood_id): + try: + client.get( + '/api/hoods/%d/email/unsubscribe/asdfasdfasdfasdfasdfasdfasdfasdf' % hood_id + ) + except CryptoError: + pass + + +def test_email_unsubscribe_wrong_hood(client): + response = client.get( + '/api/hoods/99999/email/unsubscribe/asdfasdfasdfasdfasdfasdfasdfasdf' + ) + assert response.json()['detail'] == 'Not Found'