from pathlib import Path import hermes_mcp.config as config from hermes_mcp.config import _load_env_file def test_env_example_includes_retention_hours_setting(): env_example = Path(__file__).resolve().parents[1] / ".env.example" values = _load_env_file(env_example) assert values["HERMES_RETENTION_HOURS"] == "24" def test_load_config_uses_hours_and_legacy_days_fallback(monkeypatch): monkeypatch.setattr(config, "_load_env_file", lambda path=config.ENV_PATH: {}) monkeypatch.delenv("HERMES_RETENTION_HOURS", raising=False) monkeypatch.delenv("HERMES_RETENTION_DAYS", raising=False) cfg = config.load_config() assert cfg.retention_hours == 24 monkeypatch.setenv("HERMES_RETENTION_HOURS", "12") cfg = config.load_config() assert cfg.retention_hours == 12 monkeypatch.delenv("HERMES_RETENTION_HOURS", raising=False) monkeypatch.setenv("HERMES_RETENTION_DAYS", "2") cfg = config.load_config() assert cfg.retention_hours == 48