Coverage for superuser/routes_superuser.py: 100%

16 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-05-05 14:02 +0000

1"""Super user routes""" 

2 

3from flask import jsonify, request, render_template 

4from core import handlers 

5from .model import Superuser 

6 

7 

8def add_superuser_routes(app): 

9 """Add superuser routes.""" 

10 

11 @app.route("/superuser/configure", methods=["GET", "POST"]) 

12 @handlers.superuser_required 

13 def configure_settings(): 

14 """Configure settings page""" 

15 from app import CONFIG_MANAGER 

16 

17 if request.method == "GET": 

18 return render_template( 

19 "superuser/config.html", 

20 user_type="superuser", 

21 max_skills=CONFIG_MANAGER.get_max_num_of_skills(), 

22 min_num_ranking_student_to_opportunity=CONFIG_MANAGER.get_min_num_ranking_student_to_opportunities(), 

23 ) 

24 try: 

25 new_max_skills = int(request.form.get("max_skills")) 

26 new_min_num_ranking_student_to_opportunity = int( 

27 request.form.get("min_num_ranking_student_to_opportunity") 

28 ) 

29 return Superuser().configure_settings( 

30 new_max_skills, new_min_num_ranking_student_to_opportunity 

31 ) 

32 except Exception: 

33 return jsonify({"error": "Invalid input"}), 400