def testGetWhen(self): self.assertEqual(Weekday(0)._getWhen(0), "Monday") self.assertEqual(FR(1)._getWhen(0), "first Friday") self.assertEqual(SU._getWhen(1), "Monday") self.assertEqual(WE._getWhen(-2), "Monday") self.assertEqual(FR(1)._getWhen(-1), "Thursday before the first Friday") self.assertEqual(SU(1)._getWhen(2), "Tuesday after the first Sunday")
def testRepr(self): rr = Recurrence(dtstart=dt.date(2009, 1, 1), freq=WEEKLY, count=9, byweekday=[MO,TU,WE,TH,FR]) self.assertEqual(repr(rr), "DTSTART:20090101\n" "RRULE:FREQ=WEEKLY;WKST=SU;COUNT=9;BYDAY=MO,TU,WE,TH,FR") self.assertEqual(rr.count, rr.getCount()) rr = Recurrence(dtstart=dt.date(2011, 1, 1), freq=DAILY, interval=2, until=dt.date(2011,1,11)) self.assertEqual(repr(rr), "DTSTART:20110101\n" "RRULE:FREQ=DAILY;INTERVAL=2;WKST=SU;UNTIL=20110111") rr = Recurrence(dtstart=dt.date(2012, 1, 1), freq=YEARLY, bymonth=[1,2], byweekday=range(7), until=dt.date(2012,1,31)) self.assertEqual(repr(rr), "DTSTART:20120101\n" "RRULE:FREQ=YEARLY;WKST=SU;UNTIL=20120131;" "BYDAY=MO,TU,WE,TH,FR,SA,SU;BYMONTH=1,2") rr = Recurrence(dtstart=dt.date(2015, 10, 1), freq=MONTHLY, bymonth=range(1,12), byweekday=[(SU(-1))]) self.assertEqual(repr(rr), "DTSTART:20151001\n" "RRULE:FREQ=MONTHLY;WKST=SU;BYDAY=-1SU;BYMONTH=1,2,3,4,5,6,7,8,9,10,11")
def setUp(self): self.home = Page.objects.get(slug='home') self.user = User.objects.create_user('i', '*****@*****.**', 's3cr3t') self.request = RequestFactory().get("/test") self.request.user = self.user self.request.session = {} self.calendar = GeneralCalendarPage(owner = self.user, slug = "events", title = "Events") self.home.add_child(instance=self.calendar) self.night = RecurringEventPage(slug = "pacnight", title = "Pacific Night", repeat = Recurrence(dtstart=dt.date(2018,12,1), count=1, freq=MONTHLY, byweekday=[SU(-1)]), time_from = dt.time(23,0), time_to = dt.time(23,30), tz = pytz.timezone("Pacific/Pago_Pago")) self.calendar.add_child(instance=self.night) self.night.save_revision().publish()