def test_patch_user_ok(client, db): testuser = User("testuserx", "*****@*****.**", "Test@1010") db.session.add(testuser) db.session.commit() token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} data = { 'email': '*****@*****.**', 'name': 'John Doe', 'username': '******' } response = client.patch('/user/account', json=data, headers=headers) assert response.status_code == 200 rdata = response.get_json() assert data['email'] == rdata['email'] duser = db.session.query(User).getByEmail(data['email']) assert duser is not None assert duser.email == data['email'] assert duser.fullname == data['name'] assert duser.name == data['username']
def createProject(client): projectToken = get_token(client, { 'login': '******', 'password': '******' }) projectHeaders = {'Authorization': 'Bearer ' + projectToken} projectData = { 'name': 'Test project', 'description': '', 'collaborators': { 'contributors': ['testuser3'] } } projectResponse = client.post('/projects/project', json=projectData, headers=projectHeaders) assert 2 == projectResponse.get_json()['id'] projectResponse = client.post('/projects/project', json=projectData, headers=projectHeaders) assert 3 == projectResponse.get_json()['id'] projectResponse = client.post('/projects/project', json=projectData, headers=projectHeaders) assert 4 == projectResponse.get_json()['id']
def test_get_user_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.get('/users/testuser/account', headers=headers) assert response.status_code == 200
def test_view_error(client, id, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.get('/modules/' + str(id), headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message']
def test_view_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.get('projects/1', headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == 'Test project'
def test_create_errors(client, data, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.post('/projects/project', json=data, headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message'] assert response.get_json()['invalid'] == expected['invalid']
def test_get_users_error(client, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.get('/users', headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message'] assert response.get_json()['invalid'] == expected['invalid']
def test_delete_error(client, id, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.delete('/projects/' + str(id), headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message'] assert response.get_json()['invalid'] == expected['invalid']
def test_patch_user_error(client, data, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.patch('/user/account', json=data, headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message'] assert response.get_json()['invalid'] == expected['invalid']
def test_get_users_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.get('/users', headers=headers) assert response.status_code == 200 data = response.get_json() assert 'users' in data
def test_patch_no_data(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} data = {} response = client.patch('projects/1', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == 'Test project'
def test_api_add_contributor_error(client, id, data, login, expected): headers = {} if login != {}: token = get_token(client, login) headers = {'Authorization': 'Bearer ' + token} response = client.post('/projects/' + str(id) + '/users', json=data, headers=headers) assert response.status_code == expected['code'] assert response.get_json()['message'] == expected['message'] assert response.get_json()['invalid'] == expected['invalid']
def test_patch_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} data = {'name': 'My Project Now', 'description': 'Random text'} response = client.patch('projects/1', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] != 'Test project' assert response.get_json()['name'] == 'My Project Now' assert response.get_json()['description'] == 'Random text'
def test_patch_ok(client): token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} data = { "description": "kkk", } response = client.patch('/modules/1', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == '--' assert response.get_json()['description'] == 'kkk'
def test_get_our_data_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.get('/user/account', headers=headers) assert response.status_code == 200 data = response.get_json() assert 'name' in data assert 'email' in data assert 'avatar' in data assert 'username' in data
def test_delete_user_ok(client, db): testuser = User("testusery", "*****@*****.**", "Test@1010") db.session.add(testuser) db.session.commit() token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.delete('/user/account', headers=headers) assert response.status_code == 200 duser = db.session.query(User).getByEmail('*****@*****.**') assert duser.delete is not None
def test_delete_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.delete('projects/1', headers=headers) assert response.status_code == 200 assert response.get_json()['message'] == 'Project was removed.' response = client.delete('projects/1', headers=headers) assert response.status_code == 404 assert response.get_json()['message'] == "Project doesn't exist."
def test_api_rm_contributor(client): token = get_token(client, { 'login': '******', 'password': '******' }) data = {'username': '******'} headers = {'Authorization': 'Bearer ' + token} response = client.delete('/projects/1/users', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['message'] == 'User was removed.' response = client.delete('/projects/1/users', json=data, headers=headers) assert response.status_code == 202 assert response.get_json()['message'] == 'This user is not a collaborator.'
def test_create_project_ok(client): token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} data = { 'name': 'Test project', 'description': '', 'collaborators': { 'contributors': ['testuser3'] } } response = client.post('/projects/project', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == 'Test project'
def test_stats_get_ok(client, db): users = User.query.get_all().count() packages = Package.query.get_all().count() projects = Project.query.get_all().count() token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} response = client.get('/stats/common', headers=headers) assert response.status_code == 200 data = response.get_json() assert data['users'] == users assert data['packages'] == packages assert data['projects'] == projects
def test_delete_ok(client): token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} response = client.delete('modules/2', headers=headers) # assert response.status_code == 200 # assert response.get_json()['invalid'] == "Module was deleted." assert response.get_json()['message'] == 'Module was deleted.' response = client.delete('modules/1', headers=headers) # assert response.status_code == 200 # assert response.get_json()['invalid'] == "Module was deleted." assert response.get_json()['message'] == "Module was deleted."
def test_api_add_contributor_duplicate(client): token = get_token(client, { 'login': '******', 'password': '******' }) data = {'username': '******'} headers = {'Authorization': 'Bearer ' + token} response = client.post('/projects/1/users', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['message'] == 'User added.' response = client.post('/projects/1/users', json=data, headers=headers) assert response.status_code == 202 assert response.get_json( )['message'] == 'This user is already a member of this project.'
def test_view_ok(client): token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} response = client.get('modules/2', headers=headers) assert response.status_code == 200 assert response.get_json()['project_id'] == 3 assert response.get_json()['name'] == 'k k k_KEK' assert response.get_json()['description'] == '' assert response.get_json()['dependency'] == [ '--', ] assert response.get_json()['content']['type'] == "text" assert response.get_json()['content']['body'] == "reeeeeeeeeeeeeeeeee"
def test_update_passwd_user_ok(client, db, app): testuser = User("testuserz", "*****@*****.**", "Test@1010") db.session.add(testuser) db.session.commit() token = get_token(client, { 'login': '******', 'password': '******' }) headers = {'Authorization': 'Bearer ' + token} data = { 'old_password': '******', 'new_password': '******', } response = client.patch('/user/account/password', json=data, headers=headers) assert response.status_code == 200 duser = db.session.query(User).getByEmail('*****@*****.**') assert app.bcrypt.check_password_hash(duser.password, data['new_password'])
def test_create_module_ok(client): createProject(client) token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} data = { "project": 3, "name": "--", "description": "", "dependency": "independent", "content": { "body": "reeeeeeeeeeeeeeeeee", }, } response = client.post('/modules/module', json=data, headers=headers) assert response.get_json()['id'] == 1 assert response.status_code == 200 assert response.get_json()['name'] == '--' token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} data = { "project": 3, "name": "k k k_KEK", "description": "", "dependency": [ "--", ], "content": { "type": "text", "body": "reeeeeeeeeeeeeeeeee", }, } response = client.post('/modules/module', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == 'k k k_KEK' token = get_token(client, { 'login': '******', 'password': '******', }) headers = {'Authorization': 'Bearer ' + token} data = { "project": 4, "name": "---", "description": "", "dependency": "independent", "content": { "body": "reeeeeeeeeeeeeeeeee", }, } response = client.post('/modules/module', json=data, headers=headers) assert response.status_code == 200 assert response.get_json()['name'] == '---'