29 lines
806 B
Python
29 lines
806 B
Python
import datetime
|
|
|
|
import pytest
|
|
|
|
from gallery.painting.yandextv.api import CHANNELS_MAP, YandexTvApi
|
|
from gallery.painting.yandextv.mock import YANDEXTV_MOCK_DATA
|
|
from gallery.sketch.schedule.model import ChannelId
|
|
|
|
|
|
@pytest.fixture(name="yandextv_api", scope="module")
|
|
def yandextv_api_fixture() -> YandexTvApi:
|
|
class MockSource:
|
|
async def request(self, endpoint: str):
|
|
return YANDEXTV_MOCK_DATA.get_html(endpoint.split("/")[1].split("?")[0])
|
|
|
|
api = YandexTvApi()
|
|
api.SOURCE = MockSource()
|
|
|
|
CHANNELS_MAP[ChannelId("test")] = "test"
|
|
return api
|
|
|
|
|
|
async def test_channel(yandextv_api: YandexTvApi):
|
|
result = await yandextv_api.get_channel_schedule(
|
|
ChannelId.TEST, datetime.date.today()
|
|
)
|
|
assert result is not None
|
|
assert len(result.values) > 0
|