Projet

Général

Profil

0001-agendas-display-start-datetime-of-recurring-event-54.patch

Valentin Deniaud, 30 juin 2021 17:52

Télécharger (2,44 ko)

Voir les différences:

Subject: [PATCH] agendas: display start datetime of recurring event (#54655)

 chrono/agendas/models.py |  7 +++++++
 tests/test_agendas.py    | 16 ++++++++++++++--
 2 files changed, 21 insertions(+), 2 deletions(-)
chrono/agendas/models.py
1677 1677
                'every_x_weeks': every_x_weeks,
1678 1678
            }
1679 1679

  
1680
        if self.start_datetime > now():
1681
            start_date = date_format(self.start_datetime, 'DATE_FORMAT')
1682
            recurrence_display = _('%(Every_x_days)s, from %(date)s') % {
1683
                'Every_x_days': recurrence_display,
1684
                'date': start_date,
1685
            }
1686

  
1680 1687
        if self.recurrence_end_date:
1681 1688
            end_date = date_format(self.recurrence_end_date, 'DATE_FORMAT')
1682 1689
            recurrence_display = _('%(Every_x_days)s, until %(date)s') % {
tests/test_agendas.py
2187 2187
    freezer.move_to('2021-01-06 12:30')
2188 2188
    agenda = Agenda.objects.create(label='Agenda', kind='events')
2189 2189
    event = Event.objects.create(
2190
        agenda=agenda, start_datetime=now(), recurrence_days=list(range(7)), places=5
2190
        agenda=agenda,
2191
        start_datetime=now() + datetime.timedelta(days=1),
2192
        recurrence_days=list(range(7)),
2193
        places=5,
2191 2194
    )
2192 2195

  
2196
    assert event.get_recurrence_display() == 'Daily at 1:30 p.m., from Jan. 7, 2021'
2197

  
2198
    freezer.move_to('2021-01-07 12:30')
2193 2199
    assert event.get_recurrence_display() == 'Daily at 1:30 p.m.'
2194 2200

  
2195 2201
    event.recurrence_days = [1, 2, 3, 4]
......
2214 2220
    event.save()
2215 2221
    assert (
2216 2222
        event.get_recurrence_display()
2217
        == 'On Monday at 1:30 p.m., once every three weeks, until Jan. 13, 2021'
2223
        == 'On Monday at 1:30 p.m., once every three weeks, until Jan. 14, 2021'
2224
    )
2225

  
2226
    freezer.move_to('2021-01-06 12:30')
2227
    assert (
2228
        event.get_recurrence_display()
2229
        == 'On Monday at 1:30 p.m., once every three weeks, from Jan. 7, 2021, until Jan. 14, 2021'
2218 2230
    )
2219
-