Coverage for app_modules/config.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.10.4, created at 2025-08-20 00:55 +0200

1""" 

2config.py 

3 

4Purpose: 

5 Provide configuration classes and an initializer for the Flask application. 

6 This keeps `app.py` focused on wiring the app instead of holding config 

7 details. Production deployments can override environment variables. 

8 

9Exports: 

10 - BaseConfig: Default config with safe cookie defaults 

11 - apply_config(app): Apply configuration, including SECRET_KEY loading 

12""" 

13 

14import os 

15 

16 

17class BaseConfig: 

18 SESSION_COOKIE_SECURE = True 

19 SESSION_COOKIE_HTTPONLY = True 

20 SESSION_COOKIE_SAMESITE = 'Strict' 

21 PERMANENT_SESSION_LIFETIME = 60 * 60 * 12 # 12 hours 

22 

23 

24def apply_config(app): 

25 app.config.from_object(BaseConfig) 

26 app.secret_key = os.getenv('SECRET_KEY', 

27 'a4db8c5884908d99e43c30f338778a2d12fbf862418abc5a3104884d3608fcc5ef00c60ec88e92d7f12e4f2a8f80f641c8922fc10472f5b64728d92ccdb6123c' 

28 ) 

29 

30