feat(schedule): implement multiple schedule providers

This commit is contained in:
2026-06-26 16:36:40 +03:00
parent 8b20eb1220
commit be44275cf1
23 changed files with 1271 additions and 168 deletions

View File

@@ -2,8 +2,7 @@ import datetime
import pytest
from gallery.painting.yandextv.api import CHANNELS_MAP, YandexTvApi
from gallery.sketch.schedule.model import ChannelId
from gallery.painting.yandextv.api import YandexTvApi
from tests.data.yandextv import YANDEXTV_MOCK_SOURCE
@@ -11,13 +10,15 @@ from tests.data.yandextv import YANDEXTV_MOCK_SOURCE
def yandextv_api_fixture() -> YandexTvApi:
api = YandexTvApi()
api.SOURCE = YANDEXTV_MOCK_SOURCE
CHANNELS_MAP[ChannelId("test")] = "test"
return api
async def test_search(yandextv_api: YandexTvApi):
result = await yandextv_api.find_channels("матч")
assert len(result) == 8
async def test_channel(yandextv_api: YandexTvApi):
result = await yandextv_api.get_channel_schedule(
ChannelId.TEST, datetime.date.today()
)
result = await yandextv_api.get_channel_schedule("test", datetime.date.today())
assert result is not None
assert len(result.values) > 0