summaryrefslogtreecommitdiffstats
path: root/test/data
diff options
context:
space:
mode:
authorLars Henriksen <LarsHenriksen@get2net.dk>2019-10-13 22:39:04 +0200
committerLukas Fleischer <lfleischer@calcurse.org>2020-04-28 07:32:44 -0400
commiteda28d3fef5a2a841fa41c620fc976ce11d824b1 (patch)
tree31d4b1fea61b770efbfb95723519627cc98bb1a1 /test/data
parentdd864316c671e28b4979c9365b59acc3a9a2d031 (diff)
downloadcalcurse-eda28d3fef5a2a841fa41c620fc976ce11d824b1.tar.gz
calcurse-eda28d3fef5a2a841fa41c620fc976ce11d824b1.zip
Tests for recurrence rule extensions
Test cases include all the examples from RFC5545 which are supported. Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
Diffstat (limited to 'test/data')
-rw-r--r--test/data/rfc554527
1 files changed, 27 insertions, 0 deletions
diff --git a/test/data/rfc5545 b/test/data/rfc5545
new file mode 100644
index 0000000..421dd53
--- /dev/null
+++ b/test/data/rfc5545
@@ -0,0 +1,27 @@
+01/05/1997 @ 08:30 -> 01/05/1997 @ 08:30 {2Y w0 m1} |page 45: every sunday in January at 8:30 AM, every other year (FREQ=YEARLY;INTERVAL=2;BYMONTH=1;BYDAY=SU)
+01/01/1998 @ 09:00 -> 01/01/1998 @ 09:00 {1Y -> 01/31/2000 w0 w1 w2 w3 w4 w5 w6 m1} |page 124(1): Every day in January for three years (FREQ=YEARLY;UNTIL=20000131T140000Z;BYMONTH=1;BYDAY=SU,MO,TU,WE,TH,FR,SA)
+01/01/1998 @ 09:00 -> 01/01/1998 @ 09:00 {1D -> 01/31/2000 m1} |page 124(2): Every day in January for three years (FREQ=DAILY;UNTIL=20000131T140000Z;BYMONTH=1)
+09/02/1997 @ 09:00 -> 09/02/1997 @ 09:00 {1W -> 10/02/1997 w2 w4} |page 125(1): Weekly on Tuesday and Thursday for five weeks (FREQ=WEEKLY;UNTIL=19971002T000000Z;BYDAY=TU,TH)
+09/01/1997 @ 09:00 -> 09/01/1997 @ 09:00 {2W -> 12/24/1997 w1 w3 w5} |page 125: Every other week on Monday, Wednesday, and Friday until December 24, 1997, starting on Monday, September 1, 1997 (FREQ=WEEKLY;INTERVAL=2;UNTIL=19971224T000000Z;BYDAY=MO,WE,FR)
+09/05/1997 @ 09:00 -> 09/05/1997 @ 09:00 {1M -> 06/05/1998 w12} |page 126: Monthly on the first Friday for 10 occurrences (FREQ=MONTHLY;COUNT=10;BYDAY=1FR)
+09/07/1997 @ 09:00 -> 09/07/1997 @ 09:00 {2M -> 05/31/1998 w7 w-7} |page 126: Every other month on the first and last Sunday of the month for 10 occurrences (RRULE:FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=1SU,-1SU)
+09/22/1997 @ 09:00 -> 09/22/1997 @ 09:00 {1M -> 02/28/1998 w-15} |page 126: Monthly on the second-to-last Monday of the month for 6 months (RRULE:FREQ=MONTHLY;COUNT=6;BYDAY=-2MO)
+09/28/1997 [1] {1M d-3} page 127: Monthly on the third-to-last day of the month, forever (RRULE:FREQ=MONTHLY;BYMONTHDAY=-3)
+09/02/1997 @ 09:00 -> 09/02/1997 @ 09:00 {1M -> 02/01/1998 d2 d15} |Page 127: Monthly on the 2nd and 15th of month for 10 occurrences (RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=2,15)
+09/30/1997 @ 09:00 -> 09/30/1997 @ 09:00 {1M -> 02/01/1998 d1 d-1} |page 127: Monthly on the first and last day of the month for 10 occurrences (RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=1,-1)
+09/10/1997 @ 09:00 -> 09/10/1997 @ 09:00 {18M -> 03/13/1999 d10 d11 d12 d13 d14 d15} |page 127: Every 18 months on the 10th thru 15th of the month for 10 occurrences (RRULE:FREQ=MONTHLY;INTERVAL=18;COUNT=10;BYMONTHDAY=10,11,12,13,14,15)
+09/02/1997 @ 09:00 -> 09/02/1997 @ 09:00 {2M w2} |page 127: Every Tuesday, every other month (RRULE:FREQ=MONTHLY;INTERVAL=2;BYDAY=TU)
+06/10/1997 @ 09:00 -> 06/10/1997 @ 09:00 {1Y -> 07/10/2001 m6 m7} |page 128: Yearly in June and July for 10 occurrences (RRULE:FREQ=YEARLY;COUNT=10;BYMONTH=6,7)
+03/10/1997 @ 09:00 -> 03/10/1997 @ 09:00 {2Y -> 03/10/2003 m1 m2 m3} |page 128: Every other year in January, February and March for 10 occurrences (RRULE:FREQ=YEARLY;INTERVAL=2;COUNT=10;BYMONTH=1,2,3)
+05/19/1997 [1] {1Y w141} page 128: Every 20th Monday of the year, forever (RRULE:FREQ=YEARLY;BYDAY=20MO)
+03/13/1997 @ 09:00 -> 03/13/1997 @ 09:00 {1Y w4 m3} |page 129: Every Thursday in March, forever (RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=TH)
+06/05/1997 @ 09:00 -> 06/05/1997 @ 09:00 {1Y w4 m6 m7 m8} |page 129: Every Thursday, but only during June, July and August, forever (RRULE:FREQ=YEARLY;BYDAY=TH;BYMONTH=6,7,8)
+02/13/1998 [1] {1M d13 w5} page 129: Every Friday the 13th, forever (RRULE:FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13)
+09/13/1997 [1] {1M d7 d8 d9 d10 d11 d12 d13 w6} page 130: The first Saturday that follows the first Sunday of the month, forever (RRULE:FREQ=MONTHLY;BYDAY=SA;BYMONTHDAY=7,8,9,10,11,12,13)
+11/05/1996 [1] {4Y d2 d3 d4 d5 d6 d7 d8 w2 m11} page 130: Every 4 years, the first Tuesday after a Monday in November, forever (U.S. Presidential Election day) (RRULE:FREQ=YEARLY;INTERVAL=4;BYMONTH=11;BYDAY=TU;BYMONTHDAY=2,3,4,5,6,7,8)
+08/05/1997 @ 09:00 -> 08/05/1997 @ 09:00 {2W -> 08/31/1997 w0 w2} |page 131: An example where the days generated makes a difference because of weekstart (RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU)
+01/15/2007 [1] {1M -> 03/30/2007 d15 d30} page 132: An example where an invalid date (i.e. February 30) is ignored (RRULE:FREQ=MONTHLY;BYMONTHDAY=15,30;COUNT=5)
+03/30/1997 @ 09:00 -> 03/30/1997 @ 09:00 {1Y w-7 m3} |Last Sunday in March, forever (RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU)
+12/25/1997 [1] {3Y w-11} Last Thursday of the year every third year, forever (FREQ=YEARLY;INTERVAL=3;BYDAY=-1TH)
+06/22/1997 [1] {2Y w0 w1} Every Sunday and Monday, every other year (FREQ=YEARLY;INTERVAL=2;BYDAY=SU,MO)
+02/01/1997 [1] {1Y -> 01/31/2005 d1 d29 m2} Every year on February 1 and 29 for eight years (RRULE:FREQ=YEARLY;UNTIL=20050131T000000Z;BYMONTH=2;BYMONTHDAY=1,29)