def test_role_put_with_data_and_user(client, session): from lemur.auth.service import create_token user = UserFactory() role = RoleFactory(users=[user]) role1 = RoleFactory() user1 = UserFactory() session.commit() headers = { 'Authorization': 'Basic ' + create_token(user), 'Content-Type': 'application/json' } data = { 'users': [{ 'id': user1.id }, { 'id': user.id }], 'id': role.id, 'name': role.name } assert client.put(api.url_for(Roles, role_id=role.id), data=json.dumps(data), headers=headers).status_code == 200 assert client.get(api.url_for(RolesList), data={}, headers=headers).json['total'] == 1
def test_role_put_with_data_and_user(client, session): from lemur.auth.service import create_token user = UserFactory() role = RoleFactory(users=[user]) role1 = RoleFactory() user1 = UserFactory() session.commit() headers = { "Authorization": "Basic " + create_token(user), "Content-Type": "application/json", } data = { "users": [{"id": user1.id}, {"id": user.id}], "id": role.id, "name": role.name, } assert ( client.put( api.url_for(Roles, role_id=role.id), data=json.dumps(data), headers=headers ).status_code == 200 ) assert ( client.get(api.url_for(RolesList), data={}, headers=headers).json["total"] > 1 )
def test_user_role_changes(client, session): user = UserFactory() role1 = RoleFactory() role2 = RoleFactory() session.flush() data = { 'active': True, 'id': user.id, 'username': user.username, 'email': user.email, 'roles': [ {'id': role1.id}, {'id': role2.id}, ], } # PUT two roles resp = client.put(api.url_for(Users, user_id=user.id), data=json.dumps(data), headers=VALID_ADMIN_HEADER_TOKEN) assert resp.status_code == 200 assert len(resp.json['roles']) == 2 assert set(user.roles) == {role1, role2} # Remove one role and PUT again del data['roles'][1] resp = client.put(api.url_for(Users, user_id=user.id), data=json.dumps(data), headers=VALID_ADMIN_HEADER_TOKEN) assert resp.status_code == 200 assert len(resp.json['roles']) == 1 assert set(user.roles) == {role1}
def test_role_put_with_data(client, session, token, status): user = UserFactory() role = RoleFactory() session.commit() data = {'users': [{'id': user.id}], 'id': role.id, 'name': role.name} assert client.put(api.url_for(Roles, role_id=role.id), data=json.dumps(data), headers=token).status_code == status
def test_user_role_changes(client, session): user = UserFactory() role1 = RoleFactory() role2 = RoleFactory() session.flush() data = { "active": True, "id": user.id, "username": user.username, "email": user.email, "roles": [{ "id": role1.id }, { "id": role2.id }], } # PUT two roles resp = client.put( api.url_for(Users, user_id=user.id), data=json.dumps(data), headers=VALID_ADMIN_HEADER_TOKEN, ) assert resp.status_code == 200 assert len(resp.json["roles"]) == 2 assert set(user.roles) == {role1, role2} # Remove one role and PUT again del data["roles"][1] resp = client.put( api.url_for(Users, user_id=user.id), data=json.dumps(data), headers=VALID_ADMIN_HEADER_TOKEN, ) assert resp.status_code == 200 assert len(resp.json["roles"]) == 1 assert set(user.roles) == {role1}