Răsfoiți Sursa

fixes tests where range starts inside an event

test_report_with_expand_property_start_inside
test_report_with_expand_property_just_inside

Signed-off-by: David Greaves <david@dgreaves.com>
David Greaves 8 luni în urmă
părinte
comite
ec3366496e
1 a modificat fișierele cu 4 adăugiri și 1 ștergeri
  1. 4 1
      radicale/app/report.py

+ 4 - 1
radicale/app/report.py

@@ -357,6 +357,8 @@ def _expand(
     duration = None
     if hasattr(vevent_recurrence, "dtend"):
         duration = vevent_recurrence.dtend.value - vevent_recurrence.dtstart.value
+    elif hasattr(vevent_recurrence, "duration"):
+        duration = vevent_recurrence.duration.value
 
     # Handle EXDATE to limit expansion range
     if hasattr(vevent_recurrence, 'exdate'):
@@ -428,7 +430,8 @@ def _expand(
                     name='DTSTART',
                     value=recurrence_id.strftime(dt_format), params={}
                 )
-                if duration:
+                # if there is a DTEND, override it. Duration does not need changing
+                if hasattr(vevent, "dtend"):
                     vevent.dtend = ContentLine(
                         name='DTEND',
                         value=(recurrence_id + duration).strftime(dt_format), params={}