def test_get_token_with_created_user(): response = get_token(app, membership_doc, user) assert response.status == 201 assert response.json['access_token'] is not None assert response.json['token_type'] == 'bearer' global user_token user_token = response.json['access_token']
def test_get_me(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.get( '/api/v1/me', headers={ 'Authorization': 'Bearer {}'.format(token) } ) assert response.status == 200
def test_get_user_type(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.get( '/api/v1/memberships/{}/user-types/{}'.format( str(membership_doc['_id']), user_type_id), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 200 assert response.json['_id'] == user_type_id
def test_delete_user(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.delete( '/api/v1/memberships/{}/users/{}'.format(str(membership_doc['_id']), str(user['_id'])), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 204 assert response.json is None
def test_update_role(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] role['name'] = 'updated_test_role' request, response = app.test_client.put( '/api/v1/memberships/{}/roles/{}'.format(str(membership_doc['_id']), role['_id'], token), data=json.dumps(role), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 200 assert response.json['_id'] == role['_id'] assert response.json['name'] == "updated_test_role"
def test_get_application_test(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.get( '/api/v1/memberships/{}/applications/{}'.format( str(membership_doc['_id']), application_id), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 200 assert response.json['name'] == 'test_application' global application application = response.json
def test_revoke_token(): token = get_token(app, membership_doc, user_doc) a_token = token.json["access_token"] r_token = token.json["refresh_token"] request, response = app.test_client.post( '/api/v1/revoke-token', data=json.dumps({'token': r_token}), headers={ 'Authorization': 'Bearer {}'.format(a_token) } ) assert response.status is 204
def test_create_application(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] application_model = {'name': 'test_application', 'role': 'admin-2'} headers = {'Authorization': 'Bearer {}'.format(token)} request, response = app.test_client.post( '/api/v1/memberships/{}/applications'.format(str( membership_doc['_id'])), data=json.dumps(application_model), headers=headers) global application_id application_id = response.json['_id'] assert response.status == 201 assert response.json['name'] == 'test_application'
def test_update_user_type(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.put( '/api/v1/memberships/{}/user-types/{}'.format( str(membership_doc['_id']), user_type_id), data=json.dumps({ 'name': 'UpdatedTestUserModel', "schema": { "properties": { "display_name": { "type": "string", "description": "Display Name" }, "photo_url": { "type": "string", "description": "Photo Url", "maxLength": 250, "minLength": 0, }, "profile_link": { "type": "string", "description": "Profile Link", "maxLength": 250, "minLength": 0 }, "facebook_login_name": { "type": "string", "description": "Facebook Login Name", "maxLength": 250, "minLength": 0 } }, "required": ["photo_url", "profile_link", "facebook_login_name"], "additionalProperties": True } }), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 200 assert response.json['_id'] is not None
def test_query_applications(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.post( '/api/v1/memberships/{}/applications/_query'.format( str(membership_doc['_id'])), data=json.dumps({ 'where': {}, 'select': {} }), headers={'Authorization': 'Bearer {}'.format(token)}) assert response.status == 200 assert response.json is not None applications_query_result = response.json assert 'data' in applications_query_result data = applications_query_result['data'] assert 'items' in data assert 'count' in data assert data['count'] == 1
def test_create_role(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] role_model = { 'name': 'test_role', 'permissions': ['users.*', 'applications.*', 'roles.*', 'user_types.*'] } headers = {'Authorization': 'Bearer {}'.format(token)} request, response = app.test_client.post( '/api/v1/memberships/{}/roles'.format(str(membership_doc['_id'])), data=json.dumps(role_model), headers=headers) assert response.status == 201 assert response.json['name'] == 'test_role' global role_id role_id = response.json['_id']
def test_generate_token(): response = get_token(app, membership_doc, user_doc) assert response.status == 201 assert 'access_token' in response.json assert 'refresh_token' in response.json
def test_get_results_200(client, status_code): token = get_token(client, 'long', '1234') resp = get_results_demo(client, token) assert resp.status_code == status_code
def test_create_user(): token = get_token(app, membership_doc, user_doc) token = token.json["access_token"] request, response = app.test_client.post( '/api/v1/memberships/{}/user-types'.format(str(membership_doc['_id'])), data=json.dumps({ "name": "TestUserModel", "description": "Test model", "schema": { "properties": { "photo_url": { "type": "string", "description": "Photo Url", "maxLength": 250, "minLength": 0, }, "profile_link": { "type": "string", "description": "Profile Link", "maxLength": 250, "minLength": 0 }, "facebook_login_name": { "type": "string", "description": "Facebook Login Name", "maxLength": 250, "minLength": 0 } }, "required": ["photo_url", "profile_link"], "additionalProperties": True } }), headers={'Authorization': 'Bearer {}'.format(token)}) global user_type_id user_type_id = response.json['_id'] request, response = app.test_client.post( '/api/v1/memberships/{}/users'.format(str(membership_doc['_id'])), data=json.dumps({ "username": "******", "password": "******", "firstname": "test", "lastname": "user", "role": role_doc['slug'], "status": "active", "email": "*****@*****.**", "photo_url": "http://test.com/user-profile/photos/photo.jpg", "profile_link": "http://test.com/user-profile" }), headers={'Authorization': 'Bearer {}'.format(token)}) global user user = response.json assert response.status == 201 assert user['username'] == 'testuser' assert user['_id'] is not None response = get_user_type_of_membership(app, membership_doc, token) assert response.status == 200 assert response.json['_id'] is not None required_custom_fields = response.json['schema']['required'] for prop in required_custom_fields: assert prop in user.keys()