Skip to content

Commit

Permalink
test edge cases
Browse files Browse the repository at this point in the history
  • Loading branch information
niccokunzmann committed Jul 9, 2024
1 parent 18ded74 commit b6e8961
Show file tree
Hide file tree
Showing 3 changed files with 98 additions and 0 deletions.
43 changes: 43 additions & 0 deletions test/calendars/issue_148_edge_case_1.ics
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240701
DTEND;VALUE=DATE:20240708
SUMMARY:test123
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
CREATED:20240311T051101Z
LAST-MODIFIED:20240311T051101Z
SEQUENCE:1
END:VEVENT
BEGIN:VEVENT
RECURRENCE-ID;VALUE=DATE:20240715
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240702
DTEND;VALUE=DATE:20240709
SUMMARY:test123 - edited event!!!!
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
CREATED:20240311T051101Z
LAST-MODIFIED:20240311T051101Z
SEQUENCE:2
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240701
DTEND;VALUE=DATE:20240708
SUMMARY:test123
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
EXDATE;VALUE=DATE:20240715
CREATED:20240311T051101Z
LAST-MODIFIED:20240701T063743Z
SEQUENCE:3
END:VEVENT
END:VCALENDAR
42 changes: 42 additions & 0 deletions test/calendars/issue_148_edge_case_2.ics
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240701
DTEND;VALUE=DATE:20240708
SUMMARY:test123
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
CREATED:20240311T051101Z
LAST-MODIFIED:20240311T051101Z
SEQUENCE:1
END:VEVENT
BEGIN:VEVENT
RECURRENCE-ID;VALUE=DATE:20240715
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240702
DTEND;VALUE=DATE:20240709
SUMMARY:test123 - edited event!!!!
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
CREATED:20240311T051101Z
LAST-MODIFIED:20240311T051101Z
SEQUENCE:2
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20240707T214014Z
DTSTART;VALUE=DATE:20240701
DTEND;VALUE=DATE:20240708
SUMMARY:test123
CATEGORIES:other
UID:111
ORGANIZER:aaa
RRULE:FREQ=WEEKLY;UNTIL=20240801;INTERVAL=2;BYDAY=MO
CREATED:20240311T051101Z
LAST-MODIFIED:20240701T063743Z
SEQUENCE:3
END:VEVENT
END:VCALENDAR
13 changes: 13 additions & 0 deletions test/test_issue_148_ignored_exdate_in_higher_sequence.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
the exdate should be considered.
"""

from datetime import date

import pytest


Expand Down Expand Up @@ -81,3 +83,14 @@ def test_rdate_and_exdate_are_unedited(calendars, date, count, message):
events = calendars.issue_148_exdate_and_rdate_unedited.at(date)
print(events)
assert len(events) == count, message


@pytest.mark.parametrize("index", [1, 2])
def test_edge_cases(calendars, index):
"""Check the results of the edge cases."""
events = calendars[f"issue_148_edge_case_{index}"].all()
assert len(events) == 3
starts = [event["DTSTART"].dt for event in events]
assert date(2024, 7, 2) in starts
assert date(2024, 7, 1) in starts
assert date(2024, 7, 29) in starts

0 comments on commit b6e8961

Please sign in to comment.