test_config.py 990 B

123456789101112131415161718192021222324252627
  1. from pathlib import Path
  2. import hermes_mcp.config as config
  3. from hermes_mcp.config import _load_env_file
  4. def test_env_example_includes_retention_hours_setting():
  5. env_example = Path(__file__).resolve().parents[1] / ".env.example"
  6. values = _load_env_file(env_example)
  7. assert values["HERMES_RETENTION_HOURS"] == "24"
  8. def test_load_config_uses_hours_and_legacy_days_fallback(monkeypatch):
  9. monkeypatch.setattr(config, "_load_env_file", lambda path=config.ENV_PATH: {})
  10. monkeypatch.delenv("HERMES_RETENTION_HOURS", raising=False)
  11. monkeypatch.delenv("HERMES_RETENTION_DAYS", raising=False)
  12. cfg = config.load_config()
  13. assert cfg.retention_hours == 24
  14. monkeypatch.setenv("HERMES_RETENTION_HOURS", "12")
  15. cfg = config.load_config()
  16. assert cfg.retention_hours == 12
  17. monkeypatch.delenv("HERMES_RETENTION_HOURS", raising=False)
  18. monkeypatch.setenv("HERMES_RETENTION_DAYS", "2")
  19. cfg = config.load_config()
  20. assert cfg.retention_hours == 48