Files
grotti/tests/test_time_window.py
Dominic Gundel 8e88efc094 Grotti 3.0.0: Aufträge, Wartung, SSE, Ausschuss-Dialog, UI-Umbau.
Migrationen 003–009, Kundaufträge mit Lieferschein, Abräumen mit Urteil,
ntfy/Backup/Zeitfenster, Live-Stream und Mobile-Mehr-Menü.
2026-10-18 00:54:51 +02:00

25 lines
745 B
Python

"""Start-Zeitfenster."""
import unittest
from datetime import datetime
from zoneinfo import ZoneInfo
from grotti.time_window import allowed_now
class TimeWindowTests(unittest.TestCase):
def test_overnight_window(self):
window = {"allowed": [{"from": "22:00", "to": "06:00"}]}
inside = datetime(2026, 10, 18, 23, 0, tzinfo=ZoneInfo("Europe/Berlin"))
outside = datetime(2026, 10, 18, 12, 0, tzinfo=ZoneInfo("Europe/Berlin"))
self.assertTrue(allowed_now(window, now=inside))
self.assertFalse(allowed_now(window, now=outside))
def test_empty_allows_always(self):
self.assertTrue(allowed_now({}))
self.assertTrue(allowed_now(None))
if __name__ == "__main__":
unittest.main()