Files
bot-bottle/tests/unit/test_config_store.py
T
didericis-codex 4d5bb8f2fc
lint / lint (push) Failing after 1m57s
test / unit (pull_request) Successful in 57s
test / integration (pull_request) Successful in 17s
test / coverage (pull_request) Successful in 1m7s
Add cached image quickstart
2026-07-09 17:25:50 +00:00

45 lines
1.5 KiB
Python

"""Unit tests for the host-side configuration store."""
from __future__ import annotations
import tempfile
import unittest
from pathlib import Path
from bot_bottle.config_store import (
CACHED_IMAGE_STALE_WARNING_DAYS,
DEFAULT_CACHED_IMAGE_STALE_WARNING_DAYS,
ConfigStore,
)
from bot_bottle.store_manager import StoreManager
class TestConfigStore(unittest.TestCase):
def test_cached_image_warning_days_defaults_to_one(self) -> None:
with tempfile.TemporaryDirectory(prefix="config-store.") as tmp:
store = ConfigStore(Path(tmp) / "bot-bottle.db")
store.migrate()
self.assertEqual(
DEFAULT_CACHED_IMAGE_STALE_WARNING_DAYS,
store.cached_image_stale_warning_days(),
)
def test_cached_image_warning_days_reads_value(self) -> None:
with tempfile.TemporaryDirectory(prefix="config-store.") as tmp:
store = ConfigStore(Path(tmp) / "bot-bottle.db")
store.migrate()
store.set(CACHED_IMAGE_STALE_WARNING_DAYS, "7")
self.assertEqual(7, store.cached_image_stale_warning_days())
def test_store_manager_includes_config_store(self) -> None:
with tempfile.TemporaryDirectory(prefix="config-store.") as tmp:
db = Path(tmp) / "bot-bottle.db"
manager = StoreManager(db)
self.assertFalse(manager.is_migrated())
manager.migrate()
self.assertTrue(manager.is_migrated())
if __name__ == "__main__":
unittest.main()