def get_profile_route(): ''' - It returns the profile of the current user. ''' user = get_current_user(); user_model = UserModel.load_by_id(user['id']) return jsonify(dict( id=user_model.id, email=user_model.email, name=user_model.name ))
def budget_index_route(): ''' - It returns the profile of the current user. @test = false ''' user = get_current_user() budget_list = db.session\ .query(BudgetTable)\ .select_from(BudgetTable)\ .outerjoin(BudgetUserTable, BudgetTable.id==BudgetUserTable.budget_id)\ .filter(BudgetUserTable.user_id==1)\ .all() return jsonify(dict( success = True ))
def test_user(self): user_dict = dict( name='user_1', password='******', email='*****@*****.**' ) user_obj = UserModel.register(user_dict['email'], user_dict['password'], user_dict['name']) @app.route('/test_auth_route/') @requires_auth def requires_auth_route(): return 'text' @app.route('/test_anonym_route/') @requires_anonym def requires_anonym_route(): return 'text' # It tests the auth lib. with app.test_request_context(): # The user is not authenticated yet. assert not is_authenticated() # Default user state. logged_user_dict = get_current_user() assert None is logged_user_dict # The user is logged in. login(user_obj) logged_user_dict = get_current_user() assert logged_user_dict['id'] > 0 and logged_user_dict['id'] == user_obj.id # The user is authenticated. assert is_authenticated() # It tests the main with app.test_client() as client: # The stricted page. It is forbidden. response = client.get('/test_auth_route/') assert response.status_code == 401 # Anonymous only. It is allowed. response = client.get('/test_anonym_route/') assert response.status_code == 200 # It makes an user authenticated. with client.session_transaction() as session: session['user'] = dict( id=user_obj.id, name=user_obj.name ) # It test the restricted route. response = client.get('/test_auth_route/') assert response.status_code == 200 # Anonymous only. It is forbidden. response = client.get('/test_anonym_route/') assert response.status_code == 401
def current_route(): return jsonify(get_current_user())