"""Environment configuration tests.""" from __future__ import annotations import os import unittest from unittest.mock import patch from kca.config import Settings class OcspExpirySettingsTest(unittest.TestCase): def test_defaults(self) -> None: with patch.dict(os.environ, {}, clear=True): settings = Settings.from_env() self.assertEqual(30, settings.ocsp_heartbeat_interval_seconds) self.assertEqual(60, settings.ocsp_redis_expiry_seconds) def test_expiry_must_exceed_heartbeat(self) -> None: with patch.dict( os.environ, { "KCA_OCSP_HEARTBEAT_INTERVAL_SECONDS": "30", "KCA_OCSP_REDIS_EXPIRY_SECONDS": "30", }, clear=True, ): with self.assertRaisesRegex(RuntimeError, "must be greater"): Settings.from_env() if __name__ == "__main__": unittest.main()