File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -238,6 +238,36 @@ async def test_lifespan_warns_on_cors_wildcard(
238238 )
239239 loguru_warning .assert_called_once ()
240240
241+ async def test_lifespan_warns_on_secrets_dir_issues (
242+ self , caplog , mocker
243+ ) -> None :
244+ """Ensure warnings are logged when SECRETS_DIR has issues."""
245+ app = FastAPI ()
246+ mock_session = mocker .patch (self .mock_session )
247+ mock_connection = (
248+ mock_session .return_value .__aenter__ .return_value .connection
249+ )
250+ mock_connection .return_value = None
251+
252+ mocker .patch ("app.main.get_settings" ).return_value .cache_enabled = False
253+ mocker .patch ("app.main.cors_list" , ["https://example.com" ])
254+ mocker .patch (
255+ "app.main.check_secrets_dir" ,
256+ return_value = ["SECRETS_DIR is writable by the current process." ],
257+ )
258+ loguru_warning = mocker .patch ("app.main.loguru_logger.warning" )
259+
260+ caplog .set_level (logging .WARNING )
261+
262+ async with lifespan (app ):
263+ pass # NOSONAR
264+
265+ assert any (
266+ "SECRETS_DIR is writable" in record .message
267+ for record in caplog .records
268+ )
269+ loguru_warning .assert_called_once ()
270+
241271 async def test_lifespan_initializes_redis_and_closes_client (
242272 self , caplog , mocker
243273 ) -> None :
Original file line number Diff line number Diff line change @@ -481,6 +481,13 @@ def test_empty_admin_encryption_key_generates_default(
481481 assert encryption_key
482482 assert Fernet (encryption_key .encode ())
483483
484+ def test_none_admin_encryption_key_generates_default (self ) -> None :
485+ """None admin encryption key should generate a valid key."""
486+ result = Settings .validate_admin_pages_encryption_key (None )
487+
488+ assert isinstance (result , SecretStr )
489+ assert Fernet (unwrap_secret (result ).encode ())
490+
484491 def test_get_settings_uses_secrets_dir_env_var (
485492 self , monkeypatch , mocker
486493 ) -> None :
You can’t perform that action at this time.
0 commit comments