"""Tests for cron/scheduler.py — origin resolution and delivery routing.""" import pytest from cron.scheduler import _resolve_origin class TestResolveOrigin: def test_full_origin(self): job = { "origin": { "platform": "telegram", "chat_id": "123456", "chat_name": "Test Chat", } } result = _resolve_origin(job) assert result is not None assert result["platform"] == "telegram" assert result["chat_id"] == "123456" def test_no_origin(self): assert _resolve_origin({}) is None assert _resolve_origin({"origin": None}) is None def test_missing_platform(self): job = {"origin": {"chat_id": "123"}} assert _resolve_origin(job) is None def test_missing_chat_id(self): job = {"origin": {"platform": "telegram"}} assert _resolve_origin(job) is None def test_empty_origin(self): job = {"origin": {}} assert _resolve_origin(job) is None