Projet

Général

Profil

0002-api-use-current-timezone-in-get_max_datetime-48464.patch

Valentin Deniaud, 13 novembre 2020 10:09

Télécharger (1,94 ko)

Voir les différences:

Subject: [PATCH 2/2] api: use current timezone in get_max_datetime (#48464)

 chrono/api/views.py | 4 ++--
 tests/test_api.py   | 5 ++++-
 2 files changed, 6 insertions(+), 3 deletions(-)
chrono/api/views.py
67 67
def get_min_datetime(agenda):
68 68
    if agenda.minimal_booking_delay is None:
69 69
        return None
70
    min_datetime = now() + datetime.timedelta(days=agenda.minimal_booking_delay)
70
    min_datetime = localtime(now()) + datetime.timedelta(days=agenda.minimal_booking_delay)
71 71
    return min_datetime.replace(hour=0, minute=0, second=0, microsecond=0)
72 72

  
73 73

  
74 74
def get_max_datetime(agenda):
75 75
    if agenda.maximal_booking_delay is None:
76 76
        return None
77
    max_datetime = now() + datetime.timedelta(days=agenda.maximal_booking_delay)
77
    max_datetime = localtime(now()) + datetime.timedelta(days=agenda.maximal_booking_delay)
78 78
    max_datetime = max_datetime.replace(hour=0, minute=0, second=0, microsecond=0)
79 79
    return max_datetime
80 80

  
tests/test_api.py
4436 4436
    assert data[-1]['datetime'] == '2017-05-23 10:30:00'
4437 4437

  
4438 4438

  
4439
def test_datetimes_maximal_booking_delay(app, user):
4439
@pytest.mark.parametrize('test_datetime', (None, '2020-11-11 23:50'))
4440
def test_datetimes_maximal_booking_delay(app, user, freezer, test_datetime):
4441
    if test_datetime:
4442
        freezer.move_to(test_datetime)
4440 4443
    foo_agenda = Agenda.objects.create(
4441 4444
        label='Foo Meeting', kind='meetings', minimal_booking_delay=1, maximal_booking_delay=1
4442 4445
    )
4443
-