2021-05-07 22:38:17 +00:00
|
|
|
from flask.testing import Client
|
|
|
|
|
2021-05-08 16:50:04 +00:00
|
|
|
'''A file that contains tests of classes and methods for all the requests concerning an user.'''
|
|
|
|
|
2021-05-07 22:38:17 +00:00
|
|
|
|
|
|
|
class TestUserGet:
|
2021-05-08 15:02:53 +00:00
|
|
|
def test_for_success(self, flask_client: Client, admin_headers):
|
|
|
|
r = flask_client.get(f'/api/v1/users/admin@admin.com', headers=admin_headers)
|
2021-05-07 22:38:17 +00:00
|
|
|
assert b'success' in r.data
|
|
|
|
|
|
|
|
|
2021-05-08 16:50:04 +00:00
|
|
|
# ritorna i dati di tutti gli utenti registrati
|
|
|
|
class TestUserGetAll:
|
2021-05-08 22:47:56 +00:00
|
|
|
def test_for_success(self, flask_client: Client, admin_headers, user_create):
|
2021-05-08 16:50:04 +00:00
|
|
|
r = flask_client.get(f'/api/v1/users/', headers=admin_headers)
|
|
|
|
assert b'success' in r.data
|
|
|
|
|
|
|
|
# FIXME AssertionError in flask_client at line 63. Il test non riesce ad andare a buon fine
|
|
|
|
def test_for_failure(self, flask_client: Client, user_headers):
|
2021-05-08 22:47:56 +00:00
|
|
|
|
2021-05-08 16:50:04 +00:00
|
|
|
r = flask_client.get(f'/api/v1/users/', headers=user_headers)
|
|
|
|
assert b'failure' in r.data
|
|
|
|
|
|
|
|
|
2021-05-07 22:38:17 +00:00
|
|
|
class TestUserAdd:
|
2021-05-08 15:02:53 +00:00
|
|
|
def test_for_success(self, flask_client: Client, admin_headers):
|
2021-05-08 16:00:53 +00:00
|
|
|
r = flask_client.post(f'/api/v1/users/', headers=admin_headers, json={
|
2021-05-08 22:47:56 +00:00
|
|
|
'email': 'utente1_test@nest.com',
|
2021-05-08 16:00:53 +00:00
|
|
|
'password': 'password',
|
|
|
|
'username': 'utente_test'
|
|
|
|
})
|
2021-05-07 22:38:17 +00:00
|
|
|
assert b'success' in r.data
|
|
|
|
|
2021-05-08 16:00:53 +00:00
|
|
|
def test_for_failure(self, flask_client: Client, user_headers):
|
|
|
|
r = flask_client.post(f'/api/v1/users/', headers=user_headers, json={
|
|
|
|
'email': 'utente_test@nest.com',
|
|
|
|
'password': 'password',
|
|
|
|
'username': 'utente_test'
|
|
|
|
})
|
|
|
|
assert b'failure' in r.data
|
|
|
|
|
2021-05-07 22:38:17 +00:00
|
|
|
|
|
|
|
class TestUserDelete:
|
2021-05-08 15:02:53 +00:00
|
|
|
def test_for_success(self, flask_client: Client, admin_headers):
|
|
|
|
r = flask_client.delete(f'/api/v1/users/utente_test@nest.com', headers=admin_headers)
|
2021-05-07 22:38:17 +00:00
|
|
|
assert b'success' in r.data
|
2021-05-08 16:00:53 +00:00
|
|
|
|
|
|
|
# the admin tries to commit suicide
|
|
|
|
def test_for_failure(self, flask_client: Client, admin_headers):
|
2021-05-08 22:47:56 +00:00
|
|
|
|
2021-05-08 16:00:53 +00:00
|
|
|
r = flask_client.delete(f'/api/v1/users/admin@admin.com', headers=admin_headers)
|
|
|
|
assert b'failure' in r.data
|
|
|
|
|
|
|
|
|
2021-05-08 16:50:04 +00:00
|
|
|
class TestUserPatch:
|
2021-05-08 22:47:56 +00:00
|
|
|
def test_for_success(self, flask_client: Client, admin_headers, user_create):
|
2021-05-08 16:50:04 +00:00
|
|
|
|
|
|
|
r = flask_client.patch(f'/api/v1/users/admin@admin.com', headers=admin_headers, json={
|
|
|
|
'username': 'admin_patched'
|
|
|
|
})
|
|
|
|
assert b'success' in r.data
|
|
|
|
|
|
|
|
# FIXME AssertionError in flask_client at line 63. Il test non riesce ad andare a buon fine
|
|
|
|
def test_for_failure(self, flask_client: Client, user_headers):
|
|
|
|
r = flask_client.patch(f'/api/v1/users/admin@admin.com', headers=user_headers, json={
|
|
|
|
'username': 'admin_patched'
|
|
|
|
})
|
|
|
|
assert b'failure' in r.data
|
|
|
|
|
|
|
|
|