import datetime import pytest from gallery.painting.openweather.api import OpenWeatherApi from gallery.painting.openweather.openweather import OpenWeather from tests.data.openweather import OPENWEATHER_MOCK_SOURCE @pytest.fixture(name="openweather_api", scope="module") def openweather_api_fixture() -> OpenWeatherApi: class MockOpenWeather(OpenWeather): def __init__(self): super().__init__("") self._source = OPENWEATHER_MOCK_SOURCE api = OpenWeatherApi() api.SOURCE = MockOpenWeather() return api async def test_day(openweather_api: OpenWeatherApi): result = await openweather_api.get_day("52.968498:36.0695", datetime.date(2024, 8, 23)) assert len(result.values) == 8 async def test_days(openweather_api: OpenWeatherApi): result = await openweather_api.get_days("52.968498:36.0695", 10) assert len(result.values) == 6