Ver código fonte

fix: "minute must be in 0..59" error (#20)

tags/v0.11.2
Jérôme Deuchnord 3 anos atrás
committed by GitHub
pai
commit
592f8b15d0
Nenhuma chave conhecida encontrada para esta assinatura no banco de dados ID da chave GPG: 4AEE18F83AFDEB23
1 arquivos alterados com 13 adições e 7 exclusões
  1. +13
    -7
      kosmorrolib/dateutil.py

+ 13
- 7
kosmorrolib/dateutil.py Ver arquivo

@@ -22,11 +22,17 @@ def normalize_datetime(date: datetime) -> datetime:

>>> normalize_datetime(datetime(2021, 6, 9, 2, 30, 30))
datetime.datetime(2021, 6, 9, 2, 31)

>>> normalize_datetime(datetime(2021, 6, 9, 23, 59, 59))
datetime.datetime(2021, 6, 10, 0, 0)

>>> normalize_datetime(datetime(2021, 12, 31, 23, 59, 59))
datetime.datetime(2022, 1, 1, 0, 0)
"""
return datetime(
date.year,
date.month,
date.day,
date.hour,
date.minute if date.second < 30 else date.minute + 1,
)
new_date = datetime(date.year, date.month, date.day, date.hour, date.minute)
if date.second >= 30:
new_date += timedelta(minutes=1)
return new_date

Carregando…
Cancelar
Salvar