public void RECURRENCEPATTERN1() { // NOTE: recurrence patterns are not meant to be used directly like this. // However, this does make a good test to ensure they behave as they should. RecurrencePattern pattern = new RecurrencePattern("FREQ=SECONDLY;INTERVAL=10"); pattern.RestrictionType = RecurrenceRestrictionType.NoRestriction; DateTime fromDate = DateTime.Parse("3/30/08 11:59:40 PM"); DateTime toDate = DateTime.Parse("3/31/08 12:00:10 AM"); DateTime startDate = DateTime.Parse("3/30/08 11:59:40 PM"); List<iCalDateTime> occurrences = pattern.Evaluate(startDate, fromDate, toDate); Assert.AreEqual(4, occurrences.Count); Assert.AreEqual(DateTime.Parse("03/30/08 11:59:40 PM"), occurrences[0].Value); Assert.AreEqual(DateTime.Parse("03/30/08 11:59:50 PM"), occurrences[1].Value); Assert.AreEqual(DateTime.Parse("03/31/08 12:00:00 AM"), occurrences[2].Value); Assert.AreEqual(DateTime.Parse("03/31/08 12:00:10 AM"), occurrences[3].Value); }
public void RECURRENCEPATTERN2() { // NOTE: recurrence patterns are not meant to be used directly like this. // However, this does make a good test to ensure they behave as they should. RecurrencePattern pattern = new RecurrencePattern("FREQ=MINUTELY;INTERVAL=1"); DateTime fromDate = DateTime.Parse("4/1/2008 10:08:10 AM"); DateTime toDate = DateTime.Parse("4/1/2008 10:43:23 AM"); DateTime startDate = DateTime.Parse("3/31/2008 12:00:10 AM"); List<iCalDateTime> occurrences = pattern.Evaluate(startDate, fromDate, toDate); Assert.AreNotEqual(0, occurrences.Count); }
public void TEST4() { RecurrencePattern rpattern = new RecurrencePattern(); rpattern.ByDay.Add(new DaySpecifier(DayOfWeek.Saturday)); rpattern.ByDay.Add(new DaySpecifier(DayOfWeek.Sunday)); rpattern.Frequency = FrequencyType.Weekly; DateTime evtStart = new DateTime(2006, 12, 1); DateTime evtEnd = new DateTime(2007, 1, 1); // Add the exception dates List<iCalDateTime> listOfDateTime = rpattern.Evaluate(evtStart, evtStart, evtEnd); Assert.AreEqual(10, listOfDateTime.Count); Assert.AreEqual(2, listOfDateTime[0].Day); Assert.AreEqual(3, listOfDateTime[1].Day); Assert.AreEqual(9, listOfDateTime[2].Day); Assert.AreEqual(10, listOfDateTime[3].Day); Assert.AreEqual(16, listOfDateTime[4].Day); Assert.AreEqual(17, listOfDateTime[5].Day); Assert.AreEqual(23, listOfDateTime[6].Day); Assert.AreEqual(24, listOfDateTime[7].Day); Assert.AreEqual(30, listOfDateTime[8].Day); Assert.AreEqual(31, listOfDateTime[9].Day); }