Bug fixes

Based on the first day of dogfooding for myself
This commit is contained in:
2024-11-30 23:42:35 -08:00
parent 5db4e76de8
commit a067953467
7 changed files with 36 additions and 39 deletions

View File

@@ -9,6 +9,7 @@ from token_bot.token_database.region import Region
from token_bot.token_database import database as tdb
class HistoryManager:
HIGH_FIDELITY_PERIOD = '72h'
def __init__(self, token_db: tdb.Database):
self._history : Dict[Flavor, Dict[Region, History]] = {}
self._tdb : tdb.Database = token_db
@@ -21,15 +22,19 @@ class HistoryManager:
async def _retrieve_data(self, flavor: Flavor, region: Region) -> List[Tuple[datetime.datetime, int]]:
high_fidelity_time = datetime.datetime.now(tz=datetime.UTC) - datetime.timedelta(hours=72)
all_history = await self._tdb.history(flavor, region)
high_fidelity_history = await self._tdb.history(flavor, region, '72h')
high_fidelity_history = await self._tdb.history(flavor, region, self.HIGH_FIDELITY_PERIOD)
final_response = []
def _convert_to_datetime(data: Tuple[str, int]):
return datetime.datetime.fromisoformat(data[0]), data[1]
for data_point in all_history:
datum = (datetime.datetime.fromisoformat(data_point[0]), data_point[1])
if datum[0] < high_fidelity_time:
final_response.append(datum)
for data_point in high_fidelity_history:
datum = (datetime.datetime.fromisoformat(data_point[0]), data_point[1])
final_response.append(datum)
datetime_tuple = _convert_to_datetime(data_point)
if datetime_tuple[0] < high_fidelity_time:
final_response.append(datetime_tuple)
final_response.extend(_convert_to_datetime(data_point) for data_point in high_fidelity_history)
return final_response
@@ -37,7 +42,7 @@ class HistoryManager:
for flavor in Flavor:
for r in Region:
region = Region(r)
history = History(flavor, Region(region))
history = History(flavor, region)
history_response = await self._retrieve_data(flavor, region)
for item in history_response:
await history.add_price(item)