Skip to content

Commit f61b92c

Browse files
authored
Add missing interval to RRULE (#15)
Otherwise, entries can only repeat daily, yearly, etc. instead of every X days/years/etc.
1 parent 6dbc75b commit f61b92c

2 files changed

Lines changed: 23 additions & 0 deletions

File tree

tests/test_calendar.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,3 +95,25 @@ def test_calendar_name():
9595
cal_str = cal.serialize()
9696
assert "NAME:My Second Calendar" in cal_str
9797
assert cal_str.count("NAME:") == 1
98+
99+
100+
def test_repeat():
101+
cal = files_to_calendar(
102+
[
103+
iowrap(
104+
"""
105+
events:
106+
- summary: Repeating Event
107+
begin: 2022-02-11
108+
repeat:
109+
interval:
110+
days: 5
111+
until: 2022-02-21
112+
"""
113+
)
114+
]
115+
)
116+
cal_str = cal.serialize()
117+
rrule = [line for line in cal_str.split("\n") if line.startswith("RRULE")][0]
118+
assert "FREQ=DAILY" in rrule
119+
assert "INTERVAL=5" in rrule

yaml2ics.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ def event_from_yaml(event_yaml: dict, tz: tzinfo = None) -> ics.Event:
6666

6767
rrule = dateutil.rrule.rrule(
6868
freq=interval_type[interval_measure],
69+
interval=interval[interval_measure],
6970
until=repeat.get("until"),
7071
dtstart=d["begin"],
7172
)

0 commit comments

Comments
 (0)