File tree Expand file tree Collapse file tree
internal/service/uk_national
tests/integration/uk_national Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2525 gsp_id_map ,
2626 model_names_external_to_internal ,
2727)
28- from .time_utils import limit_end_datetime_by_permissions
28+ from .time_utils import get_start_window , limit_end_datetime_by_permissions
2929
3030log = logging .getLogger (__name__ )
3131
@@ -134,7 +134,7 @@ async def get_national_forecast(
134134 # we get from from now - rounded up to nearest 30 mins, less 3 days.
135135 if start_datetime_utc is None :
136136 start_datetime_utc \
137- = pd . Timestamp . utcnow (). floor ( "6h" ). to_pydatetime () - dt . timedelta ( days = 2 )
137+ = get_start_window ( )
138138 if include_metadata :
139139 start_datetime_utc \
140140 = pd .Timestamp .utcnow ().ceil ("30min" ).to_pydatetime () - dt .timedelta (days = 3 )
@@ -265,7 +265,7 @@ async def get_national_pvlive(
265265 location_uuid = uk_loc .uuid ,
266266 energy_type = models .EnergyType .SOLAR ,
267267 location_type = models .LocationType .NATION ,
268- window_start = pd . Timestamp . utcnow (). floor ( "6h" ). to_pydatetime () - dt . timedelta ( days = 2 ),
268+ window_start = get_start_window ( ),
269269 window_end = pd .Timestamp .utcnow ().floor ("6h" ).to_pydatetime () + dt .timedelta (days = 2 ),
270270 observer_name = f"pvlive_{ regime } " ,
271271 authdata = {},
Original file line number Diff line number Diff line change 33import datetime as dt
44import os
55
6+ import pandas as pd
67import sentry_sdk
78
89from quartz_api .internal import models
@@ -34,3 +35,15 @@ def limit_end_datetime_by_permissions(
3435 return min (end_datetime_utc , intraday_max_allowed )
3536
3637 return end_datetime_utc
38+
39+ def get_start_window () -> pd .Timestamp :
40+ """Get the start window for the forecast query."""
41+ now = pd .Timestamp .utcnow ()
42+ # set as uk london timezone
43+ now_london = now .tz_convert ("Europe/London" )
44+ # round and move back 2 days
45+ now_minus_2_days_london = now_london .floor ("6h" ) - dt .timedelta (days = 2 )
46+ # change back to utc
47+ now_minus_2_days_utc = now_minus_2_days_london .tz_convert ("UTC" )
48+
49+ return now_minus_2_days_utc
Original file line number Diff line number Diff line change 55from uuid import UUID
66
77import pandas as pd
8- import pytest
98import pytest_asyncio
109from httpx import ASGITransport , AsyncClient
1110from ocf .dp .dp import common_pb2
You can’t perform that action at this time.
0 commit comments