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
« prev ^ index » next coverage.py v7.10.4, created at 2025-08-20 00:55 +0200
1"""
2config.py
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.
9Exports:
10 - BaseConfig: Default config with safe cookie defaults
11 - apply_config(app): Apply configuration, including SECRET_KEY loading
12"""
14import os
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
24def apply_config(app):
25 app.config.from_object(BaseConfig)
26 app.secret_key = os.getenv('SECRET_KEY',
27 'a4db8c5884908d99e43c30f338778a2d12fbf862418abc5a3104884d3608fcc5ef00c60ec88e92d7f12e4f2a8f80f641c8922fc10472f5b64728d92ccdb6123c'
28 )