Files
llm-trade-bot/tests/test_scheduler.py

23 lines
742 B
Python

from datetime import datetime, time
from zoneinfo import ZoneInfo
from llm_trade_bot.config import ScheduleConfig
from llm_trade_bot.scheduler import next_scheduled_time
def _config() -> ScheduleConfig:
zone = ZoneInfo("Europe/Warsaw")
return ScheduleConfig(zone, (time(9), time(21)))
def test_next_time_same_day():
config = _config()
now = datetime(2026, 9, 19, 10, 0, tzinfo=config.timezone)
assert next_scheduled_time(config, now) == datetime(2026, 9, 19, 21, 0, tzinfo=config.timezone)
def test_next_time_rolls_to_tomorrow():
config = _config()
now = datetime(2026, 9, 19, 22, 0, tzinfo=config.timezone)
assert next_scheduled_time(config, now) == datetime(2026, 9, 20, 9, 0, tzinfo=config.timezone)